Hola usuario de nuestra web, encontramos la solución a lo que necesitas, has scroll y la hallarás a continuación.
- Configuración de ejemplo
- Directivas
- hls
- hls_buffers
- hls_forward_args
- hls_fragment
- hls_mp4_buffer_size
- hls_mp4_max_buffer_size
los ngx_http_hls_module
El módulo proporciona compatibilidad con HTTP Live Streaming (HLS) en el lado del servidor para archivos multimedia MP4 y MOV. Estos archivos suelen tener la .mp4
, .m4v
, .m4a
, .mov
, o .qt
extensiones de nombre de archivo. El módulo admite códec de video H.264, códecs de audio AAC y MP3.
Para cada archivo multimedia, se admiten dos URI:
- Un URI de lista de reproducción con el “
.m3u8
”Extensión de nombre de archivo. El URI puede aceptar argumentos opcionales:- “
start
” y “end
”Define los límites de la lista de reproducción en segundos (1.9.0). - “
offset
”Cambia una posición de reproducción inicial a la compensación de tiempo en segundos (1.9.0). Un valor positivo establece un desfase de tiempo desde el principio de la lista de reproducción. Un valor negativo establece un desplazamiento de tiempo desde el final del último fragmento de la lista de reproducción. - “
len
”Define la longitud del fragmento en segundos.
- “
- Un fragmento de URI con el “
.ts
”Extensión de nombre de archivo. El URI puede aceptar argumentos opcionales:- “
start
” y “end
”Define los límites de los fragmentos en segundos.
- “
Este módulo está disponible como parte de nuestro suscripción comercial.
Configuración de ejemplo
location /hls;hls_fragment5s;hls_buffers1010m;hls_mp4_buffer_size1m;hls_mp4_max_buffer_size5m;root /var/video/;
Con esta configuración, los siguientes URI son compatibles con “/var/video/test.mp4
” expediente:
http://hls.example.com/test.mp4.m3u8?offset=1.000&start=1.000&end=2.200 http://hls.example.com/test.mp4.m3u8?len=8.000 http://hls.example.com/test.mp4.ts?start=1.000&end=2.200
Directivas
Sintaxis: | hls; |
---|---|
Defecto: | – |
Contexto: | location |
Activa la transmisión HLS en la ubicación circundante.
Sintaxis: | hls_buffersnumbersize; |
---|---|
Defecto: | hls_buffers 8 2m; |
Contexto: | http , server , location |
Establece el máximo number
y size
de búferes que se utilizan para leer y escribir marcos de datos.
Sintaxis: | hls_forward_args on | off; |
---|---|
Defecto: | hls_forward_args off; |
Contexto: | http , server , location |
Esta directiva apareció en la versión 1.5.12.
Agrega argumentos de una solicitud de lista de reproducción a URI de fragmentos. Esto puede ser útil para realizar la autorización del cliente en el momento de solicitar un fragmento, o cuando se protege un flujo HLS con el ngx_http_secure_link_module módulo.
Por ejemplo, si un cliente solicita una lista de reproducción http://example.com/hls/test.mp4.m3u8?a=1&b=2
, los argumentos a=1
y b=2
se agregará a los URI de los fragmentos después de los argumentos start
y end
:
#EXTM3U#EXT-X-VERSION:3#EXT-X-TARGETDURATION:15#EXT-X-PLAYLIST-TYPE:VOD#EXTINF:9.333, test.mp4.ts?start=0.000&end=9.333&a=1&b=2 #EXTINF:7.167, test.mp4.ts?start=9.333&end=16.500&a=1&b=2 #EXTINF:5.416, test.mp4.ts?start=16.500&end=21.916&a=1&b=2 #EXTINF:5.500, test.mp4.ts?start=21.916&end=27.416&a=1&b=2 #EXTINF:15.167, test.mp4.ts?start=27.416&end=42.583&a=1&b=2 #EXTINF:9.626, test.mp4.ts?start=42.583&end=52.209&a=1&b=2 #EXT-X-ENDLIST
Si una secuencia HLS está protegida con el ngx_http_secure_link_module módulo, $uri
no debe utilizarse en el secure_link_md5 expresión porque esto provocará errores al solicitar los fragmentos. URI base debe usarse en lugar de $uri
($hls_uri
en el ejemplo):
http ... map$uri$hls_uri ~^(?.*).m3u8$ $base_uri; ~^(? .*).ts$ $base_uri;default$uri;server ... location /hls/hls;hls_forward_argson;alias /var/videos/;secure_link$arg_md5,$arg_expires;secure_link_md5"$secure_link_expires$hls_uri$remote_addr secret";if ($secure_link = "")return403;if ($secure_link = "0")return410;
Sintaxis: | hls_fragmenttime; |
---|---|
Defecto: | hls_fragment 5s; |
Contexto: | http , server , location |
Define la longitud predeterminada del fragmento para los URI de lista de reproducción solicitados sin el “len
” argumento.
Sintaxis: | hls_mp4_buffer_sizesize; |
---|---|
Defecto: | hls_mp4_buffer_size 512k; |
Contexto: | http , server , location |
Establece la inicial size
del búfer utilizado para procesar archivos MP4 y MOV.
Sintaxis: | hls_mp4_max_buffer_sizesize; |
---|---|
Defecto: | hls_mp4_max_buffer_size 10m; |
Contexto: | http , server , location |
Durante el procesamiento de metadatos, puede ser necesario un búfer más grande. Su tamaño no puede exceder el especificado size
, de lo contrario, nginx devolverá el error del servidor 500 (Error interno del servidor) y registrará el siguiente mensaje:
"/some/movie/file.mp4" mp4 moov atom is too large: 12583268, you may want to increase hls_mp4_max_buffer_size
Calificaciones y comentarios
Recuerda que tienes la capacidad de añadir una estimación certera .