X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fwmv2.h;h=b77dd98cd5d8f914a679ddc371d530a0577fec5c;hb=c194b9ad6dbe65f5abd68158c4811ed84e2a2b95;hp=82075670e011c3224990ef257f2253ab1e55da6d;hpb=e6bc38fd49c94726b45d5d5cc2b756ad8ec49ee0;p=ffmpeg diff --git a/libavcodec/wmv2.h b/libavcodec/wmv2.h index 82075670e01..b77dd98cd5d 100644 --- a/libavcodec/wmv2.h +++ b/libavcodec/wmv2.h @@ -22,9 +22,8 @@ #define AVCODEC_WMV2_H #include "avcodec.h" -#include "dsputil.h" -#include "mpegvideo.h" #include "intrax8.h" +#include "mpegvideo.h" #include "wmv2dsp.h" #define SKIP_TYPE_NONE 0 @@ -33,7 +32,7 @@ #define SKIP_TYPE_COL 3 -typedef struct Wmv2Context{ +typedef struct Wmv2Context { MpegEncContext s; IntraX8Context x8; WMV2DSPContext wdsp; @@ -52,9 +51,23 @@ typedef struct Wmv2Context{ int hshift; ScanTable abt_scantable[2]; - DECLARE_ALIGNED(16, DCTELEM, abt_block2)[6][64]; -}Wmv2Context; + DECLARE_ALIGNED(16, int16_t, abt_block2)[6][64]; +} Wmv2Context; + +void ff_wmv2_common_init(Wmv2Context *w); + +int ff_wmv2_decode_mb(MpegEncContext *s, int16_t block[6][64]); +int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number); +void ff_wmv2_encode_mb(MpegEncContext * s, int16_t block[6][64], + int motion_x, int motion_y); +int ff_wmv2_decode_picture_header(MpegEncContext * s); +int ff_wmv2_decode_secondary_picture_header(MpegEncContext * s); +void ff_wmv2_add_mb(MpegEncContext *s, int16_t block[6][64], + uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr); -void ff_wmv2_common_init(Wmv2Context * w); +void ff_mspel_motion(MpegEncContext *s, + uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr, + uint8_t **ref_picture, op_pixels_func (*pix_op)[4], + int motion_x, int motion_y, int h); #endif /* AVCODEC_WMV2_H */