Что: 6bb40498db36dcdede16742fc944468c954dae76
Когда: 2020-05-01 13:11:34+03:00
Темы: multimedia
Кодирование 5.1 звука фильма в Opus Если сделать дамп аудио ffmpeg-ом (теперь только им занимаюсь темой кодирования!) в PCM файл, потом его сжать opusenc-ом, то после сведения в контейнер с видео, каналы явно на слух становятся другими, перетасоваными. С ходу у меня так и не получилось ffmpeg заставить дампить в другом виде (перевернуть, чтобы после Opus-а всё встало на свои места). С ходу я не очень понял как конкретно они тасуются, чтобы каким-нибудь sox-ом поменять их вручную местами. Но потом плюнул и вспомнил что FFmpeg же может родной libopus использовать для кодирования. Немного шаманства каналами всё равно придётся сделать, но кодирует он теперь без проблем в нужном порядке: -filter:a "channelmap=channel_layout=5.1" -mapping_family 1 При этом Opus определяет (и вне FFmpeg) что четыре канала типа полноценных, а два не особо и применяет какую-то оптимизацию: в итоге оно существенно экономит битрейт для двух каналов.
Сгенерирован: SGBlog 0.34.0