1
0

obj_f263decoder.h 913 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #ifndef F263_OBJ_F263DECODER_H
  2. #define F263_OBJ_F263DECODER_H
  3. #include <bfc/dispatch.h>
  4. #include <bfc/platform/types.h>
  5. struct YV12_PLANES;
  6. class obj_f263decoder : public Dispatchable
  7. {
  8. protected:
  9. obj_f263decoder() {}
  10. ~obj_f263decoder() {}
  11. public:
  12. int DecodeFrame(void *frameData, size_t frameSize, YV12_PLANES *yv12, int *width, int *height, int *keyframe);
  13. enum
  14. {
  15. DISP_DECODEFRAME = 0,
  16. };
  17. enum
  18. {
  19. SUCCESS = 0,
  20. FAILURE = 1,
  21. FAILURE_TOO_MUCH_DATA = 2,
  22. FAILURE_NO_DATA = 3,
  23. };
  24. };
  25. inline int obj_f263decoder::DecodeFrame(void *frameData, size_t frameSize, YV12_PLANES *yv12, int *width, int *height, int *keyframe)
  26. {
  27. return _call(DISP_DECODEFRAME, (int)FAILURE, frameData, frameSize, yv12, width, height, keyframe);
  28. }
  29. // {496FA082-39F0-424e-9B25-1B234262796D}
  30. static const GUID obj_f263decoderGUID =
  31. { 0x496fa082, 0x39f0, 0x424e, { 0x9b, 0x25, 0x1b, 0x23, 0x42, 0x62, 0x79, 0x6d } };
  32. #endif