mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
libavcodec: Handle param change side data in avcodec_decode_video2, too
Also call avcodec_set_dimensions on dimension param change packets. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
parent
867f923df4
commit
c5d907b6b0
@ -879,6 +879,7 @@ static void apply_param_change(AVCodecContext *avctx, AVPacket *avpkt)
|
||||
return;
|
||||
avctx->width = bytestream_get_le32(&data);
|
||||
avctx->height = bytestream_get_le32(&data);
|
||||
avcodec_set_dimensions(avctx, avctx->width, avctx->height);
|
||||
size -= 8;
|
||||
}
|
||||
}
|
||||
@ -894,6 +895,7 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
|
||||
return -1;
|
||||
|
||||
avctx->pkt = avpkt;
|
||||
apply_param_change(avctx, avpkt);
|
||||
|
||||
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || avpkt->size || (avctx->active_thread_type&FF_THREAD_FRAME)){
|
||||
if (HAVE_THREADS && avctx->active_thread_type&FF_THREAD_FRAME)
|
||||
|
Loading…
Reference in New Issue
Block a user