Форум / Рецепты / Псевдостриминг mp4 в nginx
Ранее в nginx был лишь модуль для проигрывания flv с любого момента времени (т.н. псевдостриминг).
Теперь есть нативный модуль для mp4 и не нужно использовать сторонние решения.
В trunk появился ngx_http_mp4_module. Так же доступен патч
http://nginx.org/patches/patch.mp4.txt
который должен подойти для nginx-1.0 и последних 0.8.
Сборку нужно явно разрешить:
--with-http_mp4_module
Если используется 3rd-party mp4 модуль, то его нужно убрать.
Конфигурация:
location /mp4/ {
mp4;
mp4_buffer_size 1m; # default 512k
mp4_max_moov_size 10m; # default 5m
}

mp4_buffer_size — начальный размер буфера для чтения mp4 файла.
В этом же буфере хранятся целиком все мета-данные mp4 файла (moov атом).
Максимальный размер читаемого moov атома задаётся в mp4_max_moov_size.
Источник на форуме nginx.

Для Uppod достаточно включить стриминг в редакторе стилей (Опции > Стриминг) и указать в качестве отправляемых данных секунды.
uppodСсылка на пост (Смотрели 11442)12.09.11 21:00     Ответить
Ваше имя*
 E-mail* (не публикуется)
 
 
Если пишете о проблеме, то приложите, пожалуйста, ссылку на свой плеер отсюда — Плеер: Файл > Код > Ссылка
Вставка кода — [code][/code] дублировать ответы на e-mail
1
Sibnic 14.11.11 - 09:35
это просто замечательно :)
с 1 раза не поверил когда увидел на офф сайте,
не ужали 3 строчный скрипт уйдет в историю!!!:))
это наряду с обновление ффмпег что он кодит даже с очень сильным сжатием в 6 раз быстрее :)

дед мороз исполнил почти все мои желания за ранее :D
2
Sibnic 04.02.12 - 17:58
кстати 2 момента стоит написать
> В одном локейшине можно использовать flv и mp4 модули?
Нет. Только так:
location ~ \.mp4$ {mp4;root адрес до папки;}
location ~ \.flv$ {flv;root адрес до папки;}

и
Директива mp4_max_moov_size переименована в mp4_max_buffer_size.
3
Евгений 12.03.12 - 17:11
с нативным mp4 модулем столкнулся с проблемой: при старте начинается загрузка, видео не показывает, оба указателя времени (текущее и длительность) показывают по нулям, загрузка может продолжаться до самого конца, нажимаешь где-то в середине таймлайна (но в место, где еще не загружено видео), время резко определяется, начинается загрузка СНАЧАЛА, видео показывает с начала.. нажимаешь еще раз в то же место, и только тогда видео стартует с указанной позиции!
nginx 1.1.16, uppod 1.0.5

после компиляции со сторонним модулем nginx_mod_h264_streaming-2.2.7 и без http_mp4_module проблема разрешилась
Сообщить об ошибке на сайте
 Uppod © 2008–2020
Сообщить об ошибке на сайте
Если ошибка относится к плееру, а не сайту, либо Вы хотите получить ответ на вопрос —
лучше написать на форуме