Современный метод для потоковой передачи в Ubuntu из терминала

Мне повезло с CheckGmail. Обладает приятным графическим интерфейсом, прохладными всплывающими заголовками тостеров и позволяет выполнять действия с электронной почтой из лотка.

sudo apt-get install checkgmail; checkgmail &
1
задан 24 January 2018 в 10:33

2 ответа

Попробуйте:

ffmpeg -f x11grab -video_size 1280x720 -framerate 60 -i :0.0 -f pulse -i default \
  -c:v libx264 -preset fast -b:v 4500k -bufsize 9000k -maxrate 5000k -g 120 \
  -pix_fmt yuv420p -c:a aac -b:a 128k -f flv "rtmp://foo/your_stream_key"
  • Просмотр вывода консоли во время процесса кодирования. Если выходной fps ниже, чем -framerate, уменьшите -framerate и / или используйте более быстрый -preset. Используйте самый медленный -preset, который все еще обеспечивает желаемую частоту кадров на выходе.

  • -b:v приблизительно определяется -video_size. См. Рисунок 3 в Рекомендуемые настройки кодирования для HTTP Live Streaming Media для некоторых рекомендуемых битрейтов (но поэкспериментируйте и посмотрите, что работает лучше для вас). -bufsize определяется по -b:v. В этом примере используется 2-секундный буфер, поэтому -bufsize равен 2x -b:v.

  • -g должно быть в 2 раза -framerate.

  • Если вы получите «The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it», значит, ваш ffmpeg древний, и вам следует обновить вместо использования -strict -2. Кодировщик AF FFmpeg был улучшен и больше не считается экспериментальным, но в вашей версии отсутствуют эти улучшения. Самый простой способ обновления - это загрузить недавний ffmpeg двоичный файл и переместить его в /usr/local/bin (или ~/bin, но вам нужно будет повторно войти или запустить source ~/.profile, чтобы он работал ).

Также см .:

1
ответ дан 24 January 2018 в 10:33

Вы не можете просто поместить одну команду в несколько строк. Вы получаете ошибки, подобные этим, если вы делаете:

./start_stream.sh: line 4: -c:v: command not found
./start_stream.sh: line 5: -pix_fmt: command not found

Вам нужно поставить \ в конце каждой строки, где следующая строка является продолжением этой строки, например:

STREAM_KEY=$(cat ~/.twitch_key)   # This is your streamkey

ffmpeg -f x11grab -video_size 1280x720 -framerate 60 -i :0.0 -f pulse -i default \
  -c:v libx264 -preset fast -b:v 4500k -bufsize 9000k -maxrate 5000k -g 120 \
  -pix_fmt yuv420p -c:a aac -b:a 128k -f flv "rtmp://live.twitch.tv/app/$STREAMKEY"

Вам также нужно изменить $STREAMKEY, чтобы соответствовать подчеркиванию в середине STREAM_KEY в начале.

1
ответ дан 24 January 2018 в 10:33

Другие вопросы по тегам:

Похожие вопросы: