Como posso multiplexar um fluxo de vídeo e áudio?

Como posso multiplexar um fluxo de vídeo e áudio?

Eu tenho um fluxo de vídeo e áudio separado (vindo da IPWebcam em um dispositivo Android) e gostaria de multiplexá-los (e talvez transcodificá-los) em um único arquivo de vídeo, usando um servidor Linux. Como posso conseguir isso? Eu tentei todo tipo de coisa com o VLC, mas sem sucesso ainda.

Responder1

Se você tiver o FFmpeg (que pode e deve ser compiladoda fonte):

ffmpeg -i video.avi -i audio.wav -map 0:0 -map 1:0 -c:v copy -c:a copy output.avi

Isso copiará os fluxos de bits brutos de vídeo e áudio de video.avie audio.wavpara output.avi.

Se você deseja transcodificar vídeo e áudio, basta passar os parâmetros apropriados c:ve c:a, por exemplo, para algo mais avançado:

ffmpeg -i video.avi -i audio.wav -map 0:0 -map 1:0 -c:v libx264 -crf 21 -c:a libfaac output.mp4

Aqui, crfcontrola a qualidade do vídeo com valores razoáveis ​​de 19 (melhor) a 24 (pior). O áudio AAC é usado em seu lugar.

Leia sobre conversão de vídeo (com ferramentas padrão ou usando FFmpeg) em nosso blog:

informação relacionada