Import files and HLS by URL
From Library → Import URL, paste the HTTP(S) URL of a file or finite HLS playlist. It must be accessible to the server. A webpage containing a player is not a media source.
From the SDK
Section titled “From the SDK”In your backend, with the client configured:
const asset = await orilla.assets.create({ inputs: [{ url: "https://media.example/conference/master.m3u8" }], playback_policies: ["signed"], normalize_audio: true,});console.log(asset.id, asset.status);Creation is asynchronous. Wait for ready by querying the asset or receiving a webhook. Configure watermarks or test mode at creation, before submitting the source.
Supported HLS imports
Section titled “Supported HLS imports”Orilla supports a media or master playlist with ENDLIST in every selected media playlist. It selects the variant with the largest area, then bandwidth; with separate audio, it selects DEFAULT, AUTOSELECT, or the group’s first track. It supports MPEG-TS, fMP4 with MAP, packed audio, validated BYTERANGE, and AES-128 identity with 16-byte keys.
Relative references resolve against each playlist’s final URL after redirects. They do not inherit its query string: if segments need a signature, their references must contain the appropriate authorization. Every reference passes the server’s network checks.
Subtitles, chapters, and other languages in the master are not imported automatically. Add them as independent tracks.
Import limits
Section titled “Import limits”| Resource | Orilla limit |
|---|---|
| Total HLS download | 5 GiB, including manifests, keys, and ranges |
| Network and remux | 15 minutes |
| Parsed playlist | 1 MiB and 20,000 lines |
| Playlists and depth | 16 and 4 levels |
| Total audio and video segments | 10,000 |
| Duration per media playlist | 7,200 seconds |
| Retained source | 5 GiB |
Live without ENDLIST, LL-HLS, SAMPLE-AES, DRM, variables, and non-identical MAP changes are not supported. Playlists are not continuously reloaded. Supported discontinuities are normalized; incompatible containers or codecs produce an error.
After source acceptance, retries use the retained copy. For HLS, Registered ingest counts downloaded HTTP bodies, which may differ from the saved remux size. These capabilities have local functional verification; remote validation scope is tracked separately.