ffmpeg | branch: master | Mark Thompson <s...@jkqxz.net> | Mon Dec 11 00:22:42 2017 +0000| [13ca5d34ba5c473211daaae0a101123bcaada3e6] | committer: Mark Thompson
cbs_h264: Add hack for pic_timing with no active SPS If there is exactly one possible SPS but it is not yet active then just assume that it should be the active one. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=13ca5d34ba5c473211daaae0a101123bcaada3e6 --- libavcodec/cbs_h264_syntax_template.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/libavcodec/cbs_h264_syntax_template.c b/libavcodec/cbs_h264_syntax_template.c index 0fe18441c0..c2fd546822 100644 --- a/libavcodec/cbs_h264_syntax_template.c +++ b/libavcodec/cbs_h264_syntax_template.c @@ -561,6 +561,22 @@ static int FUNC(sei_pic_timing)(CodedBitstreamContext *ctx, RWContext *rw, sps = h264->active_sps; if (!sps) { + // If there is exactly one possible SPS but it is not yet active + // then just assume that it should be the active one. + int i, k = -1; + for (i = 0; i < H264_MAX_SPS_COUNT; i++) { + if (h264->sps[i]) { + if (k >= 0) { + k = -1; + break; + } + k = i; + } + } + if (k >= 0) + sps = h264->sps[k]; + } + if (!sps) { av_log(ctx->log_ctx, AV_LOG_ERROR, "No active SPS for pic_timing.\n"); return AVERROR_INVALIDDATA; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog