[FFmpeg-cvslog] avconv: add a function for determining whether a filtergraph is simple

Anton Khirnov git at videolan.org
Thu Aug 4 21:17:00 EEST 2016


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sun May 22 17:57:59 2016 +0200| [49670e4218d34899a1c37abb7a11615efc16f757] | committer: Anton Khirnov

avconv: add a function for determining whether a filtergraph is simple

This makes the code easier to read.

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

 avconv.c        | 4 ++--
 avconv.h        | 1 +
 avconv_filter.c | 6 +++++-
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/avconv.c b/avconv.c
index 2e3bde9..8cb8d14 100644
--- a/avconv.c
+++ b/avconv.c
@@ -2123,7 +2123,7 @@ static int transcode_init(void)
         ist = input_streams[i];
 
         for (j = 0; j < ist->nb_filters; j++) {
-            if (ist->filters[j]->graph->graph_desc) {
+            if (!filtergraph_is_simple(ist->filters[j]->graph)) {
                 av_log(NULL, AV_LOG_INFO, "  Stream #%d:%d (%s) -> %s",
                        ist->file_index, ist->st->index, ist->dec ? ist->dec->name : "?",
                        ist->filters[j]->name);
@@ -2144,7 +2144,7 @@ static int transcode_init(void)
             continue;
         }
 
-        if (ost->filter && ost->filter->graph->graph_desc) {
+        if (ost->filter && !filtergraph_is_simple(ost->filter->graph)) {
             /* output from a complex graph */
             av_log(NULL, AV_LOG_INFO, "  %s", ost->filter->name);
             if (nb_filtergraphs > 1)
diff --git a/avconv.h b/avconv.h
index 84fabf6..be8ef23 100644
--- a/avconv.h
+++ b/avconv.h
@@ -449,6 +449,7 @@ int guess_input_channel_layout(InputStream *ist);
 int configure_filtergraph(FilterGraph *fg);
 int configure_output_filter(FilterGraph *fg, OutputFilter *ofilter, AVFilterInOut *out);
 int ist_in_filtergraph(FilterGraph *fg, InputStream *ist);
+int filtergraph_is_simple(FilterGraph *fg);
 FilterGraph *init_simple_filtergraph(InputStream *ist, OutputStream *ost);
 int init_complex_filtergraph(FilterGraph *fg);
 
diff --git a/avconv_filter.c b/avconv_filter.c
index a412f6e..1d4aeb0 100644
--- a/avconv_filter.c
+++ b/avconv_filter.c
@@ -691,7 +691,7 @@ static int configure_input_filter(FilterGraph *fg, InputFilter *ifilter,
 int configure_filtergraph(FilterGraph *fg)
 {
     AVFilterInOut *inputs, *outputs, *cur;
-    int ret, i, simple = !fg->graph_desc;
+    int ret, i, simple = filtergraph_is_simple(fg);
     const char *graph_desc = simple ? fg->outputs[0]->ost->avfilter :
                                       fg->graph_desc;
 
@@ -760,3 +760,7 @@ int ist_in_filtergraph(FilterGraph *fg, InputStream *ist)
     return 0;
 }
 
+int filtergraph_is_simple(FilterGraph *fg)
+{
+    return !fg->graph_desc;
+}



More information about the ffmpeg-cvslog mailing list