S4C is Wales's national Welsh-language broadcaster, and a growing share of its drama, documentary, sport, and children's programming exists only as a streaming asset. When a programme leaves the catch-up window, the URL quietly stops resolving. For archivists, that is not a minor inconvenience — it is the moment a piece of Welsh cultural record becomes unrecoverable.
Technically, S4C's player does not serve one tidy MP4 file. Modern delivery uses adaptive streaming: DASH or HLS manifests describe a ladder of separate video and audio chunks at different bitrates, which your browser requests and stitches on the fly. High-motion sport may reach 50 or 60fps, premium titles may carry 2160p ladders, and accessibility tracks — Welsh and English subtitles, audio description — live in separate streams. Servers also throttle aggressive clients, so a naive downloader gets a few fragments and then stalls.
Downloading for personal archiving, research, criticism, or offline viewing generally sits within Fair Use or equivalent fair-dealing frameworks, but that does not license redistribution. You are responsible for checking S4C's terms and your local copyright law. Preserve what you have a right to preserve, and keep it private.
This guide compares three practical routes: a native desktop GUI built on Tauri and Rust, the upstream open-source command-line tool, and browser-based converter sites. Each has a different ceiling on quality, reliability, and privacy — and only one of them is designed for repeatable, long-term preservation work.
yt-dlp app (Recommended Desktop GUI)
The yt-dlp app is a proprietary desktop application for Windows and macOS that packages the yt-dlp extraction engine, FFmpeg, and aria2c into one guided interface. It is built on Tauri v2 with a Rust core, so the heavy lifting runs natively rather than inside a browser shell.
Its multi-connection fragment engine pulls parallel chunk requests through aria2c, which is what makes 4K and 60fps S4C ladders practical instead of painfully slow. FFmpeg then muxes the separate video, audio, and subtitle streams into a single clean file, and all settings live in a local JSON file on your own disk — no account, no telemetry.
Step-by-Step Instructions
Step 1: Download & Launch yt-dlp app
Install the desktop build for your operating system and open it. No account or sign-in is required.
Step 2: Paste the S4C URL
Copy the programme or playlist link from S4C and paste it into the input field. Playlist URLs queue every episode automatically.
Step 3: Choose Quality and Subtitles
Select your preferred resolution and frame rate, then tick the Welsh or English subtitle tracks you want burned in or saved alongside.
Step 4: Set the Output Folder
Pick a destination on your drive and confirm the container. MKV preserves multiple subtitle and audio tracks best for archival.
Step 5: Start the Download
Press download and let the fragment engine and FFmpeg finish the mux. Verify playback and file integrity before you move on.
Advantages
- ✓ Handles 4K/2160p, 60fps, and multi-track subtitle muxing automatically
- ✓ Parallel fragment acceleration avoids throttling stalls on long programmes
- ✓ No telemetry, no cloud upload; preferences stored in local filesystem JSON
Drawbacks
- ✗ Requires desktop installation
Ready to download yt-dlp app? 🚀
Experience native speed, 4K/8K stream extraction, and zero telemetry video archiving on Windows, macOS, and Linux. ✨
Get yt-dlp appyt-dlp (Command Line Interface)
The yt-dlp CLI is the upstream open-source powerhouse that everything else wraps. It exposes the full extractor feature set: format selection expressions, cookie jars, rate limiting, archive files, and batch scripting across hundreds of episodes in a single command.
It is the right instrument for automation, scheduled jobs, and reproducible archival pipelines. It is also unforgiving — you supply the flags, you install FFmpeg and aria2c yourself, and you diagnose your own failures when a site changes.
Step-by-Step Instructions
Step 1: Install the CLI and Dependencies
Install yt-dlp via your package manager or binary release, then add FFmpeg and aria2c to your system path.
Step 2: Identify the Best Format
Run a format listing against the S4C URL to inspect available video, audio, and subtitle streams.
Step 3: Build Your Command
Select video plus audio with a format expression, enable subtitle embedding, and point at an archive file for deduplication.
Step 4: Run and Verify
Execute the command, then confirm the muxed output plays with correct audio sync and subtitle tracks.
Advantages
- ✓ Full access to every extractor option, format selector, and post-processor
- ✓ Ideal for scripting, cron jobs, and bulk playlist archival
- ✓ Free, open-source, and independently auditable
Drawbacks
- ✗ Steep learning curve for anyone unfamiliar with terminals
- ✗ Manual dependency management for FFmpeg, aria2c, and updates
Web-Based Online Converters
Browser-based converter sites require nothing but a URL and a click, which makes them appealing for a one-off clip on a borrowed machine. The trade-off is hidden in the business model: ad networks, analytics scripts, redirect chains, and occasionally malicious pop-ups.
Most impose strict server-side caps, often capping output at 720p or re-encoding video to save bandwidth, and they silently strip subtitle tracks and multi-audio streams. Uploading or routing a request through a third-party server also means your viewing activity leaves your control.
Advantages
- ✓ No installation or technical setup required
- ✓ Works from any browser on any operating system
Drawbacks
- ✗ Intrusive ads, redirects, and occasional malicious pop-ups
- ✗ Privacy tracking and third-party server processing of your requests
- ✗ Strict resolution caps and lossy re-encoding that discards subtitles