avcodec/cbs_h264: fix storage type for time_offset in Pic Timing SEI

The spec defines it as a signed value.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
James Almer 2019-04-15 17:50:01 -03:00
parent 3dc6adf326
commit 9bf520d04d
2 changed files with 4 additions and 3 deletions

View File

@ -253,7 +253,7 @@ typedef struct H264RawSEIPicTimestamp {
uint8_t minutes_value;
uint8_t hours_flag;
uint8_t hours_value;
uint32_t time_offset;
int32_t time_offset;
} H264RawSEIPicTimestamp;
typedef struct H264RawSEIPicTiming {

View File

@ -592,8 +592,9 @@ static int FUNC(sei_pic_timestamp)(CodedBitstreamContext *ctx, RWContext *rw,
time_offset_length = 24;
if (time_offset_length > 0)
u(time_offset_length, time_offset,
0, MAX_UINT_BITS(time_offset_length));
i(time_offset_length, time_offset,
MIN_INT_BITS(time_offset_length),
MAX_INT_BITS(time_offset_length));
else
infer(time_offset, 0);