diff --git a/ffserver.c b/ffserver.c index ca4b54f4d4..2cbfe7589e 100644 --- a/ffserver.c +++ b/ffserver.c @@ -3644,18 +3644,6 @@ static void build_feed_streams(void) FFStream *stream, *feed; int i; - /* gather all streams */ - for(stream = first_stream; stream != NULL; stream = stream->next) { - feed = stream->feed; - if (feed) { - if (!stream->is_feed) { - /* we handle a stream coming from a feed */ - for(i=0;inb_streams;i++) - stream->feed_streams[i] = add_av_stream(feed, stream->streams[i]); - } - } - } - /* gather all streams */ for(stream = first_stream; stream != NULL; stream = stream->next) { feed = stream->feed; @@ -3663,6 +3651,10 @@ static void build_feed_streams(void) if (stream->is_feed) { for(i=0;inb_streams;i++) stream->feed_streams[i] = i; + } else { + /* we handle a stream coming from a feed */ + for(i=0;inb_streams;i++) + stream->feed_streams[i] = add_av_stream(feed, stream->streams[i]); } } }