NDI¶
media.play.ndi
Sirve un stream activo a receptores NDI. La tarifa contabiliza esta capacidad por stream: una fuente anunciada puede servir a varios receptores. La salida requiere el listener del streamer y el permiso de salida NDI del stream.
Transporte¶
NDI High Bandwidth con SpeedHQ, servido por TCP. Use Auto en el receptor. El catálogo compartido del servidor utiliza TCP 5960; los puertos de medios se asignan automáticamente dentro de TCP 5961–6060. Cada fuente anunciada necesita un puerto de medios. El descubrimiento local utiliza mDNS por UDP 5353.
La salida NDI no tiene autenticación. Restrinja el acceso de red a receptores de confianza; no se solicita un token de reproducción. Esta capacidad no proporciona NDI HX ni un push a una dirección de destino preconfigurada.
Preparación de pistas¶
El codificador NDI utiliza pistas raw preparadas de un stream activo:
- Vídeo: la primera pista
v210ouyvy422apta en el orden de MediaInfo. -
Audio: la primera pista apta en uno de estos formatos:
- PCM de 16 bits
- S32P
- FLTP
-
Sin audio: se admite la salida solo de vídeo.
Las pistas comprimidas se omiten. Configure por separado la decodificación de la entrada comprimida y el formato de píxel necesario, como para la salida SDI. Las pistas raw no se combinan y la salida NDI no permite seleccionarlas por número. Un stream existente puede conservar pistas comprimidas para otros receptores y añadir pistas raw aptas.
Configuración¶
Configure los ajustes a través de central. En la configuración actual del clúster, fije el stream a un servidor concreto: asigne al streamer un valor único de labels, ndi-studio-a, y al stream required_ndi-studio-a. Active el listener en ese mismo servidor. Si varios servidores tienen la etiqueta, se permite asignar el stream a cualquiera de ellos. El procedimiento está en la guía de Agora.
Fragmento de la configuración aplicada al streamer con entrada SDI raw:
listeners:
ndi:
bind: 192.168.10.20
port: 5960
ports: {from: 5961, to: 6060}
queue: 4
streams:
- name: conference
inputs:
- sdi:
device: /dev/video0
pixel_format: v210
ndi_output:
quality: 90
Sustituya la dirección y el dispositivo por los suyos. Para una entrada comprimida, prepare las pistas raw con el transcodificador. La conexión de un receptor NDI no inicia un stream detenido.
| Campo | Valor y restricciones |
|---|---|
listeners.ndi |
Omitir la sección desactiva el listener. |
bind |
IP opcional de la interfaz; si se omite, se usan todas las interfaces IPv4. |
port |
Puerto del catálogo, por defecto 5960; debe quedar fuera del rango de medios. |
ports.from, ports.to |
Límites inclusivos de los puertos de medios, por defecto 5961 y 6060. |
queue |
Límite positivo de cola por cliente en imágenes completas, por defecto 4; un par de campos cuenta como una imagen. |
ndi_output |
Omitir la sección desactiva la reproducción NDI de este stream. |
quality |
Calidad SpeedHQ fija de 52 a 99, por defecto 90, sin ajuste adaptativo. |
Permita que los receptores accedan al catálogo y a los puertos de medios. Un puerto de catálogo distinto del predeterminado puede impedir la búsqueda solo por IP en NDI Access Manager.
Reproducción y estado¶
Seleccione nombre-servidor (nombre-stream) en el receptor NDI. El receptor abre la conexión; varios receptores comparten un codificador NDI. El primer espectador inicia el codificador, que se detiene tras 20 segundos sin espectadores. El anuncio y el puerto asignado se mantienen hasta que se desactive la salida.
El estado aparece en ndi_output de las estadísticas del stream. address y viewers indican la dirección del puerto de medios y el número de espectadores admitidos; encoder_running y signal indican el estado del codificador y si se preparó una imagen completa durante el último segundo. error describe los errores de preparación o publicación.
Las conexiones se mantienen si dejan de llegar fotogramas; la salida NDI no genera vídeo negro ni silencio. Prepare una cortinilla mediante la fuente de reserva del stream. La cola limitada de un cliente lento descarta primero imágenes completas; tras 5 segundos de descartes continuos se desconecta a ese cliente. Desactivar ndi_output o el listener cierra inmediatamente las conexiones y retira los anuncios.
Funciones relacionadas¶
- Captura NDI — capacidad independiente
media.ingest.ndi. - Gestión de puertos.
- Asignación y etiquetas.