VOD#

O módulo permite reempacotar arquivos MP4 para streaming via HLS, HDS, MSS e DASH.

Instalação#

Para instalar o módulo, use um dos seguintes pacotes:

  • Angie: angie-module-vod

  • Angie PRO: angie-pro-module-vod

Modos de Operação#

  • Local: serve arquivos disponíveis localmente (disco local ou NFS conectado).

  • Remoto: serve arquivos disponíveis via protocolo HTTP usando requisições de intervalo.

  • Mapeado: serve arquivos de acordo com a especificação codificada em formato JSON (JSON pode ser obtido de um servidor remoto ou lido de um arquivo local).

Codecs Suportados#

  • Codecs de Vídeo: H264, H265 (DASH/HLS), AV1 (DASH/HLS), VP8 (DASH), VP9 (DASH).

  • Codecs de Áudio: AAC, MP3 (HLS/HDS/MSS), AC-3 (DASH/HLS), E-AC-3 (DASH/HLS), VORBIS (DASH), OPUS (DASH), FLAC (HLS), DTS (HLS).

Carregando o Módulo#

Conectando o módulo no contexto de main{}:

load_module modules/ngx_http_vod_module.so;

Exemplo de Configuração#

location ~ ^/cenchls/p/\d+/(sp/\d+/)?serveFlavor/entryId/([^/]+)/(.*) {
    vod hls;
    vod_hls_encryption_method sample-aes-cenc;
    vod_hls_encryption_key_format "urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed";
    vod_hls_encryption_key_format_versions "1";

    vod_drm_enabled on;
    vod_drm_request_uri "/udrm/system/ovp/$vod_suburi";

    vod_last_modified_types *;
    add_header Access-Control-Allow-Headers '*';
    add_header Access-Control-Expose-Headers 'Server,range,Content-Length,Content-Range';
    add_header Access-Control-Allow-Methods 'GET, HEAD, OPTIONS';
    add_header Access-Control-Allow-Origin '*';
    expires 100d;
}

Informações Adicionais#

Documentação detalhada e código-fonte estão disponíveis em: kaltura/nginx-vod-module.