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) {
+ 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);
--
2.32.0 (Apple Git-132)
_______________________________________________
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".