Mercurial > hg > nginx-site
changeset 87:f5539fb36bbb
Russian translation of ngx_http_mp4_module.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Fri, 14 Oct 2011 08:45:37 +0000 |
parents | 341dc6392e8a |
children | 6876e2558d09 |
files | xml/ru/GNUmakefile xml/ru/docs/http/ngx_http_mp4_module.xml xml/ru/docs/index.xml xml/ru/index.xml |
diffstat | 4 files changed, 167 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/xml/ru/GNUmakefile Thu Oct 13 12:40:16 2011 +0000 +++ b/xml/ru/GNUmakefile Fri Oct 14 08:45:37 2011 +0000 @@ -33,6 +33,7 @@ ru/docs/http/ngx_http_log_module \ ru/docs/http/ngx_http_map_module \ ru/docs/http/ngx_http_memcached_module \ + ru/docs/http/ngx_http_mp4_module \ ru/docs/http/ngx_http_perl_module \ ru/docs/http/ngx_http_proxy_module \ ru/docs/http/ngx_http_random_index_module \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/xml/ru/docs/http/ngx_http_mp4_module.xml Fri Oct 14 08:45:37 2011 +0000 @@ -0,0 +1,161 @@ +<?xml version="1.0"?> + +<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> + +<module name="Модуль ngx_http_mp4_module" + link="/ru/docs/http/ngx_http_mp4_module.html" + lang="ru"> + +<section name="Обзор"> + +<para> +Модуль <code>ngx_http_mp4_module</code> обеспечивает серверную поддержку +псевдо-стриминга для файлов в формате H.264/AAC. Такие файлы обычно +имеют расширения +<pathname>.mp4</pathname>, <pathname>.m4v</pathname> +и <pathname>.m4a</pathname>. +</para> + +<para> +Псевдо-стриминг работает в паре с совместимым Flash-плеером. +Плеер посылает серверу HTTP-запрос с указанием точки времени старта +в аргументе +<parameter>start</parameter> +строки запроса (время задаётся в секундах), а сервер в +ответ посылает поток, у которого начальная позиция соответствует +запрошенному времени, например: +<example> +http://example.com/elephants_dream.mp4?start=238.88 +</example> +Это позволяет в любой момент времени выполнить произвольное +позиционирование, а также начать воспроизведение с середины +временной шкалы. +</para> + +<para> +В форматах, основанных на H.264, метаданные, необходимые для поддержки +позиционирования, хранятся в так называемом “moov атоме.” +Это часть файла, которая содержит индексную информацию для всего файла. +</para> + +<para> +До начала воспроизведения плееру необходимо прочитать метаданные. +Для этого он отсылает специальный запрос с аргументом +<parameter>start=0</parameter>. +Многие кодирующие программы добавляют метаданные в конец файла. +Для псевдо-стриминга это плохо: метаданные должны быть расположены +в начале файла, иначе потребуется загрузить файл целиком, прежде +чем начать воспроизведение. Если файл отформатирован хорошо, +с метаданными в начале файла, nginx просто посылает в ответ +содержимое файла. В противном случае, он вынужден будет прочитать +файл и подготовить новый поток, в котором метаданные предшествуют +медийным данным. Это требует дополнительного процессорного +времени, памяти и дискового ввода/вывода, поэтому лучше +<link +url="http://flowplayer.org/plugins/streaming/pseudostreaming.html#prepare"> +подготовить исходный файл для псевдо-стриминга</link>, +нежели чем заставлять nginx делать это для каждого запроса. +</para> + +<para> +Для запроса с ненулевым аргументом +<parameter>start</parameter> +nginx считывает из файла метаданные, готовит поток с запрошенного +смещения, и отправляет его клиенту. +Это тоже требует дополнительных ресурсов, как указано выше. +</para> + +<para> +Если запрос, обрабатываемый этим модулем, не содержит аргумента +<parameter>start</parameter>, +дополнительные ресурсы не тратятся, а файл отсылается просто как +статический ресурс. +Некоторые плееры также поддерживают запросы с указанием диапазона +запрашиваемых байт (byte-range requests), для них вообще не +требуется этот модуль. +</para> + +<para> +По умолчанию этот модуль не собирается, его сборку необходимо +разрешить с помощью конфигурационного параметра +<code>--with-http_mp4_module</code>. +<note> +Если вы ранее использовали сторонний модуль mp4, не забудьте его отключить. +</note> +</para> + +<para> +Схожая поддержка псевдо-стриминга для FLV-файлов обеспечивается модулем +<link doc="ngx_http_flv_module.xml">ngx_http_flv_module</link>. +</para> + +</section> + + +<section id="example" name="Пример конфигурации"> + +<para> +<example> +location /video/ { + mp4; + mp4_buffer_size 1m; + mp4_max_buffer_size 5m; +} +</example> +</para> + +</section> + + +<section id="directives" name="Директивы"> + +<directive name="mp4"> +<syntax>mp4</syntax> +<default/> +<context>location</context> + +<para> +Включает в содержащем location обработку этим модулем. +</para> + +</directive> + + +<directive name="mp4_buffer_size"> +<syntax>mp4_buffer_size <argument>размер</argument></syntax> +<default>mp4_buffer_size 512K</default> +<context>http</context> +<context>server</context> +<context>location</context> + +<para> +Задаёт начальный размер буфера памяти, используемого при обработке MP4 файлов. +</para> + +</directive> + + +<directive name="mp4_max_buffer_size"> +<syntax>mp4_max_buffer_size <argument>размер</argument></syntax> +<default>mp4_max_buffer_size 10M</default> +<context>http</context> +<context>server</context> +<context>location</context> + +<para> +В процессе обработки метаданных может понадобиться буфер большего размера. +Его размер не может превышать указанного, +иначе nginx возвращает серверную ошибку +<http-status code="500" text="Internal Server Error"/> +и протоколирует следующее: +<example> +"/some/movie/file.mp4" mp4 moov atom is too large: +12583268, you may want to increase mp4_max_buffer_size +</example> +</para> + +</directive> + +</section> + +</module>
--- a/xml/ru/docs/index.xml Thu Oct 13 12:40:16 2011 +0000 +++ b/xml/ru/docs/index.xml Fri Oct 14 08:45:37 2011 +0000 @@ -207,14 +207,11 @@ ngx_http_memcached_module</a> </item> -<!-- - <item> -<a href="/ru/docs/http/ngx_http_mp4_module.xml" /> +<a href="/ru/docs/http/ngx_http_mp4_module.xml"> +ngx_http_mp4_module</a> </item> ---> - <item> <a href="/ru/docs/http/ngx_http_perl_module.xml"> ngx_http_perl_module</a>
--- a/xml/ru/index.xml Thu Oct 13 12:40:16 2011 +0000 +++ b/xml/ru/index.xml Fri Oct 14 08:45:37 2011 +0000 @@ -150,7 +150,9 @@ </item> <item> -<a href="/ru/docs/http/ngx_http_flv_module.html">FLV streaming</a>; +<a href="/ru/docs/http/ngx_http_flv_module.xml">FLV</a> +и +<a href="/ru/docs/http/ngx_http_mp4_module.xml">MP4</a> стриминг; </item> <item>