Eu tinha um arquivo AVI (XVid) com 2 canais de áudio. Eu removi o canal de áudio FIRST usando ffmpeg como:
ffmpeg -i <input.avi> -acodec copy -vcodec copy -map 0:0 -map 0:2 <output.avi>
Agora, o VLC pode reproduzir o vídeo, com o áudio correto, MAS, nenhum outro reprodutor de mídia. Eu verifiquei com o avidemux e, em seguida, descobri que o codec de áudio está definido como "Desconhecido".
O codec de áudio original era AC3 / 48000Hz e 6 canais. Acredito que o único problema é que esta informação não está escrita no arquivo (já que o VLC identifica o problema e reproduz o arquivo corretamente).
A saída do ffmpeg é:
Input #0, avi, from 'output.avi':
Metadata:
encoder : Lavf55.12.100
Duration: 01:24:46.68, start: 0.000000, bitrate: 1703 kb/s
Stream #0:0: Video: mpeg4 (DX50 / 0x30355844), yuv420p, 720x432 [SAR 1:1 DAR 5:3], 25 fps, 25 tbr, 25 tbn, 30k tbc
Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1(side), fltp, 384 kb/s
Como posso consertar isso?