Правильно downmix 5.1 в стерео с помощью ffmpeg

у меня есть звуковая дорожка 5.1 из фильма, где передний левый и передний правый содержат музыку, а центр содержит диалог. Воспроизведение трека 5.1 в VLC прекрасно сочетает все вместе.

Я пытаюсь преобразовать 5.1 трек в стерео с помощью ffmpeg -ac 2, однако в результате стерео микс имеет гораздо более слабый объем, чем играть 5.1 трек изначально.

добавлять -af "pan=stereo|c0=FL|c1=FR" дает правильный объем, но тогда нет диалога, потому что центральный канал не включенный.

Так что решение, может быть, смешать левый / центральный / правый в стерео,и выбросить задние сабвуферные каналы? (Я предполагаю, что здесь...)

Итак, вопрос: Как я могу сделать ffmpeg downmix 5.1 стерео так же, как VLC делает это, с тем же сильным объемом в конечном результате?

19
задан forthrin
21.02.2023 19:47 Количество просмотров материала 3052
Распечатать страницу

4 ответа

Я нашел ответ Шейн предоставили слишком мало других каналов и слишком много центра. Фильмы в наушниках звучал из колеи, со всеми диалог и не хватает фоновой музыки и эффектов.

по данным стандарты ATSC (раздел 7.8, стр. 91), следующая формула используется для уменьшения 5.1 до обычного стерео (в отличие от матрицы):

Lo = 1.0 * L + clev * C + slev * Ls ;
Ro = 1.0 * R + clev * C + slev * Rs ;

clev и slev должны быть .Согласно таблицам 5.9 и 5.10 в вышеупомянутый документ, предполагающий уровень смешивания центра/объемного звука 0. Другие значения приведены в тех таблицах, которые уменьшают количество Центрального микса, что я не считаю полезным.

имея это в виду, следующая опция ffmpeg производит хороший сбалансированный звук со звуковым диалогом. Обратите внимание, что указание аудиоканалов не требуется.

-af "pan=stereo|FL < 1.0*FL + 0.707*FC + 0.707*BL|FR < 1.0*FR + 0.707*FC + 0.707*BR"

примечание об использовании символа "меньше" из pan Filter документация:

Если ' = ’ в спецификации канала заменяется‘<’, то выгоды для этой спецификации будут перенормированы таким образом, что итог будет 1, таким образом, избегая отсечения шума.

15
отвечен Gregory 2023-02-23 03:35

попробуйте это downmix:

-ac 2 -af "pan=stereo|FL=FC+0.30*FL+0.30*BL|FR=FC+0.30*FR+0.30*BR" 

как полагают в:

Диалог nightmode downmix предустановки для 5.1 DTS до 2.0 AAC стерео с помощью ffmpeg и qaac

9
отвечен Shane Harrelson 2023-02-23 05:52

Итак, объединив @Шейн Харрельсон это С @Jordan Harris's ответ на другой вопрос - С включенным ленивым режимом-вот что нужно для конвертации input_51.mkv (5.1) в output_stereo.mkv (стерео):

ffmpeg -i input_51.mkv -c:v copy \
    -ac 2 -af "pan=stereo|FL=FC+0.30*FL+0.30*BL|FR=FC+0.30*FR+0.30*BR" \
    output_stereo.mkv

-c:v copy часть означает, что поток видео не трогали (я думаю, что video cнастройки odec является copied). Без него это займет гораздо больше времени. Как раз повторять от ответ для completude, -ac 2 означает два аудиоканала и -af определяет звуковой фильтр.

посмотрев в команду немного, я понял, что он устанавливает, как состоят два стереоканала;FL (передний левый канал) берется из оригинала FC (передний Центр) Плюс 0.30*FL (30% слева спереди) плюс 0.30*BL (30% от задней левой стороны) и так далее.

4
отвечен Tarc 2023-02-23 08:09

если опция-ac 2 дает вам сбалансированный downmix, где ни музыка, ни речь не звучит слишком много, чем другие компоненты, вам просто нужно увеличить громкость с помощью

-vol 512

я использовал 512 в примере, что увеличивает звук, делая его в два раза громче. Правило в том, что 256 эквивалентно 100%

Не заходите слишком высоко со значением, и не забудьте проверить результаты в тех частях фильма со взрывами или громким шумом. Это очень легко введите искажение, используя слишком высокое значение.

0
отвечен Mephisto 2023-02-23 10:26

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх