Ich wollte wissen, ob es eine Möglichkeit gibt, Stereo in zwei Mono-WAV-Dateien aufzuteilen. Meine erste Vermutung war
ffmpeg -threads "16" -i "$2" -map 0:1:1 "$3"
weil mein Beispielvideo die folgenden Informationen enthält:
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
Ich habe also diesen einen Audiostream mit zwei Kanälen und möchte zwei Monokanäle. Zuerst habe ich es mit map_channel versucht, aber das hat nicht geholfen, stattdessen bekam ich eine Fehlermeldung:
Syntax error, mapchan usage: [file.stream.channel|-1][:syncfile:syncstream]
Also habe ich es mit dem oben genannten Code erneut versucht und zumindest hat ffmpeg etwas getan, aber das Ergebnis war nicht das, was ich erwartet hatte, anstatt es in zwei Mono-WAV-Dateien aufzuteilen, war das Ergebnis:
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
wieder mit zwei Audiokanälen, also wo bin ich falsch gelaufen?
quelle
-map_channel
habe, habe ich keine einzelnen Punkte verwendet, sondern stattdessen doppelte Punkte. Kein Wunder, dass es nicht funktioniert hat. Jetzt funktioniert es!-layouts
aber es gibt kein Beispiel, wie es funktioniert. Ich habe es versucht und die Nachricht, die ich bekomme, ist,Missing argument for option 'layouts'
welches Argument erwartet ffmpeg?Audio ID : 2 Channel(s) : 6 channels Channel positions : Front: L C R, Side: L R, LFE
Aber ich denke, ich habe bereits eine Lösung gefunden für dieses Problem.Sie sollten dafür den Channelsplit-Filter verwenden . -map kann das nicht. Zum Beispiel:
Überprüfen Sie den Link zur Dokumentation, die ich bereitgestellt habe.
quelle