Начнем с терминов.
Stream – потоковая передача мультимедиа, таких как видео и аудио.
Bandwidth - пропускная способность, скорость канала стрим потока / Bitrate - количество бит, используемых для передачи/обработки данных в единицу времени
FPS(Frames per Second)/ Framerate - количество сменяемых кадров за единицу времени, то есть кадры в секунду
Keyframe Interval - интервал для ключевых кадров, это число кадров, после обработки которых кодек создает ключевой кадр при экспорте видео. По умолчанию, интервал ключевых кадров определяется в Adobe Media Encoder автоматически на основе частоты кадров видеоклипа (для PAL 50i доступный диапазон: от 1 до 25). Значение интервала ключевых кадров указывает кодировщику частоту проведения повторной оценки видеоизображения и записи полного кадра, или ключевого кадра, в файл. Если в видеоматериале происходит частая смена сцен, присутствуют быстро движущиеся объекты или анимация, то общее качество изображения можно повысить сокращением интервала ключевых кадров. Уменьшение интервала между ключевыми кадрами приводит к увеличению размера выходного видео. Чем меньше интервал, тем больше будет создано опорных кадров, что приводит к увеличению размера скорости потока.
Ваш стрим поток состоять из двух основных компонентов, это видео и аудио, дальше вопрос только в типе используемого сжатия (video codec), разрешение потока и количестве кадров в секунду(fps) для видео и тип сжатия (audio codec) и битрейта аудио
Типы сжатия бывают разные, но для видео стрима в основном используют кодек H.264, а в аудио кодеке использует AAC или MP3. Количество кадров от 25 до 30. Качество аудио зависит от того как вы хотите, чтоб они вас слышали, ну и соответственно от микрофона. Ну а разрешение уже на ваше усмотрение в зависимости от факторов, таких как:
- нагрузка на ваш ПК, нужно чтоб ваш процессор успевал обрабатывать все потоки стрима запущенные у вас(это если у вас много сайтов)
- скорость интернета до сервера стрима, то есть если магистральный провайдер вам дает скорость 30 мгбит и вы гоните поток с большим разрешением 1080p, то больше трех потоков у вас не влезет в канал.
Вот примерный список скорости используемой для стрима, взятый для youtube. Источник: support.google.com/youtube/answer/2853702?hl=en
Наименование Разрешение Скорость
360p 640x360 500 - 2000 Kbps
720p 1280x720 1500 - 4000 Kbps
720p @60fps 1280x720 2250 - 6000 Kbps
1080p 1920x1080 3000 - 6000 Kbps
1080p @60fps 1920x1080 4500 - 9000 Kbps
1440p @30fps 2560x1440 6000 - 13000 Kbps
1440p @60fps 2560x1440 9000 - 18000 Kbps
Вот пример с twitch. Источник stream.twitch.tv/encoding/
Наименование Разрешение Скорость
480p60fps 640x360 1500 - 3000 Kbps
720p@30fps 1280x720 2500 - 4000 Kbps
720p @60fps 1280x720 3500 - 5000 Kbps
1080p@30fps 1920x1080 3500 - 5000 Kbps
1080p @60fps 1920x1080 4500 - 6000 Kbps
Еще один для понимания источник: support.google.com/youtube/answer/1722171?hl=en
Ну а в общем понимать надо основное, ваш провайдер вам дает скорость допустим (1 гбит или 300 мбит), и скажем так, чем она выше не значит что вы сможете лучше транслировать видео поток, эта скорость только поможет вам на внутренней сети провайдера и нашей страны, так как у всех провайдеров есть точки соприкосновения(к примеру в СПб на Большой Морской), а за границу вас будут пускать уже через магистрального провайдера, он и будет решать какую скорость вам дать, это будет зависеть от множества нюансов:
- приоритет какому типу трафику отдается
- приоритет к конкретным ip, если есть договор на фиксированную скорость от одного источника до другого (часто для юр.лиц)
- общая загрузка канала.
- ……………………………….
Так что полностью рассчитать трафик невозможно, но можно примерно прикинуть сколько его нужно. Сразу скажу, что два провайдера по 100 мбит, часто будет лучше для работы с несколькими сайтами, чем один на 300 мбит, но при условии, что вы сможете разделить трафик, часть сайтов через одного провайдера, часть через другого, но для этого вам надо знать все их ip адреса.
Вывод такой: если вы работаете с одним сайтом на среднем разрешении например 720p то канал до сервера будет примерно до 6 мбит(все зависит от настроек), но главное чтоб до сервера стрим потока канал были обеспечен.
Все настройки обычно рекомендуются сайтом вебкама, и транслировать видео выше чем они просят в рекомендациях, не стоит, так как они скорее всего их порежут, так как чем выше качество у вас настроено, тем больше ресурсов надо будет выделить под прием и трасляцую ваше видео потока, а им это не всегда выгодно.
Эта статья в основном вам поможет понять требуемую скорость и настройки внешних программ трансляции видео, таких как OBS, FME и т.д.
Сообщение отредактировал Elena: 27 Март 2018 - 18:39