forked from FFmpeg/FFmpeg
Simplify mpeg_decode_user_data()
Originally committed as revision 20640 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
8d872e8ac9
commit
191ad11e91
1 changed files with 5 additions and 12 deletions
|
@ -2113,28 +2113,21 @@ static int vcr2_init_sequence(AVCodecContext *avctx)
|
|||
|
||||
|
||||
static void mpeg_decode_user_data(AVCodecContext *avctx,
|
||||
const uint8_t *buf, int buf_size)
|
||||
const uint8_t *p, int buf_size)
|
||||
{
|
||||
const uint8_t *p;
|
||||
int len, flags;
|
||||
p = buf;
|
||||
len = buf_size;
|
||||
const uint8_t *buf_end = p+buf_size;
|
||||
|
||||
/* we parse the DTG active format information */
|
||||
if (len >= 5 &&
|
||||
if (buf_end - p >= 5 &&
|
||||
p[0] == 'D' && p[1] == 'T' && p[2] == 'G' && p[3] == '1') {
|
||||
flags = p[4];
|
||||
int flags = p[4];
|
||||
p += 5;
|
||||
len -= 5;
|
||||
if (flags & 0x80) {
|
||||
/* skip event id */
|
||||
if (len < 2)
|
||||
return;
|
||||
p += 2;
|
||||
len -= 2;
|
||||
}
|
||||
if (flags & 0x40) {
|
||||
if (len < 1)
|
||||
if (buf_end - p < 1)
|
||||
return;
|
||||
avctx->dtg_active_format = p[0] & 0x0f;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue