Thank you for your review, James.
I will use AV_CODEC_FLAG_LOW_DELAY flag instead, and submit a new patch.
------------------ Original ------------------
From:
"FFmpeg development discussions
and patches"
<[email protected]>;
Date: Thu, May 18, 2023 07:36 PM
To: "ffmpeg-devel"<[email protected]>;
Subject: Re: [FFmpeg-devel] [PATCH] avcodec/videotoolboxenc: add
low-latency encoding
On 5/18/2023 7:15 AM, xufuji456 wrote:
> Signed-off-by: xufuji456 <[email protected]>
> ---
> libavcodec/videotoolboxenc.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
> index c6f22723d6..88334f1851 100644
> --- a/libavcodec/videotoolboxenc.c
> +++ b/libavcodec/videotoolboxenc.c
> @@ -251,6 +251,8 @@ typedef struct VTEncContext {
>
> /* can't be bool type since AVOption
will access it as int */
> int a53_cc;
> +
> + int low_latency;
> } VTEncContext;
>
> static int vtenc_populate_extradata(AVCodecContext
*avctx,
> @@ -1441,6 +1443,16 @@ static int
vtenc_create_encoder(AVCodecContext *avctx,
> }
> }
>
> + if (vtctx->low_latency) {
Nothing seems to set this?
Also, you should check the existing AV_CODEC_FLAG_LOW_DELAY flag instead.
> + status =
VTSessionSetProperty(vtctx->session,
>
+
kVTVideoEncoderSpecification_EnableLowLatencyRateControl,
>
+
kCFBooleanTrue);
> +
> + if (status) {
> +
av_log(avctx, AV_LOG_ERROR, "Error setting low latency property: %d\n", status);
> + }
> + }
> +
> status =
VTCompressionSessionPrepareToEncodeFrames(vtctx->session);
> if (status) {
> av_log(avctx,
AV_LOG_ERROR, "Error: cannot prepare encoder: %d\n", status);
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".