Мені хотілося дізнатись, чи є спосіб розділити стерео на два файли моно-wav. Моя перша здогадка була
ffmpeg -threads "16" -i "$2" -map 0:1:1 "$3"
тому що мій приклад відео має таку інформацію:
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 39mn 0s
Bit rate mode : Constant
Bit rate : 256 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Тож у мене є один аудіопотік з двома каналами і хочу два моноканали. Спочатку я спробував це з map_channel, але це не зробило хитрість, натомість я отримував повідомлення про помилку:
Syntax error, mapchan usage: [file.stream.channel|-1][:syncfile:syncstream]
Тож я знову спробував це з вищезгаданим кодом і, принаймні, ffmpeg щось зробив, але результат був не таким, як я очікував, замість того, щоб розбити його на два моно-wav-файли, результат був:
info.system.container = WAVE
info.system.size = 449413166 Bytes
info.system.size = 428.59 MiB
info.system.playtime = 2340.69 s
info.audio0.codec = PCM
info.audio0.desc =
info.audio0.format_endianness = Little
info.audio0.format_sign = Signed
info.audio0.format_resolution = 16 bits
info.audio0.samprate = 48000 Hz
info.audio0.channels = 2
знову з двома аудіоканалами, тож де я помилився?
-map_channel
я не використовував одинарних крапок, а натомість використовував подвійні точки, тому не дивно, що це не спрацювало. Тепер це працює!