Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flasher.ru > Флейм

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.10.2014, 03:54
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 1  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
По умолчанию Ширина канала для медиасервиса

Здравствуйте
Встал вопрос о ширине канала для медиасервиса.
Один ко многим, к 20, допустим.
Я поставил Nginx, настроил. Rtmp передается без проблем.
В статистике, предоставляемой Munin (http://5.63.152.89/munin/network-day.html) при одном коннекте к серверу(публикатор)
я вижу от 300 до 600 килобит в секунду в параметре venet0 traffic
Скрин прилагаю
Правильно ли я считаю, что одно rtmp соединение забирает 300-600 килобит в секунду ширины канала ?
Если взять в расчет что публикующих будет, допустим, 10, и каждого из них будут смотреть по 100 человек, то получается 1000 стримов по 600 килобит в секунду.
Для округления будем считать что один стрим это 1024 килобита в секунду = 1 мегабит в секунду.
1 гигабит в секунду это 1024 мегабита в секунду.
А для таких нужд нужен dedicated сервер с гигабитным портом, который стоит от 2х тыс вечнозеленых в месяц.

Или я что-то неверно посчитал?
Значит, те же самые рунетки для обеспечения видеосигналом всех подключенных арендуют достаточно дорогие сервера ?
Ведь там не 1000 одновременных соединений, а на порядки больше.

p.s. Вот мои настройки камеры и стрима
Код AS3:
camera = Camera.getCamera("0");
camera.setMode(640, 480, 16, true);
camera.setQuality(0, 100);
camera.setKeyFrameInterval(15);
 
h264Settings = new H264VideoStreamSettings();
h264Settings.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_3_1);
stream.videoStreamSettings = h264Settings;
Изображения
 


Последний раз редактировалось djyamato; 05.10.2014 в 04:29.
Старый 18.03.2015, 21:05
ERrorMAKros вне форума Посмотреть профиль Отправить личное сообщение для ERrorMAKros Посетить домашнюю страницу ERrorMAKros Найти все сообщения от ERrorMAKros
  № 2  
Ответить с цитированием
ERrorMAKros
 
Аватар для ERrorMAKros

Регистрация: May 2008
Адрес: Земля.Украина.Одесса
Сообщений: 219
Отправить сообщение для ERrorMAKros с помощью ICQ Отправить сообщение для ERrorMAKros с помощью Skype™
Тоже пытаюсь разбираться с этой загадкой.
Класс H264VideoStreamSettings помогает "зарезервировать" ширину исходящего потока.
Только необходимо определить чуть больше параметров.

Пытаюсь передавать (средствами rtmp, на fms сервер) из браузера HD Stream - 720p. со звуком включительно.
Все или тормозит, или отлично передает. Ширины канала - более чем достаточно, но поведение трансляции просто не
предсказуемое.

Секреты производительности в параметрах bandwidth и keyFrameInterval. Но вот только ниразу в интернете не нашел
описания какого нибудь логического принципа расчета этих параметров. Передача данных ведет себя просто не предсказуемо,
я уже не говорю о том уродстве, которое получается при записи в mpeg4.

А вот если stream`ить не из браузера, а из Adobe Flash Media Live Encoder 3.2 - с точно такими же параметрами - все намного лучше,
но временами так же не предсказуемо. Или все отлично, или slideshow.

Код:
var options:Object = {
	width: 1280,
	height: 720,
	quality: 100,
	fps: 30,
	keyFrameInterval: 6
};

var bandwidth:uint = (options.width + options.height) * options.quality;

_h264VideoStreamSettings = new H264VideoStreamSettings();
_h264VideoStreamSettings.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_4_1);
_h264VideoStreamSettings.setMode(options.width, options.height, options.fps);
_h264VideoStreamSettings.setQuality(bandwidth, options.quality);
_h264VideoStreamSettings.setKeyFrameInterval(options.keyFrameInterval);
Может кто то подскажет моменты, на которые следует обратить внимание, ...может есть какие нибудь советы по оптимизации трансляции. Потому как выше 480p. без каких либо проблем передать stream не удается.

Да и хотелось бы узнать какое технологии используют Ронетки...

Старый 09.04.2015, 23:23
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 3  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Цитата:
Сообщение от ERrorMAKros Посмотреть сообщение
Да и хотелось бы узнать какое технологии используют Ронетки...
полагаю что ФМС

Добавлено через 2 минуты
Цитата:
Сообщение от ERrorMAKros Посмотреть сообщение
Секреты производительности в параметрах bandwidth и keyFrameInterval. Но вот только ниразу в интернете не нашел
описания какого нибудь логического принципа расчета этих параметров.
это тоже помогает временами

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 18:13.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.