Я пытаюсь направить несколько кастов Dota 2 (через Wine) на Twitch, используя скрипт, который я нашел в Интернете:
#!/bin/bash
STREAM_KEY="(redacted)"
FPS="30"
INRES="1600x900"
OUTRES="1280x720"
QUAL="medium"
avconv \
-f x11grab -s $INRES -r "$FPS" -i :0.0 \
-f alsa -ac 2 -i pulse \
-vcodec libx264 -s $OUTRES -preset $QUAL \
-acodec libmp3lame -ar 44100 -threads 6 -qscale 3 -b 712000 -bufsize 512k \
-f flv "rtmp://live.justin.tv/app/$STREAM_KEY"
Он передает потоковое видео нормально, но я получаю звук только из подключенного в микрофоне и без звука из Dota 2. Это не было бы ужасно, если бы я заботился только о получении звуковых эффектов, но я иногда транслирую с другими людьми, использующими встроенный голосовой чат, и так как я не получаю никаких из их аудио, похоже, что я сумасшедший.
Я мог бы попытаться использовать внешнюю программу для голосового чата, но на самом деле я не хочу заставлять кого-либо из моих случайных сокастеров настраивать его со своей стороны. Так что я бы хотел иметь возможность транслировать звук Wine и звук моего микрофона в поток.
Вы можете сделать это, создав нулевой приемник и два разъема обратной связи:
pactl load-module module-null-sink
pactl load-module module-loopback
pactl load-module module-loopback
Для настройки этих каналов вам понадобится инструмент pavucontrol (sudo apt-get install pavucontrol
).
На вкладке «Воспроизведение» выберите «Все потоки» и перенаправьте петлевые потоки на «Нулевой выход».
Затем перейдите на вкладку «Запись» и также выберите «Все потоки». Вы должны снова увидеть обе петли.