Link multimediali
Frame.io conserva ed elabora i file caricati sui progetti, tra cui immagini, video, PDF e altro ancora. Quando recuperi un file tramite l’API, la risposta di base include metadati essenziali come nome del file, stato e view_url per aprirlo nell’app Frame.io. Per accedere al contenuto effettivo del file (originale, anteprima o rappresentazioni di qualità diversa), devi usare includes. Questa guida spiega quali sono le inclusioni disponibili dei link multimediali negli endpoint List Files e Get File, cosa restituisce ciascuno e quando utilizzarli.
Cosa sono le inclusioni?
Le inclusioni (includes) sono campi facoltativi che puoi richiedere insieme a una risposta del file. Per impostazione predefinita, l’API restituisce solo i metadati essenziali del file: nome, stato, tipo, marca temporale e view_url. Le inclusioni ti permettono di scegliere dati aggiuntivi, semplificando le risposte se non hai bisogno di tutte le informazioni.
Come aggiungere le inclusioni
Passa un elenco separato da virgole di nomi di inclusioni come parametro di richiesta include in qualsiasi richiesta Get File o List Files:
Le inclusioni funzionano allo stesso modo sia sull’endpoint per singolo file che su quello di elenco. Se utilizzate su List Files, le inclusioni vengono risolte per ogni file nella risposta.
Esempi SDK
Le inclusioni non richieste vengono omesse completamente dalla risposta.
Panoramica delle inclusioni dei link multimediali
Il file originale caricato, esattamente come è stato caricato
Un’immagine di anteprima PNG per scopi di visualizzazione
La migliore rappresentazione elaborata disponibile
La rappresentazione più piccola disponibile per casi d’uso con larghezza di banda ridotta
Una transcodifica video H264 a bassa risoluzione 180p per lo streaming e la riproduzione
Un foglio sprite WebP di miniature di fotogrammi video per creare un’interfaccia a scorrimento
media_links.original
Restituisce URL firmati che puntano al file originale esattamente come è stato caricato, senza elaborazione e senza conversione.
Campi
Quando utilizzarlo
Utilizza media_links.original quando hai bisogno del file di origine, ad esempio per permettere a un utente di scaricare il file MOV, MP4, MXF, AVI, PSD, PNG o TIFF originale oppure per passare i byte originali a un altro sistema.
Richiesta di esempio
Risposta di esempio
Questi URL sono URL S3 firmati temporanei (scadono). Non memorizzarli nella cache e non archiviarli; richiedi un URL nuovo ogni volta che ne hai bisogno.
media_links.thumbnail
Restituisce un’immagine di anteprima PNG della risorsa, limitata a 540px di altezza. Questa è una rappresentazione elaborata (non il file originale) e le filigrane possono essere applicate a seconda delle impostazioni dell’account.
Campi
Quando utilizzarlo
Usa media_links.thumbnail quando devi mostrare un’anteprima visiva della risorsa, ad esempio in una vista a griglia, una galleria o un selettore di file. Si carica più velocemente dell’originale ed è sempre in formato PNG compatibile con il web.
Richiesta di esempio
Risposta di esempio
media_links.high_quality
Restituisce un URL di download per la migliore rappresentazione elaborata disponibile della risorsa. Frame.io elabora i caricamenti attraverso una scala di risoluzione che arriva fino a 2160p. L’API restituisce la rappresentazione più alta disponibile al momento della richiesta. Se, perciò, l’elaborazione è terminata solo per una rappresentazione a 540p quando fai la richiesta, l’API restituisce 540p fino a quando non sono pronte delle rappresentazioni superiori.
Campi
Quando utilizzarlo
Usa media_links.high_quality quando desideri la versione di qualità migliore senza aver bisogno dell’originale, ad esempio esportando una rappresentazione ad alta risoluzione per l’elaborazione a valle o presentando un’anteprima con risoluzione completa. Se hai bisogno della qualità più alta possibile, controlla il campo status del file e richiedi questa inclusione una volta che il file è pronto (ready), in modo da assicurarti che la scala di risoluzione completa sia stata elaborata.
Richiesta di esempio
Risposta di esempio
media_links.efficient
Restituisce un URL di download per la rappresentazione elaborata più piccola disponibile. È l’opposto di high_quality: Frame.io seleziona la rappresentazione con la risoluzione più bassa disponibile.
Campi
Quando utilizzarlo
Usa media_links.efficient quando la larghezza di banda o la dimensione del file conta più della qualità, ad esempio per generare anteprime rapide in un ambiente con larghezza di banda limitata o per alimentare una pipeline di miniature che non ha bisogno della risoluzione completa.
Richiesta di esempio
Risposta di esempio
media_links.video_h264_180
Restituisce gli URL di streaming e download per una transcodifica video a bassa risoluzione H264 a 180p della risorsa.
Questa è un’inclusione legacy. Sarà null se non è stata generata una transcodifica a 180p per la risorsa. Per la maggior parte dei casi d’uso è preferibile media_links.efficient, che seleziona la migliore rappresentazione di bassa qualità disponibile invece di fare affidamento sull’esistenza di una transcodifica specifica.
Campi
Quando utilizzarlo
Usa media_links.video_h264_180 quando hai bisogno specificamente di una transcodifica H264 garantita a 180p, ad esempio per l’integrazione con un lettore o una pipeline legacy che richiede esattamente questo formato. Se la transcodifica non esiste per una determinata risorsa, entrambi gli URL saranno null.
Nel file video_h264_180 non è incluso l’audio. È progettato per anteprime molto efficienti, quando necessario.
Richiesta di esempio
Risposta di esempio
media_links.scrub_sheet
Restituisce un foglio sprite WebP, ovvero una singola immagine contenente una griglia di miniature dei fotogrammi video campionati uniformemente per tutta la durata del video. Viene utilizzato per creare l’interfaccia utente di scorrimento video, dove il lettore mostra un fotogramma di anteprima mentre l’utente trascina sulla timeline.
I fogli scrub vengono generati solo per le risorse video. L’inclusione restituirà degli URL null per immagini, PDF e altri file non video.
Campi
Quando utilizzarlo
Usa media_links.scrub_sheet quando crei un lettore video personalizzato o un’interfaccia timeline che deve mostrare una miniatura di anteprima mentre l’utente scorre. Invece di fare una richiesta separata per ogni fotogramma, il foglio sprite raggruppa tutti i fotogrammi di anteprima in un unico download di immagine.
Richiesta di esempio
Risposta di esempio
Estrazione di un fotogramma dal foglio sprite
Il foglio sprite è una griglia di colonne tile_x × righe tile_y. Per visualizzare la miniatura per un determinato indice di fotogramma (con base zero), calcola la sua posizione all’interno dell’immagine:
Puoi quindi utilizzare background-position di CSS per mostrare la sezione corretta dal foglio sprite:
Per mappare una posizione di riproduzione (in secondi) a un indice di fotogrammi, usa la durata totale del video e il numero di fotogrammi nel foglio:
Il campo metadata è disponibile solo nella versione sperimentale dell’API. Nell’API v4 stabile, scrub_sheet restituisce solo download_url e url.
Combinare più inclusioni
Puoi richiedere più inclusioni in una singola chiamata API:
Scelta dell’inclusione giusta
view_url (disponibile in ogni risposta di file senza bisogno di un’inclusione) è un link diretto permanente nella web app di Frame.io. Non è un URL media; apre l’interfaccia utente di Frame.io e non ha nessuna scadenza. Usalo quando vuoi indirizzare un utente a rivedere o commentare una risorsa direttamente in Frame.io, non quando devi fornire o scaricare il file a livello programmatico.
Disponibilità delle inclusioni
I link multimediali vengono popolati solo dopo che Frame.io ha terminato l’elaborazione del file caricato. Se richiedi un’inclusione subito dopo il caricamento, gli URL potrebbero essere null mentre la transcodifica è in corso. Controlla il campo status nell’oggetto del file: le inclusioni saranno disponibili quando lo stato sarà ready.