#ifndef __SCREENCODEC_H__ #define __SCREENCODEC_H__ #pragma once #ifdef __cplusplus extern "C" { #endif #ifdef _WIN32 #ifdef LIBSCREENCODEC_EXPORTS #define SCREENCODEC_API(type) _declspec(dllexport) type __stdcall #else #define SCREENCODEC_API(type) _declspec(dllimport) type __stdcall #endif #else #define SCREENCODEC_API(type) type #endif #include #include SCREENCODEC_API(int) screencapture_encode(int width, int height, const void *raw_buf, void *buf, int *size); SCREENCODEC_API(int) screencapture_decode(int *width, int *height, const void *enc_buf, size_t enc_size, void *buf, int *size); typedef struct screen_encoder_session_t screen_encoder_session_t; SCREENCODEC_API(int) screen_encoder_session_create(int width, int height, screen_encoder_session_t **p_session); SCREENCODEC_API(void) screen_encoder_session_destroy(screen_encoder_session_t *session); SCREENCODEC_API(int) screen_encoder_session_encode(screen_encoder_session_t *session, const void *raw, void *buf, int *size); typedef struct screen_decoder_session_t screen_decoder_session_t; SCREENCODEC_API(int) screen_decoder_session_create(screen_decoder_session_t **p_session); SCREENCODEC_API(void) screen_decoder_session_destroy(screen_decoder_session_t *session); SCREENCODEC_API(int) screen_decoder_session_decode(screen_decoder_session_t *session, const void *enc_buf, size_t enc_size, int *width, int *height, void *buf, int *size); #ifdef __cplusplus } // extern "C" { #endif #endif //__SCREENCODEC_H__