|
|
|
@@ -27,6 +27,7 @@ |
|
|
|
|
|
|
|
#include <stdint.h> |
|
|
|
|
|
|
|
#include "config.h" |
|
|
|
#include "libavutil/attributes.h" |
|
|
|
#include "libavutil/avassert.h" |
|
|
|
#include "libavutil/log.h" |
|
|
|
@@ -44,6 +45,7 @@ |
|
|
|
#include "mpegvideo.h" |
|
|
|
#include "profiles.h" |
|
|
|
|
|
|
|
#if CONFIG_MPEG1VIDEO_ENCODER || CONFIG_MPEG2VIDEO_ENCODER |
|
|
|
static const uint8_t svcd_scan_offset_placeholder[] = { |
|
|
|
0x10, 0x0E, 0x00, 0x80, 0x81, 0x00, 0x80, |
|
|
|
0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, |
|
|
|
@@ -64,8 +66,9 @@ static uint8_t mpeg1_index_run[2][64]; |
|
|
|
static int8_t mpeg1_max_level[2][64]; |
|
|
|
|
|
|
|
#define A53_MAX_CC_COUNT 0x1f |
|
|
|
#endif /* CONFIG_MPEG1VIDEO_ENCODER || CONFIG_MPEG2VIDEO_ENCODER */ |
|
|
|
|
|
|
|
static av_cold void init_uni_ac_vlc(RLTable *rl, uint8_t *uni_ac_vlc_len) |
|
|
|
av_cold void ff_mpeg1_init_uni_ac_vlc(const RLTable *rl, uint8_t *uni_ac_vlc_len) |
|
|
|
{ |
|
|
|
int i; |
|
|
|
|
|
|
|
@@ -100,6 +103,7 @@ static av_cold void init_uni_ac_vlc(RLTable *rl, uint8_t *uni_ac_vlc_len) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
#if CONFIG_MPEG1VIDEO_ENCODER || CONFIG_MPEG2VIDEO_ENCODER |
|
|
|
static int find_frame_rate_index(MpegEncContext *s) |
|
|
|
{ |
|
|
|
int i; |
|
|
|
@@ -1045,8 +1049,8 @@ static av_cold void mpeg12_encode_init_static(void) |
|
|
|
mpeg1_index_run[0][i] = ff_rl_mpeg1.index_run[0][i]; |
|
|
|
} |
|
|
|
|
|
|
|
init_uni_ac_vlc(&ff_rl_mpeg1, uni_mpeg1_ac_vlc_len); |
|
|
|
init_uni_ac_vlc(&ff_rl_mpeg2, uni_mpeg2_ac_vlc_len); |
|
|
|
ff_mpeg1_init_uni_ac_vlc(&ff_rl_mpeg1, uni_mpeg1_ac_vlc_len); |
|
|
|
ff_mpeg1_init_uni_ac_vlc(&ff_rl_mpeg2, uni_mpeg2_ac_vlc_len); |
|
|
|
|
|
|
|
/* build unified dc encoding tables */ |
|
|
|
for (int i = -255; i < 256; i++) { |
|
|
|
@@ -1222,3 +1226,4 @@ AVCodec ff_mpeg2video_encoder = { |
|
|
|
.caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
|
|
|
.priv_class = &mpeg2_class, |
|
|
|
}; |
|
|
|
#endif /* CONFIG_MPEG1VIDEO_ENCODER || CONFIG_MPEG2VIDEO_ENCODER */ |