Video/Audio Stream Concatenation Order

This section provides a tutorial example of concatenation error message when using the 'concat' ffmpeg filter with incorrect video and audio stream order.

As mentioned in the previous section, when using the "concat" filter, the order of how input streams are specified is important. The video input stream must be specified before the audio stream. Here is what mentioned in the "ffmpeg" manual:

The (concat) filter has v+a outputs: first v video outputs, 
then a audio outputs.

There are nx(v+a) inputs: first the inputs for the first segment, 
in the same order as the outputs, then the inputs for the second 
segment, etc. 

If the audio stream is placed before the video stream, you will get a strange error:

C:\herong>\local\ffmpeg\bin\ffmpeg
 -i Anchor_Great_Escape.swf -i Spider_Man.swf 
 -filter_complex "[0:0] [0:1] [1:0] [1:1] concat=n=2:v=1:a=1 [a] [v]"
 -map [a] -map [v] Test.swf
 
Input #0, swf, from 'Anchor_Great_Escape.swf':
 Duration: 00:01:02.60, start: 0.000000, bitrate: 127 kb/s
  Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 128 kb/s
  Stream #0:1: Video: flv1, yuv420p, 416x240, 25 fps, 25 tbr, 25 tbn

Input #1, swf, from 'Spider_Man.swf':
 Duration: 00:01:09.56, start: 0.000000, bitrate: 128 kb/s
  Stream #1:0: Audio: mp3, 44100 Hz, stereo, s16p, 128 kb/s
  Stream #1:1: Video: flv1, yuv420p, 416x240, 25 fps, 25 tbr, 25 tbn

Stream specifier ':0' in filtergraph description 
[0:0] [0:1] [1:0] [1:1] concat=n=2:v=1:a=1 [a] [v] matches no streams.

The error message in the above output is a little bit confusing: "Stream specifier ':0' in filtergraph description [0:0] [0:1] [1:0] [1:1] concat=n=2:v=1:a=1 [a] [v] matches no streams." It sounds like "ffmpeg" could not find the specified stream [0:0] input stream.

The error message should be saying "[0:0] is not a video stream. I am expecting a video stream."

Table of Contents

 About This Book

 Introduction of Adobe Flash

 Adobe Flash Player Plugin for Firefox

 Adobe Flash Player Plugin for Chrome

 Adobe Flash Player Plugin for Safari

 Adobe Flash Player ActiveX for IE

 Using "object" Elements for Flash Files

 Using "embed" Elements for Flash Files

 "mp3player" - MP3 Music Player

 SWFObject - Hidding "object" behind JavaScript

 Flash Player Projector

 SWFTools - SWF File Manipulation Tools

 SWFC Script to Generate Flash SWF Files

 ActionScript Embedded in SWFC Script

 AS3Compile - ActionScript 3 Compiler

 Adobe Flex SDK 4

 SWF File Structure and Tags

 SWF File Processing Rules

SWF Files for Video and Audio Streams

 Video and Audio Stream SWF File Structure

 Installing FFmpeg to Manipulate Video SWF Files

 Playing Movie with FFmpeg "ffplay" Command

 See File Properties with FFmpeg "ffprobe" Command

 Convert File Format with "ffmpeg" Command

 Issue with "ffplay" on SWF Output File

 "ffplay" Interactive Commands

 Break Long Video into Parts with "ffmpeg"

 Concatenate Video Files with "ffmpeg"

Video/Audio Stream Concatenation Order

 Split Audio Stream Out of SWF File

 Split Video Stream Out of SWF File

 Merge Video and Audio Streams to SWF File

 Reduce Video Stream Resolution

 Reduce Video Frame Rate

 Outdated Tutorials

 References

 Full Version in PDF/EPUB