[FFmpeg-devel] [PATCH] avfilter/src_movie: support unknown channel layouts
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Mon Oct 31 14:15:15 EET 2022
Paul B Mahol:
> - av_log(log_ctx, AV_LOG_ERROR,
> + char *cl_name;
> +
> + av_log(log_ctx, AV_LOG_WARNING,
> "Channel layout is not set in stream %d, and could not "
> "be guessed from the number of channels (%d)\n",
> st_index, dec_par->ch_layout.nb_channels);
> - return AVERROR(EINVAL);
> + cl_name = av_asprintf("%dC", dec_par->ch_layout.nb_channels);
> + av_channel_layout_from_string(&chl, cl_name);
> + free(cl_name);
1. Wrong deallocator.
2. The allocation is completely unnecessary: One can just use snprintf
with a big enough (yet still small) buffer.
3. But even that is unnecessary: Just set chl = (AVChannelLayout){
.order = AV_CHANNEL_ORDER_UNSPEC, .nb_channels =
dec_par->ch_layout.nb_channels }.
- Andreas
More information about the ffmpeg-devel
mailing list