Моя цель - найти наиболее эффективный способ пересылки / перемотки видео в формате m3u8 с помощью FFMPEG. Я не возражаю нести расходы на CDN или дополнительные серверы, однако конечной целью является доставка контента по следующей спецификации;

  • 1280x720
  • 30 FPS
  • 1 Мбит / с (1000 Кбит)

На этапе тестирования я использую следующие заполнители:

Input: https://adultswimhls-i.akamaihd.net/hls/live/238460/adultswim/main/1/master.m3u8
Output: rtmp://a.rtmp.youtube.com/live2/xfiles

Текущая команда, которую я использую:

ffmpeg -re -i https://adultswimhls-i.akamaihd.net/hls/live/238460/adultswim/main/1/master.m3u8 -c:a aac -c:v copy -f flv rtmp://a.rtmp.youtube.com/live2/xfiles

Текущее использование ресурсов

Проведя некоторые исследования SuperUser и нескольких других доменов, я считаю, что аргумент -c:v copy эффективно отражает исходный источник, означающий, что мой сервер не перекодирует, поэтому использование ЦП так мало.

Второе, что я использую команду, как;

ffmpeg -re -i https://adultswimhls-i.akamaihd.net/hls/live/238460/adultswim/main/1/master.m3u8 -c:a aac -b:v 1M -b:a XXX -r 30 -s 1280x720 -f flv rtmp://a.rtmp.youtube.com/live2/xfiles (Not tested if this actually works, but just an example)

Я заметил, что загрузка процессора на 5% из первой команды вскоре превращается в твердые 60%+, и я предполагаю, что это потому, что я на самом деле перекодирую. Я беру входной поток, применяя к нему указанные переменные, затем перекодирую и отправляю его в место назначения, которое понятно, и обновление моего сервера не является проблемой, однако я должен выяснить, не ошибаюсь ли я. Это мой первый раз, когда я использую FFMPEG, и я провел все исследования, которые, возможно, смогу привести себя к пониманию, поэтому я прошу кого-то, кто знает их вещи. Мои мысли:

  • Найти CDN, который предлагает кодирование, ожидая ответа от BelugaCDN, я знаю, что один провайдер CDN предложил его мне за 10 долларов в месяц, что было хорошо, хотя забыл, какой из них.

  • Обратитесь за помощью в оптимизации второй команды или найдите способ использовать -c:v copy и понизить битрейт до 1 Мбит / с, что я не считаю возможным.

  • Подумайте, возможно ли (не уверен, что кто-нибудь узнает об этом или о его услугах) вводить собственный поток битов при использовании CDN, но ограничить исходящий битрейт, чтобы зрители не поглощали сумасшедшую пропускную способность 5 Мбит / с в качестве Сам поток не должен быть таким высоким качеством.

  • Обновите мой сервер, чтобы я мог обрабатывать до 3-х одновременных потоков со своей перекодировкой, если да, то к каким спецификациям я хотел бы стремиться.

Теперь я знаю, что вы, вероятно, думаете, просто используйте YouTube/Twitch бесплатно ... Ну, видео, которое я предлагаю, является платной услугой и выглядит просто непрофессионально, поэтому это будет моим последним средством.

Спасибо за любую помощь / совет.

0