Como codificar e dividir um arquivo de áudio no FFmpeg usando asplit

Como codificar e dividir um arquivo de áudio no FFmpeg usando asplit

Estou tentando transformar e dividir um arquivo de áudio em dois arquivos mp3 separados com qualidades diferentes;

  • Um em 128k
  • Um em 320k

O que descobri até agora é o seguinte:

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

Infelizmente isso não funciona. Alguma ideia?

Desde já, obrigado.

Responder1

Usa isto:

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

Você precisa especificar filter ou filter-complex e não precisa do input pad porque é padrão e compreendido.

Além disso, observe que aqui você não está realmente "transformando em mp3 e depois convertendo para duas qualidades diferentes". Você está codificando em mp3 em 2 qualidades diferentes.

Responder2

A divisão não deveria ser necessária.

Usar

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

informação relacionada