[FFmpeg-user] Has the syntax changed for audio remapping in ffmpeg 3.0?
satelliteviewer at gmx.ca
satelliteviewer at gmx.ca
Tue Feb 16 00:27:56 CET 2016
I use ffmpeg via a pipe commmand in TVHeadEnd to take the live stream of a satellite channel that broadcasts 5.1 audio on three discrete streams and combine them into a eac3 5.1 stream. Rather than try and explain what is happening I will refer you to the pages I got this from, which has an extensive explanation:
(This is the one I am actually using now):
(This is NOT what I am doing but the first paragraph better explains the type of processing that is taking place on this particular channel):
Suffice it to say that to convert the live stream in TVHeadEnd, this is the url I need to use:
pipe:///usr/local/bin/ffmpeg -loglevel fatal -i http://127.0.0.1:9981/stream/channelnumber/CHANNEL_NUMBER -c:v copy -c:s copy -c:d copy -c:t copy -filter_complex [0:1][0:2][0:3]amerge=inputs=3,pan=5.1|FL=c0|FR=c1|FC=c2|LFE=c3|BL=c4|BR=c5 -c:a eac3 -f mpegts pipe:1
As you can probably guess, when I use this I have no idea what ffmpeg is doing behind the scenes. But anyway, I read that ffmpeg 3.0 had come out and I wanted to try it because the one problem I have had with the above string is that ATSC closed captioning seems to be lost in the above process, even though as far as I can tell it is doing a straight copy of everything except the audio stream. So I wanted to see if maybe ffmpeg 3.0 fixed that, but instead what I found after installing ffmpeg 3.0 (using the stable static build of ffmpeg 3.0 from http://johnvansickle.com/ffmpeg/ which is where I've always gotten my ffmpeg builds) is that now it passes the video, but I get no audio on the channel in question at all. Going back to a previous version (ffmpeg version 2.8.2-static) resolves the problem and I get the eac3 encoded sound again. So, my first thought is that perhaps the syntax changed in ffmpeg 3.0 in some way?
If anyone can enlighten me as to why this no longer works in ffmpeg 3.0 I would very much appreciate it. For now I have deleted the new version, and I can keep using the older version indefinitely, but I might try 3.0 again if someone can tell me why this stopped working, particularly if anyone can explain why the 2.8.2 version doesn't pass through the ATSC closed captions, or that it is fixed in the 3.0 version.
Again, before anyone asks, I have no way of knowing what is going on behind the scenes; I do not see any type of output from ffmpeg because it is being run in TVHeadEnd and not directly by me. I cannot show you ffmpeg's output because it is not being run from a command prompt, so I don't see any output and since this is a live stream rather than a file I don't even think there is any way I could see any output from ffmpeg. And since I had to remove 3.0 and reinstall 2.8.2 to get it to work again, right now I couldn't get any meaningful output even if I could see it; I'd have to reinstall 3.0 again first. And also, I don't really even understand the options being used, I just copied that line from the article I referenced above. That is why I am not presenting this as a bug report or anything like that - at this point I am simply asking if there is anything obvious about the syntax of this URL that would be different in 3.0 as opposed to 2.8.2. There may be experienced Linux users that could give you a lot more meaningful input than I can, but right now I'm telling you everything I know about this.
More information about the ffmpeg-user