Overview
Tornado supports advanced download options including audio-only extraction, resolution selection, video clipping, live stream recording, and age-restricted videos.Re-encoding requires a paid account
Audio/video re-encoding is available with a paid subscription or pay-as-you-go outside its free trial. Adding a card during a trial does not unlock re-encoding. Downloads, stream-copy audio extraction, clipping without encoding, and merging existing audio/video streams remain available during the trial. A conversion request is an explicitvideo_codec or audio_codec (other than
copy), audio_bitrate, video_quality, or format: "mp3". Another format
alone (for example mp4, webm, m4a, ogg or opus) only selects compatible
source streams: when the source already carries them, the file is delivered as
requested, without notice. Otherwise, without the entitlement below, only the
completed job carries the reencoding_notice.
Without this entitlement, conversion requests are still accepted, including bulk
submissions and retries. The file is delivered using the original codecs, with an
optional reencoding_notice explaining that re-encoding requires a paid plan.
This notice appears in creation responses, job results, and completion webhooks.
The dashboard also displays it on the completed job.
The worker ignores encoding settings such as audio_bitrate and video_quality
and uses a container compatible with the source. Consequently, the delivered
format and filename extension may differ from those requested. For example, an
MP3 request with an AAC source can deliver an M4A file without converting audio.
The job completes normally; this notice is not a job error.
If the account’s entitlement cannot be verified at processing time, the job is not
failed either: the file is delivered the same way, with a reencoding_notice
stating that re-encoding was skipped because the entitlement could not be
verified. Submit the request again later to get the conversion.
Audio-Only Extraction
Extract the audio track from a supported source.m4a is the usual audio-only output; set format explicitly when the container matters. Stream copying is possible when source and requested output match. Codec, bitrate and clipping options can require processing.
Audio-only request
MP3 Output
Audio Formats
audio_only can be combined with clip_start/clip_end to extract a specific audio segment, and with audio_bitrate to control output quality.Resolution Selection
Limit the maximum video resolution to reduce file size and download time.Available Resolutions
max_resolution checks the shorter dimension of the video. This means 1080 correctly keeps both 1920x1080 landscape videos and 1080x1920 vertical videos (YouTube Shorts), when a suitable rendition exists. If no format fits the cap, selection can fall back to the smallest available rendition, which can exceed it.Example
A numeric value selects the best available rendition at or below the cap, or the smallest available rendition if none fits. Account limits and source availability still apply.
Video Clipping
Extract a specific segment from a video using start and end timestamps.Timestamp Formats
Timestamps are JSON strings. Supported forms include:MM:SS- Minutes and secondsHH:MM:SS- Hours, minutes, seconds (e.g.,01:30:45)- Seconds - Raw seconds (e.g.,
5445)
Examples
Several clips from one video
Submit one URL and aclips array to POST /jobs:
-clip-001.mp4, -clip-002.mp4, etc. All clips use the shared format, encoding
and storage options; audio_only is supported.
Poll GET /jobs/{job_id}. When the job completes, clip_files contains each
range, object key, download URL and file size:
clip_files array. The main s3_url
points to the first clip for compatibility; the job’s file_size is the sum of
all clip sizes. The job completes only after every clip uploads. On failure or
cancellation during upload, cleanup of partially uploaded clips is attempted;
the job is not marked successfully delivered. Retries create a new job and
preserve the requested ranges.
Rules: 1–100 ranges, both bounds required as strings (seconds, MM:SS or
HH:MM:SS), finite non-negative values and clip_end > clip_start.
Do not combine clips with top-level clip_start/clip_end. This mode requires
one on-demand video, not a playlist, show or explicit live recording, and does
not support download_subtitles. Marketplace clipping restrictions still apply.
Active live streams are also rejected when the URL is submitted without live
options. Completed live replays are supported. Cancelling the job interrupts
the current encoding and prevents the remaining clips from starting.
Timestamp precision follows the existing clipping/encoding behavior.
There is one billing finalization: the delivered volume is the sum of the clips,
with the account’s usual source-video floor applied once, not once per clip.
Quota and output-size limits apply to the combined volume. Source-duration
limits continue to apply to the original video. See Billing.
Live Stream Recording
Record ongoing YouTube or Twitch live streams.Parameters
Basic Live Recording
Record from Start (VOD Mode)
Wait for Scheduled Stream
Age-Restricted Videos
YouTube serves age-restricted videos only to a signed-in, age-verified account. Send the Netscapecookies.txt export of such an account in cookies, with a single YouTube video URL: