.MKV para .MP4 com 2 trilhas sonoras (áudio)

.MKV para .MP4 com 2 trilhas sonoras (áudio)

Encontrei este tópico: Configurações do freio de mão para converter MKV em MP4, mantendo a qualidade original

E posso "converter" .MKV em .MP4 com o seguinte código:

for %%a in ("*.mkv") do D:\Programme\Converter\ffmpeg\bin\ffmpeg.exe -i "%%a" -c:v copy -c:a copy "%%~na .mp4"
pause

O único problema é que existem 2 faixas de áudio. O alemão e o inglês. Com o código acima, ele copia apenas o idioma alemão (1º). Mas não o segundo idioma de áudio. Como eu posso fazer isso?

No momento, acabei de converter de .MKV para .MP4 apenas com idioma alemão. Mas quero poder mudar o idioma do meu player VLC de alemão para inglês.

Obrigado pela ajuda!

EDITAR: Encontrei esse tópico aqui: http://ffmpeg.gusari.org/viewtopic.php?f=25&t=611

E testei com essas informações. Alterei meu código acima, para este código:

for %%a in ("*.mkv") do D:\Programme\Converter\ffmpeg\bin\ffmpeg.exe -i "%%a" -map 0:0 -map 0:1 -map 0:2 -c:v copy -c:a:0 copy -c:a:1 copy "%%~na.mp4"
pause

Eu fiz algo errado aqui? Como eu poderia adicionar legendas em alemão/inglês a isso? SE eu adicionasse um mapa de legendas lá e meu .MKV não tivesse nenhuma legenda, isso seria um problema? Eu só quero criar um arquivo .bat que converta um .MKV com 2 trilhas sonoras e 2 legendas. Para que eu possa "remuxar" (ou converter não sei) todos os meus arquivos .MKV para .MP4 sem perder nenhuma informação.

No momento, meu .MKV não tem legenda, então não é importante. Mas é melhor se preparar para o futuro, certo?

Então, por favor, diga-me se fiz certo e talvez como adicionar as legendas também. É a primeira vez que uso o FFmpeg. Acabei de baixar, nunca ouvi falar. Nunca usei o CMD para isso.

Responder1

O ffmpeg não mapeia automaticamente todas as trilhas; padrãoseleção de fluxomapeará apenas uma trilha de áudio, um vídeo e uma trilha de legenda para a saída. Se você quisermapatodos os fluxos, use -map 0. Se você quiser poder selecionaro quepara mapear, você terá que analisar o arquivo de entrada primeiro ( ffmpeg -i input.mkv) e usar alguns scripts para construir o comando de conversão final. ffprobe pode ser útil para isso. VerWiki FFmpeg: dicas do FFprobepor exemplo.

Você pode especificar -c copyparacópia do fluxotodos os fluxos, independentemente do tipo. Você também pode indexar fluxos de vídeo e áudio separadamente, para que seu comando possa ser abreviado para:

ffmpeg -i input.mkv -c copy -map 0 output.mp4

Responder2

Existe um programa de código aberto chamado VCT: https://sourceforge.net/projects/videoconvertertranscoder/?source=directory

É uma GUI para ffmpeg. Você também pode editar o comando ffmpeg manualmente. Tem uma aba chamadaTranscodificaronde você pode reempacotar MKV para MP4, mas esta guia não tem opções para adicionar legendas.

Se você deseja reempacotar MKV para MP4 e adicionar legendas ao mesmo tempo, aqui está o procedimento:

  1. Vá paraConverterguia e selecione seu arquivo de entrada
  2. EmContêiner de vídeoselecionecópia dee emCodec de áudioselecione tambémcópia de
  3. Cliqueadicionar legendae selecione seu arquivo SRT externo
  4. Na caixa de texto do comando ffmpeg, substitua a parte da legenda-c:srt ""com-c:s mov_text ""
  5. cliqueAdicionar à lista de lotee depois cliqueComeçar A codificação será feita em um ou dois minutos.

Claro, se você não se importa em codificar duas vezes e não gosta de digitar comandos, você também pode fazer assim:

  1. selecione a guiaTranscodificare arraste seu arquivo paraArquivo de entrada.., cliqueComeçar, isso será feito em um minuto.
  2. Em seguida, selecione MP4 recém-codificado e emContêiner de vídeoselecionecópia dee emCodec de áudiocliquecópia de.
  3. CliqueAdicionar à lista de lotee depois cliqueComeçar. A codificação será feita em um minuto.

captura de tela da codificação solicitada de MKV para MP4

Responder3

Bem, estou usando um arquivo .bat como este:

for %%a in ("*.mkv") do D:\Programme\Converter\ffmpeg\bin\ffmpeg.exe -i "%%a" -c:v copy -c:a copy "%%~na.mp4" 

Mas recebo uma mensagem de erro, mas o .MP4 ainda funciona bem. Aqui está um arquivo de log: pastie.org/private/9lqyvhyotnh1o4gp6rg5g

O problema é que minha antiga TV Sony às vezes congela enquanto assisto o .MP4. Não sei dizer se é apenas o "player" da TV ou o próprio arquivo convertido. A GUI parece boa. Mas se você quiser converter uns 20 arquivos seguidos é preciso muito clique. O arquivo .bat faz isso automaticamente com todos os arquivos em uma pasta.

Talvez alguém saiba por que recebo uma mensagem de erro e se esse script está errado ou não :)

informação relacionada