Ir al contenido

Streams API

En la interfaz de Astra, puedes gestionar las configuraciones de Stream y controlar su estado utilizando métodos HTTP API.

{
"id": "...",
"name": "...",
"type": "...",
"enable": true,
"input": [
""
]
}
  • name - nombre del stream
  • type - tipo de stream spts o mpts
  • enable - true si el stream está habilitado
  • input - lista de entradas del stream
  • otras opciones dependen de la configuración del stream.

Solicitud: GET /api/stream-info/{id}

  • id - identificador único del stream

La respuesta será un JSON con la configuración del stream

Solicitud: POST /control/

{
"id": "...",
"cmd": "set-stream",
"stream": { ... }
}
  • id - identificador único del stream
  • stream - configuración del stream

Encender o apagar el stream. Solicitud: POST /control/

{
"cmd": "toggle-stream",
"id": "..."
}
  • id - identificador único del stream

Solicitud: POST /control/

{
"cmd": "restart-stream",
"id": "..."
}
  • id - identificador único del stream

Elegir la entrada activa. Funciona solo para streams con los siguientes tipos de respaldo: passive o disable. Solicitud: POST /control/

{
"cmd": "set-stream-input",
"id": "...",
"input": "..."
}
  • id - identificador único del stream
  • input – número de entrada. La numeración comienza desde 1. Si la opción no está definida, se iniciará la siguiente entrada después de la entrada activa

Solicitud: POST /control/

{
"cmd": "set-stream",
"id": "...",
"stream": {
"remove": true
}
}
  • id - identificador único del stream

Solicitud: GET /api/stream-status/{id}

  • id - identificador único del stream

Parámetros de consulta opcionales: GET /api/stream-status/{id}?t={time}

  • time - por defecto es 1 - estadísticas del último minuto. 0 - estadísticas del último segundo (estado actual del stream).

Respuesta:

{
"timestamp": 0,
"instance": "...",
"name": "...",
"input_id": 1,
"active": true,
"onair": true,
"sessions": 0,
"bitrate": 0,
"packets": 0,
"pes_error": 0,
"sc_error": 0,
"cc_error": 0,
"video_count": 1,
"audio_count": 1
}
  • timestamp - hora del reporte, para t=0 es la hora actual
  • instance - nombre de la instancia si está definido en Configuración → General → Nombre de la instancia
  • name - nombre del stream
  • input_id - identificador de la entrada activa. Por ejemplo, si la principal funciona bien será 1. Si el stream cambia a la entrada de respaldo, será el número de esa entrada
  • active - true si el stream está activo, o false si el stream funciona bajo demanda y está inactivo
  • onair - true si la entrada activa funciona sin errores
  • sessions - número de sesiones activas en el stream
  • bitrate - bitrate del stream en Kbit/s
  • pes_error - número de paquetes PES inválidos
  • sc_error - número de paquetes TS encriptados. Si el stream está protegido con Conditional Access System (CAS), entonces sc_error y pes_error serán mayores que 0. Si el stream se desencripta con una clave inválida, entonces sc_error será igual a 0 y pes_error será mayor que 0
  • cc_error - contador de errores CC. Un error CC puede ser causado por pérdida o exceso de paquetes
  • video_count - número de streams de video
  • audio_count - número de streams de audio