[FFmpeg-devel] [PATCH 1/2] lavc/videotoolboxenc: Dump the encoder

Richard Kern kernrj at gmail.com
Tue Sep 5 13:43:38 EEST 2023



> On Sep 3, 2023, at 11:53 PM, Jun Zhao <mypopydev at gmail.com> wrote:
> 
> Dump the encoder, it's will help debug some case
> 
> Signed-off-by: Jun Zhao <barryjzhao at tencent.com>
> ---
> libavcodec/videotoolboxenc.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
> 
> diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
> index bfc03787a0..5633640a30 100644
> --- a/libavcodec/videotoolboxenc.c
> +++ b/libavcodec/videotoolboxenc.c
> @@ -1110,6 +1110,26 @@ static int vtenc_create_encoder(AVCodecContext   *avctx,
>         return AVERROR_EXTERNAL;
>     }
> 
> +    // Dump the init encoder
> +    {
> +        CFStringRef encoderID = NULL;
> +        status = VTSessionCopyProperty(vtctx->session,
> +                                       kVTCompressionPropertyKey_EncoderID,
> +                                       kCFAllocatorDefault,
> +                                       &encoderID);
> +        if (status == noErr) {
> +            char names[256] = { 0 };
> +
> +            CFStringGetCString(encoderID,
> +                               names,
> +                               255,
Use sizeof(names) - 1 instead of 255. The hard coded value increases the chance of a bug if the size of names is changed. 

> +                               kCFStringEncodingUTF8);
> +            av_log(avctx, AV_LOG_INFO, "Init the encoder: %s\n", names);
This should be logged at the debug level since it doesn’t help users when encoding is successful. 

> +        }
> +        if (encoderID != NULL)
> +            CFRelease(encoderID);
> +    }
> +
>     if (avctx->flags & AV_CODEC_FLAG_QSCALE && !vtenc_qscale_enabled()) {
>         av_log(avctx, AV_LOG_ERROR, "Error: -q:v qscale not available for encoder. Use -b:v bitrate instead.\n");
>         return AVERROR_EXTERNAL;
> -- 
> 2.25.1
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list