Como troco o primeiro e o segundo fluxos de áudio em um MKV em um sistema baseado em Linux?


10

Eu estou usando plex. O Plex parece ignorar o fluxo de áudio padrão (no Roku) e, em vez disso, basta usar o primeiro fluxo de áudio. Isso é feito por meus testes usando o mkvpropedit.

Como o Plex atualmente não suporta a alteração de fontes de áudio em clientes fora da LAN, gostaria de alterar alguns dos meus arquivos para que a segunda fonte de áudio atual seja a primeira?

Qual é a melhor maneira de trocar fluxos de áudio em um MKV em um sistema baseado em Linux como o Ubuntu?

Respostas:


13

Com o FFmpeg , isso deve ser bastante simples. Certifique-se de baixar uma versão estática da página de download e não use a versão do repositório Ubuntu, que é bastante antiga.

Aqui está o comando:

ffmpeg -i input.mkv -map 0:v:0 -map 0:a:1 -map 0:a:0 -c copy output.mkv

Aqui está o que -mapfaz:

  • A primeira parte antes dos dois pontos é o ID de entrada. Como só temos uma entrada, é 0.
  • A segunda parte especifica o tipo de fluxo, vvídeo ou aáudio. Isso é opcional, mas é sempre uma boa ideia especificar o tipo também, caso os fluxos de vídeo e áudio não sejam multiplexados corretamente.
  • A terceira parte é o ID do fluxo de entrada. 0será o primeiro e 1o segundo, ou seja, o primeiro fluxo de vídeo e o segundo e o primeiro fluxo de áudio.
  • A ordem das -mapopções determina a ordem dos fluxos no arquivo de saída.

Isso significa que deixaremos o fluxo de bits de vídeo como o primeiro fluxo, depois o segundo fluxo de áudio e o primeiro - em essência, estamos trocando os fluxos de áudio.

O uso da -c copyopção garante que os fluxos de bits sejam copiados e não recodificados.

Alguns exemplos de como usar a -mapopção podem ser encontrados no wiki do FFmpeg.


Se há apenas uma entrada que você pode realmente deixar de fora o ID de entrada: -map v:0 -map a:1 -map a:0.
dessert

7

Basta usar mkvtool para evitar, reembalar, recodificar ... perder tempo.

mkvpropedit -v movie.mkv -v --edit track:2 --set track-number=3 --edit track:3 --set track-number=2

isso deve ser suficiente para trocar o fluxo.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.