altere a proporção de aspecto no ffmpeg, mas mantenha dois fluxos de áudio e legendas

altere a proporção de aspecto no ffmpeg, mas mantenha dois fluxos de áudio e legendas

Estou tentando alterar um AR de vídeos com ffmpeg assim:

ffmpeg -i in.mp4 -aspect 16:9 -c copy out.mp4

...e embora isso basicamente funcione, perde um segundo fluxo de áudio que está presente na fonte, bem como as legendas. Como posso fazer isso sem perder nada?

Responder1

Mapeie todos os fluxos

ffmpeg -i in.mp4 -aspect 16:9 -map 0 -c copy out.mp4

O FFmpeg, por padrão, escolheráapenas umfluxo de vídeo e áudio da fonte, sem mapa.

Responder2

Use mapo parâmetro para selecionar streams de áudio e copiar streams para cada stream separadamente. Exemplo (por favor, não copie o exemplo como está em sua linha de comando com comentários, você deve remover os comentários primeiro e formatá-lo como linha única ou conectar quebras de linha com \símbolo!):

ffmpeg -i input.mp4
    -map 0:0 -map 0:1  # Include both (2) audio streams  
    -aspect 16:9       # Change video aspect ratio
    -c:v copy          # Copy audio codec settings
    -c:a copy          # Copy audio codec settings
    -c:s copy          # Copy subtitles
    output.mp4

ou

ffmpeg -i input.mp4
    -map 0:?           # Include all audio streams  
    -aspect 16:9       # Change video aspect ratio
    -c:v copy          # Copy audio codec settings
    -c:a copy          # Copy audio codec settings
    -c:s copy          # Copy subtitles
    output.mp4

informação relacionada