video_jbuff_defines.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #ifndef VIDEO_JBUFFER_DEFINES_H_
  2. #define VIDEO_JBUFFER_DEFINES_H_
  3. #include "../video_common/video_encoded_image.h"
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. enum PACKET_TYPE_IN_FRAME{
  8. FIRST_PACKET_IN_FRAME,
  9. NORMAL_PACKET_IN_FRAME,
  10. LAST_PACKET_IN_FRAME
  11. };
  12. enum FrameBufferEnum {
  13. kOutOfBoundsPacket = -7,
  14. kNotInitialized = -6,
  15. kOldPacket = -5,
  16. kGeneralError = -4,
  17. kFlushIndicator = -3, // Indicator that a flush has occurred.
  18. kTimeStampError = -2,
  19. kSizeError = -1,
  20. kNoError = 0,
  21. kIncomplete = 1, // Frame incomplete.
  22. kCompleteSession = 3, // at least one layer in the frame complete.
  23. kDuplicatePacket = 5 // We're receiving a duplicate packet.
  24. };
  25. typedef struct _VideoJBufferPacketInfo{
  26. int length;
  27. unsigned int timestamp;
  28. unsigned short seq;
  29. enum PACKET_TYPE_IN_FRAME packet_type;
  30. int is_key;
  31. unsigned pt;
  32. } VideoJBufferPacketInfo;
  33. typedef struct _VideoJBufferObserver{
  34. // Callback function which is called when an image has been Received.
  35. int ( *OnReceiveEncodedImage)(const EncodedImage *encoded_image, unsigned int timestamp,
  36. unsigned short first_seq, unsigned short last_seq, void *userdata);
  37. int ( *RequestKeyFrame)(void *userdata);
  38. void *userdata;
  39. } VideoJBufferObserver;
  40. typedef struct _VideoJBufferLogCallBack{
  41. // Callback function.
  42. int(*log_fn)(void *userdata, int level, const char* file, int line, const char* fmt, va_list vl);
  43. void *userdata;
  44. } VideoJBufferLogCallBack;
  45. #ifdef __cplusplus
  46. }
  47. #endif /* end of __cplusplus */
  48. #endif // VIDEO_JBUFFER_DEFINES_H_