Usando o ffmpeg em como eu copio o vídeo e vários fluxos de legenda em um MKV e reencoco vários streams de áudio no AC3?

0

Eu tenho um arquivo de vídeo no formato MKV. Eu gosto da qualidade do vídeo, mas eu não gosto de ter o áudio no formato FLAC desde que eu decidi que ocupa muito espaço.

É um arquivo de áudio duplo - é um anime com áudio em japonês e inglês - e também tem vários streams de legendas.

Eu poderia simplesmente re-codificar o arquivo a partir do zero a partir do meu Blu-ray, mas não tenho mais os rasgos brutos no disco nem me lembro das configurações exatas do vídeo. Além disso, isso parece mais rápido a longo prazo, uma vez que levou dias para codificar todo o arquivo da última vez.

Este é o comando que eu tentei usar para cobrir o áudio para o AC3:

ffmpeg -i "01.mkv" -c:v copy -c:a ac3 -c:s copy "test.mkv"
    
por Jason Murray 02.12.2017 / 23:29

1 resposta

2

Acredito que você precisa especificar o mapeamento dos fluxos de áudio e legenda para garantir que todos deles sejam copiados por meio do primeiro. Para fazer isso, você precisa adicionar -map 0:a? -map 0:s? -map 0:v antes de seu -c:v

Isso deve fazer seu comando

ffmpeg -i "01.mkv" -map 0:a? -map 0:s? -map 0:v -c:v copy -c:a ac3 -c:s copy "test.mkv"

O comando map é usado para dizer que você definitivamente quer que essas coisas sejam puxadas para a saída. -map 0:a:1 especificaria apenas para copiar o fluxo de áudio número 1, enquanto -map 0:a? deveria efetivamente criar um caractere curinga e copiá-los todos.

    
por 03.12.2017 / 00:09