X-Git-Url: http://git.maemo.org/git/?p=mardrone;a=blobdiff_plain;f=mardrone%2FARDrone_SDK_Version_1_8_20110726%2FARDroneLib%2FVLIB%2FUVLC%2Fuvlc_codec.h;fp=mardrone%2FARDrone_SDK_Version_1_8_20110726%2FARDroneLib%2FVLIB%2FUVLC%2Fuvlc_codec.h;h=08bb8de844fa4d428e300552f09bb95877df7f4f;hp=0000000000000000000000000000000000000000;hb=9ec9bc13b75d30bc45535c54a652934debfcea92;hpb=ae0a3c2dc0898400aca0dd6b439c5db8044db7b2 diff --git a/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VLIB/UVLC/uvlc_codec.h b/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VLIB/UVLC/uvlc_codec.h new file mode 100644 index 0000000..08bb8de --- /dev/null +++ b/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VLIB/UVLC/uvlc_codec.h @@ -0,0 +1,31 @@ +#ifndef _UVLC_CODEC_H_ +#define _UVLC_CODEC_H_ + +#include + +#include +#include "uvlc_layers.h" + +typedef struct _uvlc_codec_t { + // Compatibility with video_codec_t structure + encode_blockline_fc encode_blockline; + decode_blockline_fc decode_blockline; + update_fc update; + cache_stream_fc cache_stream; + + // Private data (see video source coding algorithm p.9) + uvlc_picture_layer_t picture_layer; +} uvlc_codec_t; + +void uvlc_codec_alloc( video_controller_t* controller ); +void uvlc_codec_free( video_controller_t* controller ); + +C_RESULT uvlc_pack_controller( video_controller_t* controller ); +C_RESULT uvlc_unpack_controller( video_controller_t* controller ); + +C_RESULT uvlc_encode_blockline( video_controller_t* controller, const vp_api_picture_t* blockline, bool_t picture_complete ); +C_RESULT uvlc_decode_blockline( video_controller_t* controller, vp_api_picture_t* picture, bool_t* got_image ); +C_RESULT uvlc_update( video_controller_t* controller ); +C_RESULT uvlc_cache( video_controller_t* controller, video_stream_t* ex_stream); + +#endif // _UVLC_CODEC_H_