Los desarrolladores de aplicaciones y servicios de terceros pueden aprovechar las potentes funciones de reproducción de vídeo de Infuse para reproducir, marcar como favorito, descargar y supervisar el estado de la reproducción mediante esquemas de URL flexibles. También es compatible con x-callback , que permite volver a otra aplicación una vez finalizada una acción.
Plataformas disponibles: iPhone, iPad, Apple TV, Mac y Vision
Versión de Infuse: 8.4.7 (o posterior)
Envío de vídeos a Infuse para su reproducción
Reproducir uno o varios vídeos y volver a otra aplicación al terminar
infuse://x-callback-url/play?url=https://files.firecore.com/infuse/sample-5s-360p.mp4&
position=0&
filename=Inception-2010.mp4&
sub=https://files.firecore.com/infuse/example.srt&
url=https://files.firecore.com/infuse/mov_bbb.mp4&
position=6&
filename=Mad-Men-S01-E01.mp4&
sub=https://files.firecore.com/infuse/example2.srt&
x-success=some-app://success&
x-error=some-app://errorInformes de éxito y error
x-success
some-app://success?lastPlayedUrl=https://files.firecore.com/infuse/mov_bbb.mp4& position=8
x-error
some-app://error?errorCode=100& errorMessage=Unsupported%20content& failedUrl=invalid_url1& failedUrl=invalid_url2
Notas
- Admite entradas de url únicas o múltiples
- Los parámetros de subtítulo, nombre de archivo y posición son opcionales
- Especificar un nombre de archivo puede ayudar a proporcionar metadatos precisos cuando se utiliza uno de los estilos de denominación de archivos recomendados
- Si se especifica un valor de posición (expresado como un número entero de segundos), el vídeo comenzará o se reanudará desde la posición indicada
- Todas las URL se reproducen secuencialmente como una lista de reproducción temporal
- x-success no se invoca para cada URL de la lista, sino una sola vez, cuando finaliza la reproducción de la lista de reproducción o cuando se cierra el reproductor. Devuelve la última URL + la posición (en segundos).
- x-error se llama una vez y devuelve URLs fallidas (inválidas o errores de reproducción)
Guardar enlaces en Infuse para su reproducción y/o descarga
Guardar (marcar) una o varias URL de vídeo para reproducirlas más tarde
infuse://x-callback-url/save? url=https://files.firecore.com/infuse/sample-5s-360p.mp4& filename=Inception-2010.mp4& sub=https://files.firecore.com/infuse/example1.srt& url=https://files.firecore.com/infuse/mov_bbb.mp4& filename=Mad-Men-S01-E01.mp4& sub=https://files.firecore.com/infuse/example2.srt& download=0& x-success=some-app://success& x-error=some-app://error
Informes de éxito y error
x-success
some-app://success
x-error
some-app://error?errorCode=100& errorMessage=Unsupported%20content& failedUrl=invalid_url1& failedUrl=invalid_url2
Notas
- Admite entradas de url únicas o múltiples
- Los parámetros de subtítulo y nombre de archivo son opcionales
- Especificar un nombre de archivo puede ayudar a proporcionar metadatos precisos cuando se utiliza uno de los estilos de denominación de archivos recomendados
- El parámetro de descarga puede utilizarse para iniciar la descarga de archivos para su reproducción sin conexión (0=sólo guardar enlace, 1=guardar enlace y descargar)
- El parámetro de descarga se aplica a toda la solicitud
- x-success no tiene parámetros
- x-error se invoca una vez y devuelve URLs fallidas (EG enlaces inválidos)
Codificación URL
Según la especificación x-callback-url, todos los valores de la cadena de consulta deben ser url-safe o estar codificados. Las URL sin codificar pueden funcionar en algunos casos, pero cuando utilice acciones con varios parámetros o URL con varias claves probablemente tendrá que codificar manualmente sus URL.
Ejemplos
URL sin codificar
http://192.168.162.100/Movies/movie.mkvURL codificada
http%3A%2F%2F192.168.162.100%2FMovies%2Fmovie.mkvEnlaces profundos a elementos de la biblioteca Infuse
Las aplicaciones pueden enlazarse directamente a elementos de la biblioteca Infuse utilizando los números de ID de TMDB correspondientes. Nota: Si un título no está presente en la biblioteca, se mostrará una página de marcador de posición con datos de la TMDB.
Enlace a una película
infuse://movie/{tmdb_id}Enlace a una serie de televisión
infuse://series/{tmdb_id}Enlace a una temporada de una serie de televisión
infuse://series/{tmdb_id}-{season_number}Enlace a un episodio de una serie de televisión
infuse://series/{tmdb_id}-{season_number}-{episode_number}Opcional
Añade el parámetro «play» al final de un enlace directo para iniciar automáticamente la reproducción del elemento de la biblioteca al que apunta el enlace.
Ejemplo
infuse://movie/1327819?playEstado de reproducción actual
Infuse puede publicar un servicio «Ahora en reproducción» de solo lectura en la red local, lo que permite a otras aplicaciones ver qué se está reproduciendo en ese momento, independientemente de la fuente (NAS, Plex, Jellyfin, etc.). Esto permite que otras aplicaciones o servicios de terceros puedan consultar información sobre lo que se está reproduciendo en Infuse en un momento dado.
Nota: Esta función está desactivada por defecto, pero se puede activar en Infuse > Configuración > Reproducción > API «Ahora en reproducción». Requiere Infuse 8.5.9 o una versión posterior.
Descubrimiento
| Especificaciones | Valor |
|---|---|
| Tipo de servicio | _infuse-np._tcp |
| Dominio | local. |
| Nombre de la instancia | Infuse (nombre del dispositivo) |
| Puerto | efímero: siempre se lee del registro SRV |
Punto final
GET /nowplaying
HTTP/1.1, unencrypted, Connection: close
200 + JSON body; 400 malformed request; 404 any other method/path
Campos de respuesta
| Campo | Descripción |
|---|---|
| state | en reproducción, en pausa o inactivo (no se está reproduciendo nada) |
| positionSeconds | Posición actual de reproducción, en segundos |
| durationSeconds | Duración total, en segundos |
| item | Detalles del elemento de reproducción; nulo cuando el estado es «inactivo» |
Ejemplo
{
"state": "playing" | "paused" | "idle",
"positionSeconds": double | null,
"durationSeconds": double | null,
"item": {
"kind": "movie" | "episode",
"tmdbID": string | null,
"imdbID": string | null,
"tvdbID": string | null,
"season": int | null,
"episode": int | null,
"title": string | null,
"seriesTitle": string | null
} | null
}Campos del artículo
| Campo | Descripción |
|---|---|
| kind | película o episodio |
| tmdbID | ID de TMDB: ID de película para las películas e ID de serie para los episodios |
| imdbID | ID de IMDb (por ejemplo, «tt0133093»), cuando esté disponible |
| tvdbID | ID de TVDB, cuando esté disponible |
| season / episode | Números de temporada y de episodio (episodios) |
| title | Título: se utiliza el nombre del archivo como título por defecto para los elementos no identificados |
| seriesTitle | Título de la serie (solo episodios) |