mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/videotoolbox: pass through hevc param changes to the decoder
This includes the SEI_PREFIX/SEI_SUFFIX NALUs, which can contain updates like HEVC_SEI_TYPE_ACTIVE_PARAMETER_SETS. Previously, hevc samples with this SEI present would not playback correctly. See for example https://github.com/lhc70000/iina/issues/1123 Signed-off-by: Aman Gupta <aman@tmm1.net>
This commit is contained in:
parent
3a91b3ae74
commit
68ef503bb5
@ -654,6 +654,14 @@ static int videotoolbox_h264_end_frame(AVCodecContext *avctx)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int videotoolbox_hevc_decode_params(AVCodecContext *avctx,
|
||||
int type,
|
||||
const uint8_t *buffer,
|
||||
uint32_t size)
|
||||
{
|
||||
return ff_videotoolbox_h264_decode_slice(avctx, buffer, size);
|
||||
}
|
||||
|
||||
static int videotoolbox_hevc_end_frame(AVCodecContext *avctx)
|
||||
{
|
||||
HEVCContext *h = avctx->priv_data;
|
||||
@ -1040,6 +1048,7 @@ AVHWAccel ff_hevc_videotoolbox_hwaccel = {
|
||||
.alloc_frame = ff_videotoolbox_alloc_frame,
|
||||
.start_frame = ff_videotoolbox_h264_start_frame,
|
||||
.decode_slice = ff_videotoolbox_h264_decode_slice,
|
||||
.decode_params = videotoolbox_hevc_decode_params,
|
||||
.end_frame = videotoolbox_hevc_end_frame,
|
||||
.frame_params = videotoolbox_frame_params,
|
||||
.init = videotoolbox_common_init,
|
||||
|
Loading…
Reference in New Issue
Block a user