Como posso converter para AAC?
Este é o comando FFmpeg mais básico para converter entrada para áudio AAC usando a mais alta qualidade que o AAC FFmpeg possui. libfdk_aac
é o codificador Fraunhofer AAC e está disponível quando você compilou o FFmpeg com suporte para ele.
ffmpeg -i input.mp3 -c:a libfdk_aac output.m4a
Para alterar a qualidade, você tem duas opções:
-
Para taxa de bits variável (VBR), use a opção
-vbr
. Por exemplo,-vbr 4
é uma boa escolha (aproximadamente 128 kbit / s para áudio estéreo). Maior significa melhor. Os valores variam de 1 a 5.ffmpeg -i input.mp3 -c:a libfdk_aac -vbr 4 output.m4a
-
Para taxa de bits fixa (CBR), use a opção
-b:a
, por exemplo-b:a 128k
. 128 kBit / s devem ser bons o suficiente para a maioria das situações. Você também pode escolher algo mais baixo.ffmpeg -i input.mp3 -c:a libfdk_aac -b:a 128k output.m4a
Você também pode usar o HE-AAC (v1 / v2) em vez do perfil padrão AAC-LC (baixa complexidade), que é mais adequado para baixas taxas de bits:
ffmpeg -i input.mp3 -c:a libfdk_aac -profile:a aac_he_v2 -b:a 32k output.m4a
E se eu não tiver libfdk_aac
?
Algumas versões do FFmpeg não possuem libfdk_aac
(por razões de licenciamento). Se for esse o caso, você pode usar o codificador AAC embutido:
ffmpeg -i input.mp3 -c:a aac -b:a 192k output.m4a
Este codificador não suporta VBR corretamente, então se você precisar disso ou HE-AAC, continue lendo.
Você pode compilar o ffmpeg e adicionar libfdk_aac
support. Existem guias no Wiki do FFmpeg . A compilação é fácil no Linux, moderadamente fácil no OS X e bastante difícil no Windows. Quando você segue os guias de compilação e instala as bibliotecas apropriadas antes, o FFmpeg agora oferece a opção de usar libfdk_aac
.
Houve alguns problemas com sua abordagem original:
-
alac
não é AAC. O ALAC é o Apple Lossless Audio Codec , enquanto o AAC é Codificação Avançada de Áudio . -
É por isso que sua saída é maior do que a entrada, porque, diferentemente do MP3, o ALAC ainda é compactado, mas precisa ser sem perdas - é por isso que ele precisa armazenar mais dados.
-
.aac
não é um contêiner de saída para o áudio do ALAC. Se você usa o AAC, isso deve funcionar. Eu usaria MP4 ou M4A embora.