Campos de entrada y salida por transporte

Una referencia de los campos de la ventana «Editor de entrada y salida» (Editor de entrada y salida): qué define cada campo, qué valores admite y en qué se diferencian la entrada y la salida de un mismo transporte. Los campos comunes a todos los transportes y las técnicas de trabajo con la ventana se describen en esta página; los campos de cada transporte, en las páginas siguientes. La elección del protocolo de transmisión y la planificación del enlace se describen en Planificación y protocolos de transmisión de datos, y el procesamiento del flujo en el nodo, en Streamer: detalles de implementación.

Los rótulos de los campos propios del transporte la interfaz no los traduce: son designaciones técnicas y en cualquier idioma se muestran en inglés. Aquí se reproducen igual que en la ventana, junto con la unidad de medida que la interfaz añade al rótulo: «Latency (ms)», «Client timeout (s)». Hay una única excepción: el usuario y la contraseña de las entradas PS1 y SRT, que dibuja un bloque de autorización aparte, donde los rótulos «Usuario» y «Contraseña» sí están traducidos.

El conjunto de campos depende ante todo del tipo de transporte y del sentido: en un mismo transporte, la entrada y la salida son conjuntos distintos, por lo que más abajo se describen por separado incluso allí donde los rótulos coinciden. Además, parte de los campos aparece y desaparece según las circunstancias: según si el flujo es SPTS o MPTS, según el modo listener o caller, según el decodificador elegido y según si está activada la asignación automática de PID.

El número de pestañas de la ventana también varía. Una entrada tiene siempre al menos dos — «Propiedades» y «MPEG-TS PID» — y las entradas UDP, RTP, Pro-MPEG, PS1, SRT, RIST y TCP, así como las entradas file, pipe y std, reciben una tercera, «BISS». Una salida tiene una sola pestaña, «Propiedades»; la excepción es la salida multiplexor, que tiene también «MPEG-TS PID» (Multiplexor (muxer)). Cuando hay una sola pestaña, la barra de pestañas no se muestra en absoluto.

El tipo de transporte se define en el campo «Tipo», en la parte superior de la ventana: al crear es una lista de los transportes disponibles; al modificar, un campo no editable, porque el tipo no se puede cambiar (para cambiar de transporte, el punto se recrea). Cambiar el tipo en el formulario de creación borra todos los campos de transporte rellenados: solo se conservan la nota, el indicador de pausa y los campos del catálogo del dominio.

Campos comunes

El campo Note existe en una entrada y una salida de cualquier tipo; en la ventana está el último, tras un separador.

Campo

Función

Valores

Note

Una nota libre: la finalidad del punto, el responsable, el número de solicitud. Visible en las listas de entradas y salidas y en la fila desplegada del flujo.

una cadena, vacía por defecto

La pausa no se configura en esta ventana, aunque la entrada y la salida sí tienen indicador de pausa: lo controla el botón de pausa en la fila de la lista de entradas y salidas. Conviene saberlo al crear: las entradas y salidas recién creadas se crean en pausa y, tras guardar, se activan desde la lista. El orden de las entradas, que define la prioridad de reserva, tampoco se edita aquí: se cambia arrastrando las filas (Redundancia de fuentes y distribución).

Se añaden otros dos campos solo en los transportes que entran en el catálogo común de recursos del dominio (UDP, RTP, Pro-MPEG, RIST, PS1 y SRT; Catálogo común de recursos); en la ventana forman un grupo aparte:

Campo

Función

Valores

Peer note (meshwork library)

Una marca de este punto en el catálogo del dominio: por ella un nodo vecino entiende qué recurso está viendo.

una cadena, vacía por defecto

Peer private

No anunciar el punto en el catálogo del dominio. El punto sigue funcionando, pero los nodos vecinos no lo ven y no aparece en la ventana «Biblioteca: este flujo» (Biblioteca — este flujo).

desactivado por defecto

La presencia de estos dos campos no significa aún que el punto vaya a entrar en el catálogo. Las reglas son estas: una salida se anuncia siempre, tanto en multicast como en unicast; una entrada UDP, RTP o RIST, solo cuando su dirección es un grupo multicast; las entradas PS1 y SRT se anuncian siempre, mientras que una entrada Pro-MPEG no se anuncia en absoluto, aunque tenga los campos (Catálogo común de recursos).

Campos comunes de la entrada

La entrada tiene además un grupo de ajustes de sincronización: no corresponde al transporte, sino al procesamiento del flujo en el nodo, y por eso es igual para todos los tipos. La composición del grupo depende del tipo de flujo: en la entrada de un flujo SPTS son los tres campos; en la de un flujo MPTS, solo el último.

Campo

Función

Valores

Auto jitter buffer

Selección automática del tamaño del búfer según el tipo de entrada (Sincronización).

activado por defecto; en el formulario de creación se muestra desactivado

Jitter buffer (ms)

El tamaño del búfer definido a mano: actúa cuando la selección automática está desactivada.

desde 10, por defecto 500

PCR discontinuity window (ms)

La ventana dentro de la cual un salto de PCR se considera admisible; un salto mayor provoca una resincronización dura. En un flujo MPTS, la misma ventana se aplica a cada programa del multiplex (Análisis por programas).

desde 100, por defecto 1000

La selección y el remapeo de PID, así como las claves BISS, se definen en pestañas aparte de la misma ventana y se describen en Editor de entrada y salida.

Campos obligatorios y comprobación de valores

Parte de los campos es obligatoria: sin ellos el nodo no podrá establecer la conexión. Mientras un campo así esté vacío, el botón de guardar no está disponible y bajo el propio campo aparece el mensaje «El campo <rótulo> es obligatorio». El mensaje se muestra solo tras el primer cambio del formulario, por lo que un formulario recién abierto parece limpio aunque el guardado ya esté bloqueado. Qué campos son obligatorios se indica en las páginas de los transportes.

Las demás comprobaciones se realizan a medida que se escribe y bloquean el guardado igualmente:

Mensaje

Cuándo aparece

«Mínimo N», «Máximo N»

Un número fuera del rango admitido del campo.

«Debe ser 0 o 32–8190»

Un PID fuera del conjunto admitido: los valores 1–31 están reservados y 8191 es el PID nulo. Cero significa «como en el flujo de entrada».

«Debe tener N–M bytes»

Una frase de contraseña de longitud no admitida. La longitud se cuenta en bytes, no en caracteres: una letra cirílica ocupa dos bytes.

«Debe empezar por <esquema>»

La dirección de una entrada HLS se introdujo sin el esquema http:// o https://, o con otro esquema. Es el único campo de la ventana con esa comprobación; en los demás transportes el esquema lo comprueba solo el nodo.

Una frase de contraseña vacía no se considera un error: es la ausencia de cifrado. Un valor fraccionario no se puede introducir en absoluto en un campo entero: el campo no lo acepta.

Las comprobaciones de la ventana repiten las restricciones del nodo, pero no las sustituyen. La longitud de los campos de texto y la unicidad de los números — por ejemplo, del número de programa en un multiplex — las comprueba solo el nodo. Además, la comprobación de rango no se realiza en todos los campos numéricos: un campo sin valor por defecto reposa en cero y la ventana no lo resalta; un valor demasiado pequeño en un campo así solo lo advertirá el nodo.

Las listas emparejadas de la ventana no se pueden descuadrar: tanto el remapeo de PID como los idiomas de las pistas y los peers RIST se editan por filas, y una fila se añade entera.

La ventana no oculta un rechazo del nodo: permanece abierta con el formulario relleno y arriba aparece una franja con el mensaje del nodo, tal cual, en inglés, ya que es el texto del propio nodo y no de la interfaz. Los valores introducidos no se pierden.

Otra diferencia entre crear y modificar conviene tenerla presente al leer la columna «Valores». En el formulario de creación parte de los valores ya está puesta — los que más abajo se llaman valor del formulario o valor por defecto — y se guardan junto con los demás. Los otros campos el formulario los deja vacíos o a cero, y el nodo les aplica por su cuenta sus propios valores. Al modificar un punto existente, un campo que nunca se ha definido tiene el mismo aspecto: vacío, aunque el nodo le aplique un valor por defecto.

Técnicas de trabajo con los campos

Pegar URL. El botón analiza un enlace del portapapeles y lo reparte entre los campos de dirección y puerto. No es obligatorio indicar el esquema — basta con dirección:puerto —, pero si se indica, debe corresponder al transporte: udp:// para UDP, rtp:// o udp:// para RTP, prompeg://, rtp:// o udp:// para Pro-MPEG, tcp:// para TCP, ps1:// para PS1 y srt:// para SRT. Cuando en el portapapeles no hay nada adecuado, el botón no está disponible y aclara: «En el portapapeles no hay una dirección adecuada para pegar».

El botón existe solo donde el punto tiene un par «dirección y puerto»: en las entradas UDP, RTP, Pro-MPEG, TCP, PS1 y SRT y en las salidas UDP, RTP, Pro-MPEG y SRT. La salida PS1 no lo tiene — solo escucha un puerto —, como tampoco los transportes en los que la dirección se define de otro modo (RIST, HLS, RTSP, RTMP, archivo).

Si el navegador no permite leer el portapapeles, el botón se limita a poner el cursor en el campo de dirección: un enlace pegado a mano se repartirá igualmente entre los dos campos. Esto funciona también sin el botón: basta con pegar dirección:puerto directamente en el campo de dirección.

Elegir de la biblioteca… El botón abre el catálogo de recursos del dominio en la propia ventana y rellena la dirección de la fuente elegida sin escribirla a mano (Fuentes de la biblioteca). Existe solo en las entradas UDP, RTP, Pro-MPEG, PS1 y SRT. Para PS1 y SRT se rellena la dirección del peer por la que este es accesible, y en el caso de un vecino del propio dominio se activa además el inicio de sesión automático de Meshwork y se borran el usuario y la contraseña.

Buscar un puerto libre. La selección automática está prevista en la salida PS1 y en SRT en modo listener: el campo de puerto puede dejarse a cero — la indicación es «0 = auto» — y el nodo elegirá un puerto libre al guardar, mientras que el botón contiguo lo elige de inmediato. Si no se encontraron puertos libres o la petición falló, la ventana lo comunica y el guardado no se realiza. En los demás puntos el puerto se introduce a mano, incluso allí donde el nodo lo ocupa por sí mismo, por ejemplo en las entradas UDP.

Un campo con selección automática tiene además una comprobación blanda: si al modificar un punto ya creado se introduce un puerto distinto del guardado y resulta estar ocupado, bajo el campo aparece la advertencia «Puede que este puerto ya esté en uso en este nodo». No bloquea el guardado.

Contraseñas y usuarios. Los campos de frases de contraseña y contraseñas se muestran ocultos; el botón «Mostrar contraseña» revela el valor introducido. Los usuarios, en cambio, los recuerda el navegador tras un guardado correcto y los ofrece en la siguiente entrada, en una lista común para todos los transportes, de modo que un usuario introducido una vez para RTSP se ofrecerá también en una entrada SRT. Las contraseñas no se recuerdan nunca.

Cierre de la ventana. Si se ha cambiado algo en el formulario, «Cancelar», Esc y «✕» piden confirmar el descarte de los cambios; una ventana intacta se cierra de inmediato.