FFMPEG instalado, mas não encontrado

1

Estou tentando instalar pHash , mas quando executo ./configure esta mensagem é retornada:

...

*** Configuring video Hash ***

checking whether FFmpeg is present... checking for avcodec_alloc_frame in -lavcodec... no
configure: error: 

*** libavcodec not found.
You need FFmpeg. Get it at <http://ffmpeg.org/>

Mas o FFMPEG está instalado corretamente, na verdade, executando ffmpeg , ele retorna:

ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.1)
  configuration: 
  libavutil      55. 17.103 / 55. 17.103
  libavcodec     57. 24.102 / 57. 24.102
  libavformat    57. 25.100 / 57. 25.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 31.100 /  6. 31.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

Por que isso acontece?

ATUALIZAÇÃO:

libavcodec-dev já está instalado:

luca@luca-OptiPlex-7040:~/Downloads/pHash-0.9.6$ sudo apt-get install libavcodec-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libavcodec-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 74 not upgraded.

e:

luca@luca-OptiPlex-7040:~/Downloads/pHash-0.9.6$ whereis libavcodec
libavcodec: /usr/local/lib/libavcodec.a /usr/include/libavcodec /usr/share/man/man3/libavcodec.3.gz
    
por user6321 17.05.2016 / 09:49

2 respostas

3

O pHash parece um projeto inoperante e não foi atualizado desde 2013.

Refere avcodec_alloc_frame , que por anos foi preterido para av_frame_alloc , então é provável que seja incompatível com a API atual do FFmpeg.

Você terá que usar uma versão antiga do FFmpeg (não recomendado), ou atualizar a fonte do pHash para usar as bibliotecas atuais do FFmpeg corretamente.

Se você não precisar de suporte para hashes de vídeo perceptivo, configure o pHash com --enable-video-hash=no e ele omitirá a dependência do FFmpeg.

Se você está procurando funcionalidade de impressão digital de áudio, eu recomendo Chromaprint em vez de FFmpeg é compatível com .

    
por LordNeckbeard 18.05.2016 / 01:48
-1

Quando você está compilando um software, o que você precisa é das bibliotecas de desenvolvimento e não das bibliotecas / ferramentas de tempo de execução. Especificamente, o que está faltando aqui é o pacote libavcodec-dev . Instale-o como de costume com apt e, em seguida, execute ./configure novamente. Você provavelmente se deparará com outro erro dizendo que está faltando outra biblioteca. Use apt-cache search ou a web para encontrar o pacote que você precisa instalar e, em seguida, itere até que não haja mais erros.

    
por Anthony Wong 17.05.2016 / 12:00