Sou capaz de converter um mp4 para um mp3 no ffmpeg, mas não sei como adicionaria uma miniatura do vídeo.
Atualmente, temos isso para converter de mp4 para mp3
ffmpeg -i video.mp4 -acodec libmp3lame -metadata title=video -b:a 256 -f input.mp3
Eu precisaria executar isso através do ffmpeg novamente com este comando?
ffmpeg -i input.mp3 -i cover.jpg -map_metadata 0 -map 0 -map 1 output.mp3
ou existe alguma maneira de usar filtros complexos para obter esta é uma corrida?
Eu sei que isso funciona para FLV, mas não parece funcionar para mp4
ffmpeg -i video.flv -i cover.jpg -map 0:a -map 1 -c:v copy -metadata title=video -b:a 256k out.mp3
Respostas:
Melhor resposta , com explicação, incorporando sugestões inteligentes de slhck e Mulvya, sem parâmetros essenciais.
ffmpeg
ferramenta de manipulação de áudio / vídeo: já selecionada pelo OP, é particularmente adequada para este trabalho.-i video.mp4
primeiro arquivo de entrada: um vídeo com algum áudio que queremos extrair.-i cover.jpg
segundo arquivo de entrada, uma imagem que queremos exibir quando reproduzimos o arquivo de áudio resultante.-acodec libmp3lame
queremos criar um arquivo .mp3, usando o codificador LAME.-b:a 256k
isso define a taxa de bits da faixa de áudio para 256Kb / s constante. Uma opção mais inteligente seria codificar com uma taxa de bits variável, especificando o parâmetro de qualidade :-q:a 0
solicita a qualidade máxima, enquanto-q:a 4
muitas vezes representa um bom compromisso entre a qualidade de áudio percebida e a taxa de bits (e, portanto, o tamanho do arquivo).-c:v copy
isso indica que o fluxo de vídeo (a imagem .jpg) não deve ser recodificado, mas deve ser copiado como está. Isso é útil para evitar processamento desnecessário e perda potencial de qualidade ao recodificar em um formato com perda. No nosso caso, sem esse parâmetro, a imagem seria decodificada de .jpg e codificada para .png, que aparentemente é o formato nativo escolhido por padrão. Isso não representaria uma perda de qualidade, já que .png é lossles, mas, com mais freqüência, aumentará o tamanho do arquivo, devido ao fato de que .jpg (com perda) geralmente oferece uma melhor taxa de compactação.-map 0:a:0
isso seleciona o fluxo a ser usado desde o primeiro (0:
arquivo de entrada ): ele deve ser o primeiro:0
(a
) fluxo de áudio ( ) que ele contém.-map 1:v:0
isso seleciona o primeiro (:0
) vídeo (v
) do segundo (1:
) arquivo de entrada.output.mp3
o nome desse parâmetro foi astuciosamente escolhido para sugerir que esse deve ser o nome a ser dado ao arquivo de áudio de saída (.mp3) com a imagem incorporada que queremos criar.Resposta original
Isso cria um arquivo de áudio (.mp3) com uma imagem estática, reunindo um vídeo (.mp4) e uma imagem (.jpg) do meu casamento:
Consulte a documentação do ffmpeg sobre a seleção de fluxos de entrada com
-map
, que é a opção relevante aqui.Primeiro executei o comando com simplicidade
-map 0 -map 1
e obtive esta informação:Assim, eu sabia que queria transmitir
1
(áudio aac) a partir do arquivo que possui um número de índice0
, ou seja, o arquivo de vídeo; portanto, teve que ser explicitamente selecionado com-map 0:1 -map 1
.fonte
Stream map '0:1' matches no streams. To ignore this, add a trailing '?' to the map.
Stream mapping:
Stream #0:0 -> #0:0 (aac (native) -> mp3 (libmp3lame))
Stream #1:0 -> #0:1 (mjpeg (native) -> png (native))
-map 0:a:0 -map 1:v:0
para selecionar os primeiros fluxos de áudio e vídeo do primeiro e do segundo arquivo, respectivamente.-c:v copy
.você pode usar o vlc media player -
Etapa 1: Abra o VLC e selecione "Mídia". Clique no botão converter / salvar.
Etapa 2: na próxima janela exibida, selecione "adicionar" e escolha o arquivo de vídeo (MP4) a ser convertido.
Passo 3: Em seguida, clique na seta para baixo em "Converter / Salvar" e clique em "Converter".
Etapa 4: na próxima janela exibida, verifique se o botão "Converter" está selecionado. Prossiga para escolher o tipo de arquivo de áudio que você deseja criar. No nosso caso, estamos convertendo o arquivo MP3.
Etapa 5: escolha um destino de saída e pressione “Iniciar”. O VLC começará então a converter.
para adicionar miniaturas, você pode consultar este link (explicado muito bem).
fonte