#pragma once
#ifndef CCAP_UTILS_C_H
#define CCAP_UTILS_C_H
#include "ccap_c.h"
#include <stdint.h>
#include <stdbool.h>
#ifdef __cplusplus
extern "C" {
#endif
CCAP_EXPORT int ccap_pixel_format_to_string(CcapPixelFormat format, char* buffer, size_t buffer_size);
CCAP_EXPORT int ccap_dump_frame_to_file(const CcapVideoFrame* frame, const char* filename_no_suffix,
char* output_path, size_t output_path_size);
CCAP_EXPORT int ccap_dump_frame_to_directory(const CcapVideoFrame* frame, const char* directory,
char* output_path, size_t output_path_size);
CCAP_EXPORT bool ccap_save_rgb_data_as_bmp(const char* filename, const unsigned char* data,
uint32_t width, uint32_t line_offset, uint32_t height,
bool is_bgr, bool has_alpha, bool is_top_to_bottom);
typedef enum {
CCAP_LOG_LEVEL_NONE = 0,
CCAP_LOG_LEVEL_ERROR = 1,
CCAP_LOG_LEVEL_WARNING = 3,
CCAP_LOG_LEVEL_INFO = 7,
CCAP_LOG_LEVEL_VERBOSE = 15
} CcapLogLevel;
CCAP_EXPORT void ccap_set_log_level(CcapLogLevel level);
#ifdef __cplusplus
}
#endif
#endif