[FFmpeg-cvslog] avfiltergraph: call query_formats on inputs first.
Nicolas George
git at videolan.org
Tue Jun 5 13:44:02 CEST 2012
ffmpeg | branch: master | Nicolas George <nicolas.george at normalesup.org> | Sun Jun 3 21:53:22 2012 +0200| [aba8065adb63f1b00bcef7762534d1c41cb870bb] | committer: Nicolas George
avfiltergraph: call query_formats on inputs first.
This is a temporary workaround for amerge,
until format renegociation is implemented.
Should fix trac ticket #1400.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=aba8065adb63f1b00bcef7762534d1c41cb870bb
---
libavfilter/avfiltergraph.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c
index 997ae45..1ab9879 100644
--- a/libavfilter/avfiltergraph.c
+++ b/libavfilter/avfiltergraph.c
@@ -235,8 +235,14 @@ static int query_formats(AVFilterGraph *graph, AVClass *log_ctx)
AVFilterFormats *samplerates;
int scaler_count = 0, resampler_count = 0;
+ for (j = 0; j < 2; j++) {
/* ask all the sub-filters for their supported media formats */
for (i = 0; i < graph->filter_count; i++) {
+ /* Call query_formats on sources first.
+ This is a temporary workaround for amerge,
+ until format renegociation is implemented. */
+ if (!graph->filters[i]->input_count == j)
+ continue;
if (graph->filters[i]->filter->query_formats)
ret = graph->filters[i]->filter->query_formats(graph->filters[i]);
else
@@ -244,6 +250,7 @@ static int query_formats(AVFilterGraph *graph, AVClass *log_ctx)
if (ret < 0)
return ret;
}
+ }
/* go through and merge as many format lists as possible */
for (i = 0; i < graph->filter_count; i++) {
More information about the ffmpeg-cvslog
mailing list