Como você classificaria uma faixa de áudio como “Japanese Surround 5.1” em MP4Box ou ffmpeg?

1

Eu tentei vários métodos de tentar rotular a faixa, como usar

MP4Box -lang 3=jpn file.mp4

e depois fez

MP4Box -name 3="5.1 Surround" file.mp4

e o arquivo no VLC mantém o rótulo mostrando apenas

Track 2 [Japanese]

Sidenote: Sim, estou selecionando a faixa de áudio correta que quero renomear, que é a faixa 3 no arquivo.

    
por I509VCB 10.05.2016 / 19:21

1 resposta

1

É possível adicionar metadados dessa maneira usando o FFmpeg. Para demonstrar isso, criei um arquivo de teste com as seguintes propriedades:

Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661) [...]
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, 

Para adicionar uma tag ao stream de áudio usando o FFmpeg, tente a seguinte sintaxe:

ffmpeg -i test.mp4 -c copy \
          -metadata:s:a:0 language=jpn -metadata:s:a:0 title="5.1 Surround" \
          testing.mp4

Algumas notas:

  1. -c copy : copie os dois fluxos sem codificar para um novo contêiner. O FFmpeg não colocará as tags sem esse processo.
  2. -metadata:s:a:0 : adicione os metatdata a: s tream: a udio: primeira faixa de áudio. Observe que isso é 0, não 1 como você poderia esperar. Note também que a opção -metadata deve ser repetida com cada metadado extra adicionado.

O respeito por essas tags é um sucesso entre os players de mídia, mas as tags adicionadas dessa maneira são selecionadas por mediainfo ...

Referências:

por andrew.46 11.05.2016 / 09:04