Obiekt wideo
Obiekt wideo to obiekt JSON z następującymi właściwościami:
{
"id": string,
"status": "COMPLETE" | "PROCESSING" | "NO_FILE" | "FAILED",
"visibility": "public" | "private",
"v": number,
"title": string,
"description": string,
"duration": number,
"fps": number,
"orientation": "landscape" | "portrait",
"sourceFolder": string,
"language": string,
"src": {
"thumbnails": [
{
"name": "2160p" | "1440p" | "1080p" | "720p" | "480p" | "360p" | "240p",
"width": number,
"height": number,
"formats": {
"jpeg": { "url": string, "fileSize": number },
"webp": { "url": string, "fileSize": number }
}
},
[...]
],
"thumbnailUrl": string, // DEPRECATED — use src.thumbnails instead
"filename": string,
"abr": {
"resolution": "auto",
"description": "Adaptive Bitrate Streaming (ABR)",
"url": string, // .m3u8 playlist file
"maxWidth": number,
"maxHeight": number
},
"hls": [
{
"name": "2160p" | "1440p" | "1080p" | "720p" | "540p" | "360p" | "240p",
"url": string, // .m3u8 playlist file
"width": number,
"height": number
},
[...]
],
"mp4": [
{
"name": "2160p" | "1440p" | "1080p" | "720p" | "540p" | "360p" | "240p",
"url": string, // .mp4 file
"width": number,
"height": number
},
[...]
]
},
"texttracks": [
{
"language": "en" | "en-US" | "de" | "de-DE" | "it" | "fr" | "...",
"filename": string,
"type": "subtitles" | "captions",
"url": string,
"id": string
// If you need the `content` property, you have to fetch the specific texttrack by its ID.
// See "Text tracks > Get" for details.
},
[...]
],
"chapters": [
{
"id": string,
"title": string,
"timestamp": string, // 00:00:00
},
[...]
],
"categories": [
{
"id": string,
"title": string,
"slug": string,
},
[...]
],
"tags": [
{
"id": string,
"title": string,
"slug": string,
},
[...]
],
"transcriptions": [
{
"language": string, // locale in de-DE format
"autoGenerated": boolean,
"text": string, // plain text transcript
"segments": [
{
"startTime": number, // in seconds
"endTime": number, // in seconds
"text": string
},
[...]
],
},
[...]
],
"autoTranscription": [
// for videos longer then 3 hours, there will be multiple entries after auto transcription
{
"autoStart": boolean,
"lastUpdatedAt": Date,
"data": {
"id": string,
"status": "COMPLETED" | "QUEUED" | "IN_PROGRESS" | "FAILED" | "NONE",
"videoDuration": number,
"language": string,
"subtitle": string, // webVTT format
"transcription": string, // plain text
"transcriptionParts": [
{
"id": number,
"transcript": string,
"start_time": number, // in seconds
"end_time": number // in seconds
},
[...]
],
"createdAt": Date,
"updatedAt": Date,
}
},
...
],
"createdAt": Date,
"updatedAt": Date
}Miniatury
src.thumbnails
Wielorozdzielcze warianty aktualnie aktywnej miniatury. Tablica jest posortowana malejąco po szerokości (najwyższa rozdzielczość na początku). Generowane są tylko rozmiary równe lub mniejsze niż obraz źródłowy. Dostępne rozdzielczości: 2160p, 1440p, 1080p, 720p, 480p, 360p, 240p.
{
"name": "2160p" | "1440p" | "1080p" | "720p" | "480p" | "360p" | "240p",
"width": number,
"height": number,
"formats": {
"jpeg": { "url": string, "fileSize": number },
"webp": { "url": string, "fileSize": number }
}
}Każdy wariant rozdzielczości jest dostępny w formacie JPEG i WebP. Użyj formats.webp.url, jeśli zależy Ci na mniejszym rozmiarze pliku, albo formats.jpeg.url dla maksymalnej kompatybilności. Aby uzyskać miniaturę w najwyższej rozdzielczości, użyj src.thumbnails[0].formats.jpeg.url (lub .webp.url). Aby wybrać konkretną rozdzielczość, przefiltruj tablicę po name, width lub height.
src.thumbnailUrl (przestarzałe)
Przestarzałe — Zamiast tego używaj src.thumbnails. To pole zostanie usunięte w przyszłej wersji.
Zawiera adres URL wariantu 1080p (lub najwyższego dostępnego) aktualnie aktywnej miniatury. Jest automatycznie aktualizowane przy każdej zmianie miniatury.
Cykl życia miniatur
| Zdarzenie | src.thumbnails | src.thumbnailUrl |
|---|---|---|
| Zakończenie przetwarzania wideo | Wypełnione wygenerowanymi wariantami | Ustawione na wariant 1080p (lub najwyższy dostępny) |
| Wgrana niestandardowa miniatura | Zastąpione nowymi wariantami | Zaktualizowane do wariantu 1080p (lub najwyższego dostępnego) |
| Miniatura ze znacznika czasu | Zastąpione nowymi wariantami | Zaktualizowane do wariantu 1080p (lub najwyższego dostępnego) |
| Reset miniatury | Przywrócone do automatycznie wygenerowanych wariantów | Przywrócone do wariantu 1080p (lub najwyższego dostępnego) |
Źródła wideo
Tablice źródeł wideo
Tablice hls i mp4 zawierają listę wszystkich dostępnych źródeł wideo. Tablice są uporządkowane według jakości, od najwyższej. Warianty wideo generowane są do rozdzielczości wejściowego pliku. Przykładowo wgrane wideo 1080p nie będzie miało wariantów 2160p ani 1440p.
{
"name": "2160p" | "1440p" | "1080p" | "720p" | "540p" | "360p" | "240p",
"url": string,
"width": number,
"height": number
}Adaptacyjne strumieniowanie ze zmiennym bitrate (ABR)
Jeśli chcesz udostępniać wideo przez adaptacyjne strumieniowanie ze zmiennym bitrate (skrót ABR), możesz użyć src.abr.url jako źródła wideo. Plik playlisty zawiera wszystkie dostarczone jakości wideo wymienione w tablicy src.hls.