How To Batch Convert Media Files in VLC

Posted by Jamie on August 30, 2018

The huge variety of media files available for PCs, laptops, and mobile devices is both a blessing and a curse. It’s great because every specific niche out there has a format available to optimize it for playback on all the devices that we carry around with us, but it’s also terrible because every once in a while you find a video file that just won’t play on your particular device. And there are times when the media files we have on hand are really ill-suited for the device we want to use, such as if you have a huge high-quality .mkv file but want to play it on your older smartphone and really need it to be converted to an MP4. Fortunately, there is a tool out there that solves both these problems.

VLC is an awesome program. It’s a small media player, it uses very few system resources, it can play just about every popular media format out there, and it’s absolutely free. Not only that, it has great mobile versions for both iOS and Mac, making viewing on the morning commute easier than ever. The program is free, is continually developed and supported, has a huge fan base that’s very serious about keeping the programming going, and on top of that is feature-rich and easy to use. It’s one of the best programs out there – and we can use it to convert media files into more convenient or better formats to boot. In this tutorial article, I’ll show you how to use VLC to batch convert your media files.

How to batch convert media files in VLC-2

Batch convert media files in VLC

Batch conversion in VLC works the same regardless of whether you’re converting audio or video. The process is exactly the same and contains only a few steps. The actual conversion process may take time though – video files especially are very large and even powerful computers need time to work on them. Much depends on the type of file, the size of it, the format you’re converting from and to and the specs of your computer.

Video editing compilation and conversion takes a lot of memory. If your computer has lots of RAM and a decent processor, the conversion time will be relatively short. If you’re using an older computer, it’s going to take longer. MP4 conversion takes longer than MP3, partly because of file size but also the information contained within it. So be patient!

Here’s how to batch convert media files in VLC.

  1. Open VLC.
  2. Select Media and ‘Open multiple files’.
  3. Click Add and select all of the files you want to convert.
  4. Click the small down arrow next to Play in the bottom right.
  5. Select Convert.
  6. Select the format where it says Profile.
  7. Select somewhere to save it to in Destination File.
  8. Select Start to begin the process.

Depending on how many files you’re converting, their type, size and your computer, this process can take less than a minute or several hours. VLC works quickly but it’s about more than just raw processing power.

How to batch convert media files in VLC-3

Use a batch file to convert media files in VLC

Videolan.org, the people behind VLC, have also put together a series of script files that use PowerShell or CMD in Windows or the terminal in Linux to batch convert tiles in VLC. If you prefer doing things with scripts, this page is for you.

As a fan of PowerShell, I tried this method as well as the menu method above and it worked fine. Open PowerShell as an administrator and paste the following into it:

$outputExtension = “.mkv”

$bitrate = 8000

$channels = 4

foreach($inputFile in get-childitem -recurse -Filter *.MP4)


$outputFileName = [System.IO.Path]::GetFileNameWithoutExtension($inputFile.FullName) + $outputExtension;

$outputFileName = [System.IO.Path]::Combine($inputFile.DirectoryName, $outputFileName);

$programFiles = ${env:ProgramFiles(x86)};

if($programFiles -eq $null) { $programFiles = $env:ProgramFiles; }

$processName = $programFiles + “\VideoLAN\VLC\vlc.exe”

$processArgs = “-I dummy -vvv `”$($inputFile.FullName)`” –sout=#transcode{acodec=`”mp3`”,ab=`”$bitrate`”,`”channels=$channels`”}:standard{access=`”file`”,mux=`”wav`”,dst=`”$outputFileName`”} vlc://quit”

start-process $processName $processArgs -wait


You can set the script to work with multiple files types, audio or video. You will need to modify the outputExtension to match the file you’re converting from and the end of the ‘foreach’ line to match your desired output format. You will also need to modify bitrate to match the file type and channels to fit the audio. I have bitrate to 8000 as it is measured in kbps and I required HD, which is 8mbps = 8000 kbps.

The VLC HowTo/Transcode multiple videos page has much more information on the various script options you can choose.

Other options to convert media files

There are third party programs that can convert audio and video for you and even websites that will do it online. Some programs are very good indeed and may be more suitable for if you’re producing media for public consumption rather than your own enjoyment.

Some programs include Wondershare Video Converter Ultimate, Prism Free and Any Video Converter. A website I have used is OnlineVideoConverter which is pretty good too. The site can work slowly at times, depending on the time of day and how many requests it is handling at the time. For a one-off project, this might be useful but for anything more frequent, VLC or one of these other apps will get the job done.

There is a lot more to VLC than just a media player, so much so that I cannot believe it is legitimately free. While it remains at no-cost it will always be my go-to media player and the app I use to batch convert media files.

9 thoughts on “How To Batch Convert Media Files in VLC”

Kevin says:
Worked well. 1297 files now converting! Thank you!
Dr Jason says:
Thank you for your brevity and simplicity. Several other sites made the vlc conversion process needlessly complicated.
Jannis says:
Thanks for your post. As your instructions are for windows OS, I was wondering how to achieve the same on Mac OS in VLC. I am stuck at point 2), i.e.

“Select Media and ‘Open multiple files’.”

Unfortunately, there is no option called ‘Media’ in the Mac version. I can convert single files successfully, but if anybody could give a hint how to convert multiple at a time, I would be delighted.

Jo Jo says:
You might to change the quotes in the powershell from ” to ” so the script runs. Also the VLC doesn’t process batches only single files as you have to set the output filename for each file unless someone has worked it out.
Jo Jo says:
Your webpage uses Unicode quotations… maybe wrap in code tag or …
freddyzdead says:
I agree. This is useless. VLC will concatenate all the files you select and output into a single file. That’s not what we’re looking for. I don’t see any way of making it do other than one at a time. That’s a pain when you’ve got 20 1-hour clips to convert.
Kurt says:
I am trying to make 12 mp3 tracks into one long mp3 track. This method above does not bundle multiple tracks into one. It only converts one mp3 track out of the list I’ve selected into one mp3 track.
Jason Karim says:
You can use the stream function, and set a destination as a file. And it will convert them into one long mp3 file.
Jack Cline says:
using this method results in only one file being converted. Perhaps I am not putting the right information in the ‘file’ field. Your method shows that field as blank but if I leave it blank it doesn’t even begin to convert .
Adam shechter says:
This is batch conversion, as previous comment says.
Please change title, deceiving.
This is single file conversion in a menu. Batch conversion handles automatic naming of files.
John Robert says:
This does not batch convert anything…you can’t even batch convert through VLC. Only 1 file at a time. Change title.
Nick Vincent says:
The PowerShell method is batch but not the VLC method it just does whatever file is highlighted
GB says:
Misleading title; converts only a single file!

Leave a Reply

Your email address will not be published. Required fields are marked *