Как наложить музыку из плейлиста на зацикленное видео в ffmpeg для стрима на YouTube?

Всем привет, хочу сделать музыкальный стрим на YouTube 24/7. Для этого у меня есть VDS сервер.

Загрузил музыку в отдельную папку, есть видео/gif. Как наложить музыку на фон из плейлиста/папки, но чтобы видео было зацикленно, с помощью ffmpeg?

Пример канала: https://www.youtube.com/watch?v=5qap5aO4i9A

*Вариант с rdp и obs не устраивает
  • Вопрос задан
  • 539 просмотров
Решения вопроса 1
Заранее подготовить видео, чтобы облегчить жизнь ffmpeg'у и VDS'ке: перекодировать исходное видео в формат, не требующий кодирования. В тот же h264, если в нём будете стримить видео поток. Надо будет указат доп. параметры для группы кадров:
-c:v libx264 -pix_fmt yuv420p -preset medium -r 25 -g 50 -b:v 2500k

здесь частота кадров 25 и группировка 25 * 2 = 50 Я бы сохранил промежуточный файл в .ts:
ffmpeg -i input1.mp4 \
  -c:v libx264 \
  -pix_fmt yuv420p \
  -preset medium \
  -r 25 -g 50 \
  -b:v 2500k \
  -bsf:v h264_mp4toannexb -f mpegts \
  video.ts


Аудио можно оставить в mp3, можно всё перевести в aac заранее, один раз. Опять же для уменьшения нагрузки.

Составить текстовый файл плейлист аудио playlist.txt в формате типа
# this is a comment
file '/mp3/day1/file1.mp3'
file '/mp3/day1/file2.mp3'
file '/mp3/day1/file3.mp3'

Запускать на вход видео в цикле и плейлист через concat примерно так:
ffmpeg \
  -loop 1 -f mpegts  -i video.ts \
  -f concat -safe 0 -i playlist.txt \
  -c:a aac -b:a 128k \
  -c:v copy \
  -f flv \
  rtmp://a.rtmp.youtube.com/live2/ВАШ_КЛЮЧ
Не проверял, и скорее всего предстоит много работы по проверке и отладке параметров.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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