A practical guide to batch downloading videos as MP3 files

Turning a scattered list of online videos into a tidy collection of MP3 files can save hours of clicking, especially when the same material must be captured for listening on the move. The useful approach is to combine a downloader that understands video pages, FFmpeg for audio conversion, and a text file that defines the batch. This article focuses on lawful, publicly available material you own or have permission to archive.

A dependable workflow is more important than any single command. Test the process on two or three clips, confirm that the MP3s open and carry the expected titles, then expand the list. That small investment prevents a large download from ending with mislabelled files, truncated audio or dozens of duplicates.

Check permissions and build a reliable source list

Before downloading, check the licence attached to each video. Public access does not automatically grant permission to copy or redistribute it. For personal study, note the creator’s terms, retain attribution details, and avoid using a download for public distribution unless the licence clearly allows it. Australian creators may work under Creative Commons or another licence, so read the stated conditions rather than assuming that every file is free to reuse.

Keep a simple record of the source page, direct media URL when available, creator, title and download date. If a clip is discovered on Africa Sunu, record both the collection page and the underlying video page so the archive remains understandable later. A plain-text list called urls.txt, with one complete URL per line, is enough to drive the main workflow.

Think about connection limits before a large run. A crowded Sydney or Melbourne train is a poor time to spend a mobile-data allowance on media, while a home NBN connection is usually better suited to the job. Australians often call the late afternoon “arvo”, but data charges do not become friendlier at four o’clock; estimate the size of the queue and download only what you need.

Install the downloader and audio converter

yt-dlp handles the site-specific work of finding media streams and passing them to FFmpeg. FFmpeg performs the actual extraction and encoding into MP3. Use current versions of both, because streaming sites change their pages regularly and older downloads often fail for no obvious reason.

On macOS, Homebrew can install the pair with brew install yt-dlp ffmpeg. On Windows, winget install yt-dlp.yt-dlp and winget install Gyan.FFmpeg provide the two commands. For Debian or Ubuntu, install FFmpeg through the package manager and place the latest yt-dlp release in a folder on your command path; pipx install yt-dlp is another convenient option where Python is already managed.

Check the installation before downloading anything with yt-dlp --version and ffmpeg -version. If either command is not recognised, the executable is probably outside the command path rather than missing. Reinstalling repeatedly will not solve that problem; move the binary or update the shell path, then run the checks again.

Test one small MP3 batch

Start with two authorised videos that have similar durations. Run yt-dlp --no-playlist --extract-audio --audio-format mp3 --audio-quality 192K "URL_ONE" "URL_TWO" from a terminal in the folder where you want the files to appear. The --no-playlist switch is useful for this test because it prevents a linked playlist from expanding beyond the items you selected.

The flags control distinct stages. --extract-audio selects the best available audio stream, --audio-format mp3 invokes FFmpeg to convert it, and --audio-quality 192K requests a practical target for speech, music and general video soundtracks. A value of 0 asks FFmpeg for its variable-bitrate maximum, although the extra size may not be justified for a low-quality source.

Use a descriptive output pattern from the beginning, such as -o "%(uploader)s - %(title)s.%(ext)s". Play both results, compare their duration with the source, and check that the filenames are sensible. A successful test means the command, tools, output location and writing permissions all work before you scale up.

Process larger groups without repeated work

For a saved queue, use yt-dlp --batch-file "urls.txt" --yes-playlist --extract-audio --audio-format mp3 --audio-quality 192K -o "%(autonumber)02d - %(title)s.%(ext)s". Each non-empty line in the file becomes another download. The output template adds a stable sequence number, which stops files with identical titles from overwriting each other.

The --yes-playlist option applies when a line points to a playlist rather than one video. It can expand into many items, so review the URL before including it. For a controlled set of individual links, remove that option and keep --no-playlist; for a mixed queue, maintain separate playlist and single-video lists rather than making assumptions about what each address contains.

A shell loop is useful when you want different settings for each batch. On macOS or Linux, read every line with while IFS= read -r url; do yt-dlp --no-playlist --extract-audio --audio-format mp3 "$url"; done < urls.txt. In PowerShell, use Get-Content .\urls.txt | ForEach-Object { yt-dlp --no-playlist --extract-audio --audio-format mp3 "$_" }. Quoting the variable protects links that contain punctuation or spaces.

Automate reruns and organise every file

Add --download-archive "downloaded.txt" to a recurring command. The file records each video identifier that has already been processed, so later runs skip it and focus only on new entries. This feature is valuable for an active channel or a growing class list, and it also prevents the same clip from being converted under a second title.

For a cleaner library, add --embed-metadata --embed-thumbnail and keep the output template stable. MP3 files can then carry title, artist, album, track number and cover art in their tags. Include the upload date or collection name in the template when that context matters, but avoid stuffing every folder with automatic fields that you will never use.

Scheduling can run while the computer is awake, although a manual weekly command is often easier to audit. If your fixed-broadband plan has off-peak conditions or the household connection is busy at night, schedule the job for a quieter period. Do not rely on an always-on home connection for a remote workstation, and test scheduled tasks with three files before trusting them with a full archive.

Troubleshoot downloads and verify the audio

Network interruptions are common on regional highways and in places where Telstra 4G or 5G coverage fades. Add --continue --retries 5 --fragment-retries 10 so partial files can resume where the server permits it. Keeping each line separate also limits the damage: one failed address should not erase the successful results around it.

Some items may be private, removed, region-restricted or protected by digital-rights management. yt-dlp cannot create permission to access content that you do not have the right to view. Confirm your account can play the video in a normal browser, then use only the authentication method supported by the tool. If access still fails, record the URL as unavailable and move on rather than trying to bypass the restriction.

Check a converted file with ffprobe -hide_banner "FILE_NAME.mp3" and listen through a pair of speakers or headphones. Look for silence, a clipped final second, duplicated segments and tags assigned to the wrong item. A missing tag is cosmetic; truncated or silent audio is not, so remove questionable files before adding them to a playlist.

For listening in a car, test one file over Bluetooth and another through the USB connection before a long trip. Australians drive on the left, so allow time to settle into unfamiliar roads rather than adjusting controls while moving. Download voice navigation and podcasts in advance because a summer storm can interrupt mobile coverage, and a regional route may have fewer reconnection points than a city route. It also makes sense to check the car itself before setting off, since the auto maintenance guide highlights common errors that can turn an ordinary drive into an interruption.

Keep the archive secure and start your first batch

Install download tools only from their official project or a reputable package manager. Avoid browser extensions and unfamiliar “free converter” sites that promise to unlock files, since they may install unwanted software or collect browsing data. An MP3 is a passive media file, but the executable or page used to obtain it can still carry risks.

Respect the creator, the platform and the law when an archive grows beyond personal notes. Keep attribution with the records, observe share-alike terms, and never upload a compilation as your own. Lajsiab’s reader-supported catalogue of technology, music, travel and Japanese variety clips can be a convenient discovery layer, but check the original source and its permissions before archiving anything.

Create a urls.txt file with three authorised links, run the test command, and inspect the resulting MP3 files today. Once the titles, audio and folders are right, add the next group and enable the archive option for future runs. A repeatable list, a tested conversion command and a reliable download log will keep each new batch quick and dependable.

Curated video clips · repeat · download A reader-supported aggregation portal.