Как кодировать и разделить аудио файл в FFmpeg, используя asplit

1

Я пытаюсь превратить и разделить аудио-файл на два отдельных mp3-файла с разными качествами;

  • Один на 128к
  • Один на 320к

То, что я дошел до сих пор, это:

ffmpeg -i myaudiofile.wav [i1]asplit=2[o1][o2] \
-map [o1] -acodec libmp3lame -ar 48000 -ab 192k -ac 2 win1.mp3 \
-map [o2] -acodec libmp3lame -ar 48000 -ab 320k -ac 2 win2.mp3

К сожалению, это не работает. Есть идеи?

Заранее спасибо.

kstratis
источник
«Повернись и расколись» - что это значит? Если вам просто нужно закодировать один файл в 2 разных качества, рассмотрите 2 отдельных запуска ffmpeg для одного и того же файла с разными параметрами кодирования.
Раджиб
@Rajib Говоря «Turn and split», я имею в виду преобразовать данный wav-файл в формат mp3, а затем закодировать его в 2 различных качества. Мне просто нужно сделать это ровно за один проход.
kstratis

Ответы:

3

Использовать это:

ffmpeg -i myaudiofile.wav -filter_complex "asplit=2[o1][o2]" -map [o1] \
-acodec libmp3lame -ar 48000 -ab 192k -ac 2 win1.mp3 -map [o2] -acodec \
libmp3lame -ar 48000 -ab 320k -ac 2 win2.mp3

Вам нужно указать filter или filter-complex, и вам не понадобится панель ввода, потому что она используется по умолчанию и понятна.

Также обратите внимание, что здесь вы на самом деле не «превращаете его в mp3, а затем конвертируете в два разных качества». Вы кодируете в mp3 в 2 разных качества.

Rajib
источник
@ Konos5 Что было бы не так с кодированием wav в mp3 с одним качеством, а затем с тем же кодированием wav в другой mp3 с другими качествами? И понимаете ли вы, что это по сути то, что делает вышеприведенная команда, она просто обрабатывает входные данные в другом порядке?
Джейми Ханрахан
1

Сплит не должен быть обязательным.

использование

ffmpeg -i myaudiofile.wav \
-map 0:a -acodec libmp3lame -ar 48000 -ab 192k -ac 2 win1.mp3 \
-map 0:a -acodec libmp3lame -ar 48000 -ab 320k -ac 2 win2.mp3
Gyan
источник