LINUX.ORG.RU

Объединение звуковых каналов в 1

 


0

1

Имеется устройство с ОС Ubuntu 18.04.

Собственно нужна программа с помощью которой можно будет не только шарить собеседнику свой экран и говорить с ним с помощью микрофона (как в скайп), но и чтобы он слышал звук системы (видео на ютубе, просто звуки из приложений, не важно).

Пытался по зарубежному гайду сделать отдельный канал для устройства записи, в который я бы мог одновременно отправить как звук с микрофона, так и звук с ПК, но так ничего и не вышло. Может кто-то может подсказать как это сделать, либо дать ссылку на нужный мне софт? (Тимвивер, скайп, дискорд, зум уже опробовал, там это сделать не получилось)

предлагаю использовать jack + pulseauio с модулями module-jack-sink и module-jack-source. jack будет использовать ресурсы карты и коммутировать порты. клиенты будут использовать пульсаудио для воспроизведения и записи. через модули пульсаудио эти потоки будут доступны в jack.

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

anonymous
()
Ответ на: комментарий от iamrushless

да я даже не знаю, скорее всего детального описания такого сетапа ты не найдёшь.

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

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

в-третьих, чтобы всё стартовало без задержек и автоматически, надо писать нормальные юниты к системд или делать какой-то скрипт и заускать уже его.

с альсой тоже надо разобраться — через что должны будут работать alsa-only приложения.

в теории, конечно, всё, вроде бы, звучит неплохо. английский был бы очень кстати.

по насройке пульсы:

  1. man 5 pulse-daemon.conf
  2. man 5 pulse-client.conf
  3. man 5 pulse-cli-syntax (синтаксис default.pa)
  4. https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/
  5. https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/

по настройке джека:

  1. man 1 jackd
  2. qjackctl

с системд сам поттеринг ногу сломает, пока разберётся как её настраивать, но вот эти ссылки стоит просмотреть:

  1. https://wiki.archlinux.org/index.php/Systemd
  2. man 5 systemd.unit
  3. man 5 systemd.service

нашлось кое-что связке пульсы и джека:

  1. https://github.com/jackaudio/jackaudio.github.com/wiki/WalkThrough_User_PulseOnJack
  2. https://wiki.archlinux.org/index.php/PulseAudio/Examples#PulseAudio_through_JACK

я даже не знаю. наверное, что-ли, стоит сказать, что линукс готов для десктопа =\

попробуй начать с этого:

mkdir ~/.config/pulse  # папка пользовательской конфигурации пульсы
cp /etc/pulse/{daemon.conf,default.pa} ~/.config/pulse
echo autospawn = no > ~/.config/pulse/client.conf
systemctl disable pulseaudio.service 
systemctl stop pulseaudio.service # или pulseaudio --kill
...
anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.