IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   Создание мини веб-сайта с потоковым видео (http://www.imho.ws/showthread.php?t=143535)

v_mirgorodsky 21.04.2010 01:21

Создание мини веб-сайта с потоковым видео
 
Доброго времени суток,

Пусть есть некий сконфигурированный веб-сервер, раздающий некую веб-страничку. Как сделать так, чтобы при отображении этой странички в браузере можно было бы в некое окошко вывести заданный фрагмент потокового видео со звуком? Видео планируется быть в формате h.264 или MPEG4, формат аудио непринципиален, возможно, стандартный mp3 или подобный. По факту должен получиться маленький доморощенный вариант youtube для внутреннего использования. Предполагается наличие перемотки вперед и назад, пауза и т.п. Все, что начинается с упаковки потокового видео в потоковый контейнер планируется разрабатывать "с нуля". Теперь, собственно, вопросы. Какой потоковый формат видео доставит пользователю минимальные неудобства при воспроизведении? Очень хотелось бы некое простое решение, требующее минимум усилий на реализацию, кросс-платформенное и простое. Буду крайне признателен за любую информацию по теме.

P.S. Если случаем ошибся темой, то прошу модераторов направить меня в нужное русло ;)

RaZEr 21.04.2010 01:35

Цитата:

Сообщение от v_mirgorodsky (Сообщение 1706156)
Какой потоковый формат видео доставит пользователю минимальные неудобства при воспроизведении?

А выбор всего из двух:
Цитата:

Сообщение от v_mirgorodsky (Сообщение 1706156)
Видео планируется быть в формате h.264 или MPEG4

А h.264 это разновидность MPEG4, и вообще не понятно в чём ваш вопрос - выбор из одного варианта.

Если под потоковым видео вы подразумеваете ролики на youtube, то можете использовать формат который у них - Flash Video.

v_mirgorodsky 21.04.2010 03:09

Я изо всех сил и пытаюсь разобраться как это сделать на стороне сервера. На каких портах должен "висеть" мой сервер потокового видео, по какому протоколу он должен управляться, как создать примитивную HTML страничку с прямоугольной областью, в которую будет выводиться потоковое видео, и главное, какая кросс-платформенная программа может использоваться для проигрывания этого видео потока.

По факту у меня есть приложение, осуществляющее захват видео с камер видеонаблюдения. Видео жмется по выбору по стандарту h.264 или MPEG4. Дальше стоит задача организовать трансляцию этого видеопотока в сеть. Для обеобеспечения максимальной совместимости с сетевой инфраструктурой было принято решение организовать это по аналогии с youtube. Вот, сижу, пытаюсь разобраться с вопросом.

добавлено через 13 минут
Вот, нарыл несколько аббревиатур - RTP, RTSP, RTCP. Только непонятно, есть ли готовый кросс-платформенный софт, который может взаимодействовать с моим сервером по этим протоколам без необходимости дописывания к нему множества модулей.

RaZEr 21.04.2010 03:20

Цитата:

Сообщение от v_mirgorodsky (Сообщение 1706160)
На каких портах должен "висеть" мой сервер потокового видео

На любом. Обычно это настраивается в самой программке. Также как формат вещания (HTTP,MMS,RTSP)

Цитата:

Сообщение от v_mirgorodsky (Сообщение 1706160)
какая кросс-платформенная программа может использоваться для проигрывания этого видео потока

Из реально кросс-платформенных браузерных решений только Flash.

Цитата:

Сообщение от v_mirgorodsky (Сообщение 1706160)
Вот, нарыл несколько аббревиатур - RTP, RTSP, RTCP

RT* это форматы Real Player (www.real.com).

v_mirgorodsky 21.04.2010 14:36

Спецификация SWF нашлась на сайте Adobe, читаю, разбираюсь. Если я правильно понимаю, байтовый поток раздается через HTTP или HTTPS и никаких дополнительных вещей не требует. А как обстоят дела с RTP, RTSP, RTCP? Есть ли для RTP, RTSP, RTCP открытая документация, или это некий закрытый корпоративный стандарт?

А еще момент, где бы можно было посмотреть на пример HTML страницы со встроенным апплетом для проигрывания потокового видео в формате SWF и RTP? Понятно, что готовый дизайн встроенного веб-сервера будет выполняться позже профессионалами, но мне сейчас для отладки нужен некий пример, на котором можно было бы тренироваться.

v_mirgorodsky 21.04.2010 17:03

Дальнейшие разбирательства привели к таким выводам:
  • SWF, FLV, F4V файлы проигрываются различными версиями Adobe Flash Player, сгружаются на клиентскую машину как файл в пределах протоколов HTTP или HTTPS поверх TCP/IP соединения, созданного клиентским браузером в направлении сервера, формат файла определяется несколькими документами, которые раздает adobe.com
  • RTSP определяет свой собственный стриминг протокол поверх TCP/IP соединения, которое создает пока неизвестное клиентское приложение в направлении сервера, чем-то похож на HTTP, формат файлов и взаимодействие определяется десятком общедоступных RFC документов. Не предусматривает стандартизованного шифрования потока a-la HTTPS.
  • RTP это общее название связки RTSP и RTCP, первый из которых - стриминг протокол передачи мультимедиа данных от сервера к клиенту, второй - протокол управления сервером от клиента.

Пока все правильно?

RaZEr 21.04.2010 18:57

Цитата:

Сообщение от v_mirgorodsky (Сообщение 1706206)
А еще момент, где бы можно было посмотреть на пример HTML страницы со встроенным апплетом для проигрывания потокового видео в формате SWF

SWF это не видео-формат.

Советую обратиться к услугам профессионалов.

v_mirgorodsky 21.04.2010 19:32

Моя ошибка была связана с не совсем точным формулированием моего вопроса, основанном на информации из спецификации формата SWF:

The Adobe Flash Player 6 and later supports video playback. Video can be provided to Flash Player in the following ways:
  • Embed video within a SWF file by using the SWF video tags.
  • Deliver a video stream over RTMP through the Adobe Flash Media Server, which, as one option, can obtain the video data from an FLV file format file.
  • Load an FLV file directly into Flash Player by using the NetStream.play ActionScript method. This method is only available in Flash Player 7 and later. The SWF and FLV file formats share a common video encoding format.

Естественно, мое приложение сгенерировало бы SWF поток данных со встроенным потоком видео, который и был бы понятен Adobe Flash Player'у. Однако это, похоже, не требуется, поскольку Player способен понимать форматы FLV и F4V, формирование которых гораздо более примитивная задача. Соответственно, вопрос остается открытым. Где бы можно было бы посмотреть простой пример HTML-страницы со встроенным апплетом Adobe Flash Player, который может проигрывать видео в FLV или F4V формате?

P.S. Средний объем страницы на youtube составляет 250 с лишним килобайт абсолютно неформатированного текста :молись: :help: По этой причине и ищется некая подопытная мышка, с которой можно играться и модифицировать под свои нужды :(


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

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.