diff mbox series

[FFmpeg-devel] avcodec: Fix h264_videotoolbox writing b-frames (fix ticket #8353)

Message ID 20200227181304.4569-1-Nomis101@web.de
State Superseded
Headers show
Series [FFmpeg-devel] avcodec: Fix h264_videotoolbox writing b-frames (fix ticket #8353) | expand

Checks

Context Check Description
andriy/ffmpeg-patchwork success Make fate finished

Commit Message

Nomis101 Feb. 27, 2020, 6:13 p.m. UTC
Signed-off-by: Nomis101 <Nomis101@web.de>
---
 libavcodec/videotoolboxenc.c | 1 +
 1 file changed, 1 insertion(+)

--
2.21.1 (Apple Git-122.3)

Comments

Nomis101 Feb. 28, 2020, 6:08 p.m. UTC | #1
Am 27.02.20 um 19:13 schrieb Nomis101:
> Signed-off-by: Nomis101 <Nomis101@web.de>
> ---
>  libavcodec/videotoolboxenc.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
> index cc08cf6a50..32d893e485 100644
> --- a/libavcodec/videotoolboxenc.c
> +++ b/libavcodec/videotoolboxenc.c
> @@ -1355,6 +1355,7 @@ static int vtenc_configure_encoder(AVCodecContext *avctx)
>          vtctx->get_param_set_func = compat_keys.CMVideoFormatDescriptionGetHEVCParameterSetAtIndex;
>          if (!vtctx->get_param_set_func) return AVERROR(EINVAL);
>          if (!get_vt_hevc_profile_level(avctx, &profile_level)) return AVERROR(EINVAL);
> +        vtctx->has_b_frames = avctx->max_b_frames > 0;
>      }
>
>      enc_info = CFDictionaryCreateMutable(
> --
> 2.21.1 (Apple Git-122.3)
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>


Just to clarify, what this patch does. It will fix trac.ffmpeg.org/ticket/8353 "h264_videotoolbox is not writing b-frames".
The fix is adopted from HandBrake's FFmpeg patch set: https://github.com/HandBrake/HandBrake/blob/master/contrib/ffmpeg/A04-videotoolbox.patch
Carl Eugen Hoyos Feb. 28, 2020, 6:19 p.m. UTC | #2
Am Fr., 28. Feb. 2020 um 19:08 Uhr schrieb Nomis101 <Nomis101@web.de>:
>
> Am 27.02.20 um 19:13 schrieb Nomis101:
> > Signed-off-by: Nomis101 <Nomis101@web.de>
> > ---
> >  libavcodec/videotoolboxenc.c | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
> > index cc08cf6a50..32d893e485 100644
> > --- a/libavcodec/videotoolboxenc.c
> > +++ b/libavcodec/videotoolboxenc.c
> > @@ -1355,6 +1355,7 @@ static int vtenc_configure_encoder(AVCodecContext *avctx)
> >          vtctx->get_param_set_func = compat_keys.CMVideoFormatDescriptionGetHEVCParameterSetAtIndex;
> >          if (!vtctx->get_param_set_func) return AVERROR(EINVAL);
> >          if (!get_vt_hevc_profile_level(avctx, &profile_level)) return AVERROR(EINVAL);
> > +        vtctx->has_b_frames = avctx->max_b_frames > 0;
> >      }
> >
> >      enc_info = CFDictionaryCreateMutable(
> > --
> > 2.21.1 (Apple Git-122.3)
> >
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel@ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
> >
>
>
> Just to clarify, what this patch does. It will fix trac.ffmpeg.org/ticket/8353 "h264_videotoolbox is not writing b-frames".

> The fix is adopted from HandBrake's FFmpeg patch set: https://github.com/HandBrake/HandBrake/blob/master/contrib/ffmpeg/A04-videotoolbox.patch

Then please fix the attribution.
And ask Bradley why he didn't send the patch here...

Carl Eugen
Nomis101 Feb. 28, 2020, 11:47 p.m. UTC | #3
Am 28.02.20 um 19:19 schrieb Carl Eugen Hoyos:
> Am Fr., 28. Feb. 2020 um 19:08 Uhr schrieb Nomis101 <Nomis101@web.de>:
>>
>> Am 27.02.20 um 19:13 schrieb Nomis101:
>>> Signed-off-by: Nomis101 <Nomis101@web.de>
>>> ---
>>>  libavcodec/videotoolboxenc.c | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
>>> index cc08cf6a50..32d893e485 100644
>>> --- a/libavcodec/videotoolboxenc.c
>>> +++ b/libavcodec/videotoolboxenc.c
>>> @@ -1355,6 +1355,7 @@ static int vtenc_configure_encoder(AVCodecContext *avctx)
>>>          vtctx->get_param_set_func = compat_keys.CMVideoFormatDescriptionGetHEVCParameterSetAtIndex;
>>>          if (!vtctx->get_param_set_func) return AVERROR(EINVAL);
>>>          if (!get_vt_hevc_profile_level(avctx, &profile_level)) return AVERROR(EINVAL);
>>> +        vtctx->has_b_frames = avctx->max_b_frames > 0;
>>>      }
>>>
>>>      enc_info = CFDictionaryCreateMutable(
>>> --
>>> 2.21.1 (Apple Git-122.3)
>>>
>>> _______________________________________________
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel@ffmpeg.org
>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>
>>> To unsubscribe, visit link above, or email
>>> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>>>
>>
>>
>> Just to clarify, what this patch does. It will fix trac.ffmpeg.org/ticket/8353 "h264_videotoolbox is not writing b-frames".
>
>> The fix is adopted from HandBrake's FFmpeg patch set: https://github.com/HandBrake/HandBrake/blob/master/contrib/ffmpeg/A04-videotoolbox.patch
>
> Then please fix the attribution.

OK, will do. But, where in send-email can I change the attribution?

> And ask Bradley why he didn't send the patch here...

The patch for HandBrake comes from galad87.

>
> Carl Eugen
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>
Carl Eugen Hoyos Feb. 29, 2020, 12:18 a.m. UTC | #4
Am Sa., 29. Feb. 2020 um 00:47 Uhr schrieb Nomis101 <Nomis101@web.de>:

> >> The fix is adopted from HandBrake's FFmpeg patch set:
> >> https://github.com/HandBrake/HandBrake/blob/master/contrib/ffmpeg/A04-videotoolbox.patch
> >
> > Then please fix the attribution.
>
> OK, will do. But, where in send-email can I change the attribution?

$ git commit --author...

Carl Eugen
diff mbox series

Patch

diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
index cc08cf6a50..32d893e485 100644
--- a/libavcodec/videotoolboxenc.c
+++ b/libavcodec/videotoolboxenc.c
@@ -1355,6 +1355,7 @@  static int vtenc_configure_encoder(AVCodecContext *avctx)
         vtctx->get_param_set_func = compat_keys.CMVideoFormatDescriptionGetHEVCParameterSetAtIndex;
         if (!vtctx->get_param_set_func) return AVERROR(EINVAL);
         if (!get_vt_hevc_profile_level(avctx, &profile_level)) return AVERROR(EINVAL);
+        vtctx->has_b_frames = avctx->max_b_frames > 0;
     }

     enc_info = CFDictionaryCreateMutable(