Reco wrote: >>> Personally I just reencode audio in such cases. >>> For instance (0:1 is the first audio track, use 0:2 for >>> english): >>> >>> ffmpeg -i ford-v-ferrari-2019.mkv -map 0:0 -map 0:1 \ >>> -c:v copy \ -c:a libopus -b:a 128k -ac 2 -clev 1.414 >>> -slev .5 \ ford-v-ferrari-2019.good_audio.mkv >> >> That's a useful little recipe, and pleased the OP, but can >> you just clarify the arguments -clev 1.414 -slev .5 > > Sure. First things first - [1]. clev stands for > center_mix_level, slev for surround_mix_level. Both values > are dB.
Thanks for the details! This command, it solves the 5.1/surround -> stereo issue, right? That's the -map, -c:a, -b:a, and -ac 2 things. But later on ... > What ffmpeg does by default then downmixing is: > > FL = FL + 0.707 * FC + 0.707 * BL > > where FL stands for Front Left channel, FC is Center, BL is > Back Left channel. And it's the same for right channel. > > Your typical movie has dialogue on center channel, gunfire > & cars' sounds come from the front channels, ambient comes > from the back ones. ... namely _here_, it "sounds" like you are addressing the other issue? With the -clev and -slev? 1.414 because of 2*0.707 ? Neither -clev nor slev are in the ffmpeg(1) man page BTW - and that page is 2419 lines! But OK, I can use 'ffprobe -hide_banner 2>&1 $1 | grep -i audio' and then it should say stereo and not 5.1, gotcha... The other problem I can detect myself by (not) hearing... Are there anything else you routinely look for and correct? -- underground experts united http://user.it.uu.se/~embe8573 https://dataswamp.org/~incal