X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fmpeg12.h;h=17f0b781e64f165110738e8725769254f305936a;hb=851960f6f8cf1f946fe42fa36cf6598fac68072c;hp=9132dc3d2d08a6595dd02a76927c35c910ff0119;hpb=e557584aa7df6ac9f52af7ee7e5c963437da2e2f;p=ffmpeg diff --git a/libavcodec/mpeg12.h b/libavcodec/mpeg12.h index 9132dc3d2d0..17f0b781e64 100644 --- a/libavcodec/mpeg12.h +++ b/libavcodec/mpeg12.h @@ -1,5 +1,5 @@ /* - * MPEG1/2 common code + * MPEG-1/2 common code * Copyright (c) 2007 Aurelien Jacobs * * This file is part of Libav. @@ -22,29 +22,12 @@ #ifndef AVCODEC_MPEG12_H #define AVCODEC_MPEG12_H +#include "mpeg12vlc.h" #include "mpegvideo.h" -#define DC_VLC_BITS 9 -#define MV_VLC_BITS 9 -#define TEX_VLC_BITS 9 - -#define MBINCR_VLC_BITS 9 -#define MB_PAT_VLC_BITS 9 -#define MB_PTYPE_VLC_BITS 6 -#define MB_BTYPE_VLC_BITS 6 - -extern VLC ff_dc_lum_vlc; -extern VLC ff_dc_chroma_vlc; -extern VLC ff_mbincr_vlc; -extern VLC ff_mb_ptype_vlc; -extern VLC ff_mb_btype_vlc; -extern VLC ff_mb_pat_vlc; -extern VLC ff_mv_vlc; - extern uint8_t ff_mpeg12_static_rl_table_store[2][2][2*MAX_RUN + MAX_LEVEL + 3]; void ff_mpeg12_common_init(MpegEncContext *s); -void ff_mpeg12_init_vlcs(void); static inline int decode_dc(GetBitContext *gb, int component) { @@ -67,8 +50,18 @@ static inline int decode_dc(GetBitContext *gb, int component) return diff; } -int ff_mpeg1_decode_block_intra(MpegEncContext *s, int16_t *block, int n); +int ff_mpeg1_decode_block_intra(GetBitContext *gb, + const uint16_t *quant_matrix, + uint8_t *const scantable, int last_dc[3], + int16_t *block, int index, int qscale); + void ff_mpeg1_clean_buffers(MpegEncContext *s); int ff_mpeg1_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size, AVCodecParserContext *s); +void ff_mpeg1_encode_picture_header(MpegEncContext *s, int picture_number); +void ff_mpeg1_encode_mb(MpegEncContext *s, int16_t block[8][64], + int motion_x, int motion_y); +void ff_mpeg1_encode_init(MpegEncContext *s); +void ff_mpeg1_encode_slice_header(MpegEncContext *s); + #endif /* AVCODEC_MPEG12_H */