Video Preudo Streaming

Добрый день.

Поручили мне тут задачку: «хотим просмотр видео на веб-сайте, но чтобы можно было переходить на еще не загруженный отрывок, стримминговый сервер ставить не хотим, ну там все просто».

Стоит заметить, я внутрь флеша никогда в жизни не смотрел.

Гугление показало, что можно сделать подобный эффект с помощью Range-запросов. Однако ничего конкретного не нашел. Подскажите примеры, кусочки кода, другие источники по этмоу вопросу.

Спасибо.
  • Вопрос задан
  • 3214 просмотров
Пригласить эксперта
Ответы на вопрос 4
hayk
@hayk
У nginx есть два модуля псевдостримминга: HTTP MP4 module и HTTP FLV module. Там же написано как все работает.
Плюс небольшое руководство по псевдостриммингку на сайте flowplayer.
Ответ написан
Комментировать
AotD
@AotD
PHP, Redis, Postgresql
flv модуль в nginx, насколько помню уже входит по умолчанию.
Всё элементарное просто: плеер с включенным модулем псевдостриминга при перематывании отправляет запрос с точкой старта, сервер отдает новый файл с необходимыми щаголовками ровно с того места которое заказывали.

Для flowplayer'a конфигурация проста до безобразия:
<script src="flowplayer.min.js"></script>
<div id="player" style="width:560px;height:420px;display:block;"></div>

var player = $f("player", "<?=skin_url()?>player/player.swf", {
	clip: {
		url: urlencode("<?=$video_url['url']?>"),
		extension: "flv",
		provider: 'lighttpd'
	},
	plugins: {
		lighttpd: {url: 'pseudostreaming.swf', queryString: escape('&<?=$video_url['position_marker']?>=${start}')},
		controls: {url: 'ctrls.swf'}
	}
});
</script>
Ответ написан
alexxxst
@alexxxst
Выше уже все написали. Не забудьте подготовить ваши flv-файлы с помощью программы flvtool2 или flvmeta, чтобы все работало так, как вы ожидали :)
Ответ написан
IonDen
@IonDen
JavaScript developer. IonDen.com
Еще кое-что узнать можно тут: h264.code-shop.com/trac
Вот демка: h264-demo.code-shop.com/demo/apache/testlist.html
В коде плеера это выглядит примерно так, к урл видео добавляется запрос my_video.mp4?start=100
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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