diff options
author | Mark Thompson <sw@jkqxz.net> | 2018-10-16 22:01:27 +0100 |
---|---|---|
committer | Mark Thompson <sw@jkqxz.net> | 2018-10-22 23:01:30 +0100 |
commit | e5fda1ff289692ffb538e04abb66a9b550750596 (patch) | |
tree | 6e2a5773c8c6d7f374af59f23c39c7220c8be405 | |
parent | 3143fe34f622ae61ca75a65feba3a8f1a497567e (diff) | |
download | ffmpeg-e5fda1ff289692ffb538e04abb66a9b550750596.tar.gz |
cbs_h264: Fix SPS used for pic_timing timestamp
It should be the same as the one used for the rest of the pic_timing
structure.
-rw-r--r-- | libavcodec/cbs_h264_syntax_template.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/libavcodec/cbs_h264_syntax_template.c b/libavcodec/cbs_h264_syntax_template.c index 1a9fb9cfeb..7d0ce5918a 100644 --- a/libavcodec/cbs_h264_syntax_template.c +++ b/libavcodec/cbs_h264_syntax_template.c @@ -551,10 +551,9 @@ static int FUNC(sei_buffering_period)(CodedBitstreamContext *ctx, RWContext *rw, } static int FUNC(sei_pic_timestamp)(CodedBitstreamContext *ctx, RWContext *rw, - H264RawSEIPicTimestamp *current) + H264RawSEIPicTimestamp *current, + const H264RawSPS *sps) { - CodedBitstreamH264Context *h264 = ctx->priv_data; - const H264RawSPS *sps; uint8_t time_offset_length; int err; @@ -583,13 +582,6 @@ static int FUNC(sei_pic_timestamp)(CodedBitstreamContext *ctx, RWContext *rw, } } - sps = h264->active_sps; - if (!sps) { - av_log(ctx->log_ctx, AV_LOG_ERROR, - "No active SPS for pic_timestamp.\n"); - return AVERROR_INVALIDDATA; - } - if (sps->vui.nal_hrd_parameters_present_flag) time_offset_length = sps->vui.nal_hrd_parameters.time_offset_length; else if (sps->vui.vcl_hrd_parameters_present_flag) @@ -669,7 +661,8 @@ static int FUNC(sei_pic_timing)(CodedBitstreamContext *ctx, RWContext *rw, for (i = 0; i < num_clock_ts[current->pic_struct]; i++) { flags(clock_timestamp_flag[i], 1, i); if (current->clock_timestamp_flag[i]) - CHECK(FUNC(sei_pic_timestamp)(ctx, rw, ¤t->timestamp[i])); + CHECK(FUNC(sei_pic_timestamp)(ctx, rw, + ¤t->timestamp[i], sps)); } } |