Setting up
First make sure you have FFmpeg installed. Follow this guide if you haven't already:
https://docs.tdarr.io/blog/how-to-install-ffmpeg
Running the CLI
To re-order streams using FFmpeg, use the map
command. For this example, we'll use the following sample file:
https://samples.tdarr.io/api/v1/samples/sample__240__libx264__aac__30s__video.mkv
The sample file has 3 streams, video and 2 audio. We're going to swap the first 2 streams around:
ffmpeg -i "C:\Transcode\input.mkv" -map 0:1 -map 0:0 -map 0:3 -c copy "C:\Transcode\output.mkv"
So the command says 'put the second stream first and the first stream second`.
The ordering of the map
commands represents the ordering of the streams in the output file. The same process can also be run using:
ffmpeg -i "C:\Transcode\input.mkv" -map 0:a:0 -map 0:v:0 -map 0:a:1 -c copy "C:\Transcode\output.mkv"
In the above command, we're specifying the streams by their type, instead of using their overall index. So the command says 'put the first audio stream first and the first video stream second`.
You can automate this process on your files using the following Tdarr Plugins:
Tdarr_Plugin_00td_action_re_order_all_streams_v2
Get started using Tdarr transcode automation for free with this link: