Skip to content

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.

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.

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.

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.