Como converter séries de MP3 em um M4B em um lote

9

Eu tenho um lote de livros baseados em MP3. Alguns deles se dividem em arquivos de acordo com a estrutura do livro: capítulos e assim por diante. Alguns deles foram divididos em partes igualmente alongadas.

Assim. Comprei um iPhone e quero convertê-los todos para o formato M4B. Como eu poderia convertê-los em um lote? Quero dizer o quão frio eu configurei um processo uma vez, para cada livro e, depois de duas semanas, recebi uma biblioteca totalmente convertida.

O único programa capaz para essa conversão que encontrei foi o Audiobook Builder para Mac. Mas é bem lento e, em princípio, não suporta lotes.

Soluções para qualquer plataforma, por favor.

Artem Tikhomirov
fonte

Respostas:

6

Para concatenar os MP3s para um M4B, você pode usar o ffmpeg. Baixe uma versão recente e execute:

ffmpeg -i "concat:input0.mp3|input1.mp3|input2.mp3" -c:a libfdk_aac -b:a 64k -f mp4 output.m4b

Seu ffmpeg pode não ter sido fdk_aacativado; se for esse o caso, você pode tentar usar

  • -c:a libfaac (alta qualidade)
  • -c:a aac -strict experimental (qualidade decente, mas use taxas de bits mais altas)
  • -c:a libvo_aacenc (qualidade bastante ruim)

Consulte o guia de codificação AAC para obter mais informações.


Se você deseja usar o neroAacEnc, pode usar:

ffmpeg -i "concat:input0.mp3|input1.mp3|input2.mp3" -f wav - | neroAacEnc -if - -ignorelength -q 0.3 output.m4b

Nenhum destes itens adicionará metadados de capítulos, receio.

evilsoup
fonte
@ sllck quando eu uso "-c: a libfaac" a mensagem de erro "codificador desconhecido 'libfaac'" aparece, semelhante ao libfdk_aac, alguma sugestão pls?
athos
O @athos pode usar uma das outras opções do ffmpeg ou fazer o download do neroAacEnc e usá-lo (eu recomendaria o neroAacEnc se você não tiver libfdk_aac).
evilsoup #
@athos O ​​codificador aac deve sempre funcionar, pois é incorporado ao ffmpeg. Você também pode criar o ffmpeg se estiver no Linux ou instalá-lo através do Homebrew no OS X, que fornece o codificador libfdk_aac, e é aquele com a melhor qualidade.
slhck #
@slhck existe uma solução para Windows?
athos
@athos É possível (veja aqui trac.ffmpeg.org/wiki/CompilationGuide#Windows ), mas provavelmente um pouco mais complicado. Mas basta usar o codificador interno AAC - é bastante decente.
slhck
0

Abra um terminal. Mude para o diretório em que os arquivos MP3 estão. Digite:

for i in *mp3 ; do ffmpeg -i $i -qscale 0 $i.m4a ; done

Obviamente, o ffmpeg deve estar instalado.

Observe que eu usei "m4a" acima. O formato m4b parece ser o mesmo, apenas com uma letra alterada para indicar que é um livro. Você pode renomeá-los todos mais tarde se a diferença de uma letra o incomodar. Eles jogam o mesmo.

EDIT: Estou assumindo que você usa um Mac. O acima também funcionará em um PC se você executar um sistema operacional semelhante ao Unix ou instalar o Cygwin no Windows.

CarlF
fonte
Isso não adicionará metadados de capítulo ao arquivo de resultado, não é?
Artem Tikhomirov
2
E não mesclará esses arquivos mp3 em um. Qual é o objetivo?
Artem Tikhomirov
Não vi um requisito para combinar os capítulos na sua pergunta original. Deseja combinar todos os arquivos MP3 de cada audiolivro em um único arquivo, incluindo a adição de metadados que marcam o início e o final de cada capítulo? Essa não é a pergunta que você fez originalmente. A menos que os metadados estejam nos arquivos MP3 originais, tenho certeza que você precisará adicioná-los manualmente.
1911 CarlF
Meu ffmpegno Ubuntu 12.04 não parecia saber como converter, .m4bmas eu trabalhei com isso convertendo .m4ae renomeando.
Tripleee