avconv
e ffmpeg
são essencialmente a mesma coisa. [recentemente, há ALGUMA DIVISÃO, mas não há muito o que escrever, se você compilar o seu próprio ffmpeg
[o fornecido nos repositórios do Ubuntu, por exemplo, é VELHO e sofre com esse tamanho de vídeo não é um acordo blá blá blá [basicamente tenta para dizer a você que o vídeo tem proporções erradas], mas se você se incomodar em ler o ffmpeg
guia de compilação e compilá-lo no git, ele não terá nenhum dos problemas das versões mais antigas que aparecem na maioria dos sistemas operacionais. o aviso de depreciação a que se refere avconv
está dizendo que eles criaram um utilitário mais novo para tentar substituir ffmpeg
, mas é tão amplamente usado que, mesmo que tentassem cortá-lo, todos estaríamos criando links avconv
paraffmpeg
de qualquer maneira, para que eles não parem de trabalhar e o abandonem.]]
Não é uma coisa ruim de usar avconv
. Acabei de ver a resposta mencionando o aviso de depreciação, que é essencialmente uma mensagem vazia, deveria ser mais uma alternativa ao ffpmeg, você pode tentar o avconv, que é mais verdadeiro no caso aqui.
avconv -i inputfile.flv -map 0 -c:v libx264 -c:a copy outputfile.mp4
é realmente o mesmo que
ffmpeg -i filename.flv -vcodec libvpx -acodec libvorbis
essencialmente no primeiro você está usando as opções de mãos mais curtas e no segundo é a variedade mais escrita.
TAMBÉM -map 0
está se referindo às faixas de áudio; portanto, se estiver usando algo parecido com o mp4a
que pode lidar com várias faixas de áudio, você pode deixar isso para copiar todos os fluxos de áudio no arquivo resultante. Isso é necessário apenas se você usar um codec que não suporta várias faixas de áudio no mesmo arquivo, então você deseja mapear o áudio necessário e não todos. É claro que se você tentar minimizar o espaço usado, poderá especificar apenas um para tentar extrair um pouco do tamanho do arquivo [o áudio é talvez um 1/3 do tamanho da faixa de vídeo [e isso é generoso]].
-c:v = codec(video)
so: -c:v libx264
é o mesmo que usar: -vcodec libx264
FYI; mesmo com este exemplo:-c:v copy = -vcodec copy
além disso, para os FLVs, tenha cuidado, o arquivo flv é o mesmo que um avi, pois é um contêiner que pode conter qualquer número de codecs para vídeo ou áudio. Você deseja primeiro usar o utilitário de inspeção de mídia de sua escolha para ver o que é usado no próprio arquivo antes de optar por copiar o fluxo de vídeo e / ou áudio ou se você deseja transmiti-lo do que quer que seja para algo novo. Portanto, o comando que funciona melhor para um FLV pode não ser o mesmo para outro FLV [é claro que, geralmente, se você receber vários FLVs da mesma fonte, eles serão codificados da mesma maneira, mas isso nunca é uma garantia].
O fato de não tentar escolher nada funcionou na pesquisa na web e queria ajudar a esclarecer um pouco as coisas para as pessoas.
Novamente, como esta resposta indica a resposta abaixo, essa mensagem SIM, executando o ffmpeg, sempre postará essa mensagem, é essencialmente oca, pois esses dois utilitários ainda são realmente o mesmo utilitário com pouca diferença. Em quase todos os casos, você deve obter exatamente os mesmos resultados usando qualquer um dos comandos. Isso não necessariamente resultará em uma re-transcodificação completa, por quê? A, se não for necessário, poupa muito tempo e B, se você transcodificar um arquivo que já foi compactado em um codec de vídeo, está executando essencialmente uma rotina de compactação contra algo que já está compactado e sempre resultará em menos qualidade que a fonte. A maioria dos codecs mais novos são compatíveis entre si [nem todos], como por exemplo, um flv poderia tecnicamente ser um MP4 dentro de um wrapper FLV, já que FLVs como AVIs são apenas recipientes de outros codecs. Assim, depende do que a fonte flv possui para o codec de vídeo e ausio comparado com o que você está convertendo para saber se precisa ser transcodificado. Se, no FLV, eles usassem o vídeo H264 MP4 e o MP4a para áudio, você não precisaria recodificar novamente o que seria necessário copiá-lo e ajustar os cabeçalhos dos arquivos para que sejam lidos como um verdadeiro MP4 em vez de um vídeo MP4 dentro de um arquivo FLV.