У меня был файл AVI (XVid) с 2 аудиоканалами. Я удалил ПЕРВЫЙ аудиоканал, используя ffmpeg как:
ffmpeg -i <input.avi> -acodec copy -vcodec copy -map 0:0 -map 0:2 <output.avi>
Теперь VLC может воспроизводить видео с правильным звуком, НО, никакой другой медиаплеер не делает. Я проверил с помощью avidemux и обнаружил, что аудиокодек установлен как "Неизвестно".
Оригинальный аудиокодек был AC3/48000 Гц и 6 каналов. Я считаю, что единственная проблема заключается в том, что эта информация не записана в файл (поскольку VLC идентифицирует проблему и правильно воспроизводит файл).
Вывод 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
Как я могу это исправить?