Как отправить аудио на оба разъема для наушников и HDMI одновременно?


12

Мне нужно отправить аудио одновременно через HDMI и разъем для наушников 3,5 мм. Я не смог ничего найти по этому поводу. Это вообще возможно?


Хотите воспроизводить одинаковое аудио или два разных аудиопотока ?
Тремби

Ответы:


7

Не придумываю полный ответ, но некоторые мысли по этому вопросу.

Давайте посмотрим на аппаратную сторону: схемы, к сожалению, не полезны для Pi B + и даже недоступны для Pi2, поэтому мы застряли здесь с B Rev 2.1.

Аудиовыход на разъем для наушников генерируется с помощью ШИМ. Прямо от выводов 40 и 45 GPIO BCM2835 через фильтр низких частот RC. (См. Схему на стр. 2.)

С другой стороны, звук через HDMI предположительно передается в цифровом виде. Википедия гласит: «Для цифрового звука, если на устройстве HDMI есть аудио, необходимо реализовать базовый формат: стерео (без сжатия) PCM». И действительно, ранее упомянутый аналоговый звук на основе ШИМ не подается на разъем HDMI.

Итак, теперь мы проверили некоторые старые новости: аналоговый разъем для наушников или цифровой HDMI. С моей точки зрения, эти два вопроса должны рассматриваться отдельно и независимо, поэтому (квази) одновременно. Теперь PulseAudioдолжна быть возможность потоковой передачи из одного источника на несколько кусков звукового оборудования. Я до сих пор удивляюсь, почему в Интернете нечего найти по этому поводу.


Я согласен, что их следует рассматривать отдельно, меня попросил кто-то, для кого я работаю над малиновым пи, и они попросили это сделать, я объяснил им, что не верю, что это возможно, но мне придется проверить с другими, которые знают об этом больше, чем я
Joker327

3

Я хотел бы быть в состоянии сделать то же самое. По крайней мере, я пытаюсь внести свой вклад в эту тенденцию с некоторыми идеями, надеющимися на возможное совместное развитие.

Что приходит мне в голову, так это то, что может быть (и должно быть) два экземпляра модуля драйвера, загруженного параллельно, каждый для одного сигнального маршрута. Однако для этого потребуются некоторые параметры уровня модуля ядра, как в идеальном примере ниже, каждое из которых создает одно устройство ALSA (номер 0 для HDMI и 3 для наушников в образце). Затем вы можете послать один звук одному, а другой - другому (или скопировать оба).

Пытался зайти на главную страницу исходного кода модуля snd_bcm2835 (чтобы оценить выполнимость простого патча), но не повезло (и время), поэтому я сдался. Если кто-то найдет источник и предоставит ссылку, я еще раз посмотрю на это.

НОТА !!! Ниже приведен только идеальный пример команд загрузки модуля ядра. В реальном программном обеспечении Raspberry Pi таких параметров нет (AFAIK)!

modprobe snd_bcm2835 out=hdmi alsa=0
modprobe snd_bcm2835 out=ear alsa=3

Привет и добро пожаловать! Я также был бы заинтересован в том, чтобы заставить это работать (ну, честно говоря, в реальной жизни это никак не используется;))
Ганима
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.