[FFmpeg-cvslog] avdevice/lavfi: Simplify setting sample_fmts

Andreas Rheinhardt git at videolan.org
Fri Dec 3 18:23:22 EET 2021


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Thu Dec  2 19:19:19 2021 +0100| [b7e3ae19b8d3dc1b14c600220a47171e5e3ef746] | committer: Andreas Rheinhardt

avdevice/lavfi: Simplify setting sample_fmts

The length of this list is a compile-time constant, so there is
no need to calculate it again at runtime.
(This also avoids an implicit requirement of -1 == AV_SAMPLE_FMT_NONE.)

Reviewed-by: Nicolas George <george at nsup.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b7e3ae19b8d3dc1b14c600220a47171e5e3ef746
---

 libavdevice/lavfi.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavdevice/lavfi.c b/libavdevice/lavfi.c
index b208b1a928..d63a6f66b3 100644
--- a/libavdevice/lavfi.c
+++ b/libavdevice/lavfi.c
@@ -271,14 +271,15 @@ av_cold static int lavfi_read_header(AVFormatContext *avctx)
         } else if (type == AVMEDIA_TYPE_AUDIO) {
             static const enum AVSampleFormat sample_fmts[] = {
                 AV_SAMPLE_FMT_U8,  AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_S32,
-                AV_SAMPLE_FMT_FLT, AV_SAMPLE_FMT_DBL, -1
+                AV_SAMPLE_FMT_FLT, AV_SAMPLE_FMT_DBL,
             };
 
             ret = avfilter_graph_create_filter(&sink, abuffersink,
                                                inout->name, NULL,
                                                NULL, lavfi->graph);
             if (ret >= 0)
-                ret = av_opt_set_int_list(sink, "sample_fmts", sample_fmts,  AV_SAMPLE_FMT_NONE, AV_OPT_SEARCH_CHILDREN);
+                ret = av_opt_set_bin(sink, "sample_fmts", (const uint8_t*)sample_fmts,
+                                     sizeof(sample_fmts), AV_OPT_SEARCH_CHILDREN);
             if (ret < 0)
                 goto end;
             ret = av_opt_set_int(sink, "all_channel_counts", 1,



More information about the ffmpeg-cvslog mailing list