FFMPEG AAC Codificador desapareceu?

4

Estou executando o Ubuntu Server 10.04 LTS x64. Eu tenho usado o ffmpeg nesta máquina para codificar vídeos H.264 com áudio AAC por mais de um ano.

Houve uma atualização nos pacotes do ffmpeg nesta semana que parece ter quebrado o codificador AAC.

O comando que estou usando:

/usr/bin/ffmpeg -y -i '/tmp/original.mov' -acodec libfaac -ar 44100 -ab 128k -vcodec libx264 -level 41 -crf 25 -r 25 -s '1280'x'720' -bufsize 250000k -maxrate 2500k -vpre lossless_slower '/tmp/converted.mp4'

A conversão falha com este erro:

Unknown encoder 'libfaac'

Saída de ffmpeg -v :

FFmpeg version SVN-r0.5.1-4:0.5.1-1ubuntu1.2, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --extra-version=4:0.5.1-1ubuntu1.2 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --enable-shared --disable-static
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 1 / 52.20. 1
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Sep 16 2011 17:08:44, gcc: 4.4.3
ffmpeg: missing argument for option '-v'

Resultado aplicável de ffmpeg -formats :

Codecs:
 D A    aac             Advanced Audio Coding

O E da codificação está ausente.

Eu já tinha libfaac-dev e libfaac0 instalado e instalei faac após o fato para ver se isso ajudaria. Sem dados.

Sugestões? Congratulo-me com qualquer conselho. Obrigado.

    
por Andrew Ensley 21.09.2011 / 17:22

3 respostas

3

Várias construções do ffmpeg têm determinados módulos ativados / desativados, geralmente por motivos legais. (Certos codecs patenteados e o que não pode geralmente não ser distribuído, exceto na forma original, dependendo do país.)

Se você quiser o pacote completo, provavelmente precisará construí-lo sozinho ou navegar no Google por uma hora, procurando um binário que tenha os módulos que está procurando.

    
por 21.09.2011 / 18:56
1

Você pode tentar usar o Repositório Medibuntu. É um repositório de terceiros que contém pacotes que não podem ser incluídos nos repositórios oficiais do Ubuntu.

Consulte o link para obter mais informações.

    
por 23.09.2011 / 14:15
1

Ao usar o Medibuntu, os pacotes principais da libav ainda são instalados a partir do repositório oficial do Ubuntu. O Medibuntu adiciona os pacotes -extra que fornecem a funcionalidade não livre.

O que acontece é que quando o Ubuntu lança uma nova versão do libav, os pacotes -extra no Medibuntu demoram um pouco para serem atualizados. Os antigos pacotes -extra não são compatíveis com a nova versão e, portanto, quando você atualiza, os pacotes -extra são removidos, removendo assim os codecs não livres.

A solução é não atualizar a libav até que o Medibuntu tenha lançado pacotes -extra atualizados.

    
por 26.06.2012 / 20:09