mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-04-14 00:58:38 +02:00
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.
This commit is contained in:
parent
3143fe34f6
commit
e5fda1ff28
@ -551,10 +551,9 @@ static int FUNC(sei_buffering_period)(CodedBitstreamContext *ctx, RWContext *rw,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int FUNC(sei_pic_timestamp)(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;
|
uint8_t time_offset_length;
|
||||||
int err;
|
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)
|
if (sps->vui.nal_hrd_parameters_present_flag)
|
||||||
time_offset_length = sps->vui.nal_hrd_parameters.time_offset_length;
|
time_offset_length = sps->vui.nal_hrd_parameters.time_offset_length;
|
||||||
else if (sps->vui.vcl_hrd_parameters_present_flag)
|
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++) {
|
for (i = 0; i < num_clock_ts[current->pic_struct]; i++) {
|
||||||
flags(clock_timestamp_flag[i], 1, i);
|
flags(clock_timestamp_flag[i], 1, i);
|
||||||
if (current->clock_timestamp_flag[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));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user