<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.videolan.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kevb0</id>
	<title>VideoLAN Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.videolan.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kevb0"/>
	<link rel="alternate" type="text/html" href="https://wiki.videolan.org/Special:Contributions/Kevb0/"/>
	<updated>2026-11-04T17:31:23Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VLC_HowTo/Transcode_multiple_videos&amp;diff=22759</id>
		<title>VLC HowTo/Transcode multiple videos</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VLC_HowTo/Transcode_multiple_videos&amp;diff=22759"/>
		<updated>2012-06-27T04:32:39Z</updated>

		<summary type="html">&lt;p&gt;Kevb0: /* Powershell */  - consolidated to one block&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Idea ==&lt;br /&gt;
The idea is to use VLC to do some batch work to encode or transcode multiple files one after each other, without having to care about it. &lt;br /&gt;
&lt;br /&gt;
You may want to transcode all your videotheque to another format to play them on an [[IPod]], a [[Play on Zune|Zune]], a PS3 or a [[Play on Xbox|Xbox]].&lt;br /&gt;
&lt;br /&gt;
== Codecs / Muxers ==&lt;br /&gt;
&lt;br /&gt;
You have to choose the correct codecs for the device you want to transcode for.&lt;br /&gt;
&lt;br /&gt;
We choose here [[H.264]] with [[AAC]] in a [[MPEG-2#TS|MPEG-2/TS]] muxer as an example.&lt;br /&gt;
&lt;br /&gt;
== Command Lines ==&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
 for %%a in (*.VOB) do &amp;quot;C:\Program Files\VideoLAN\VLC\vlc&amp;quot; -I dummy -vvv %%a --sout=#transcode{vcodec=h264,vb=1024,acodec=mp4a,ab=192,channels=2,deinterlace}:standard{access=file,mux=ts,dst=%%a.mpg} vlc://quit&lt;br /&gt;
&lt;br /&gt;
For example, to transcode a batch of m4a files (potentially in multiple subdirectories of a single common root directory) to mp3 files (512kb/s encoding with 44100 sampling frequency) you could use the following code in a Windows XP command prompt:&lt;br /&gt;
 @ECHO OFF&lt;br /&gt;
 REM ########################################################################&lt;br /&gt;
 REM # A Windows XP cmd.com script to batch convert m4a files to mp3.       #&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # Copyright (C) 2008 Andrew Boden                                      #&lt;br /&gt;
 REM # (boden@graduate.uwa.edu.au)                                          #&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # This program is free software: you can redistribute it and/or modify #&lt;br /&gt;
 REM # it under the terms of the GNU General Public License as published by #&lt;br /&gt;
 REM # the Free Software Foundation, either version 3 of the License, or    #&lt;br /&gt;
 REM # (at your option) any later version.                                  # &lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # This program is distributed in the hope that it will be useful,      #&lt;br /&gt;
 REM # but WITHOUT ANY WARRANTY; without even the implied warranty of       #&lt;br /&gt;
 REM # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        #&lt;br /&gt;
 REM # GNU General Public License for more details.                         #&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # You should have received a copy of the GNU General Public License    #&lt;br /&gt;
 REM # along with this program.  If not, see &amp;lt;http://www.gnu.org/licenses/&amp;gt;.#&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # Version 1.0 (June 27th 2008)                                         #&lt;br /&gt;
 REM # Uses VideoLAN VLC 0.8.6h (www.videolan.org)                          #&lt;br /&gt;
 REM # Gracefully handles commas and apostrophes in file names.             #&lt;br /&gt;
 REM # Not aware of any other characters needing graceful handling.         #&lt;br /&gt;
 REM # 512kbps encoding with 44100 sampling.                                #&lt;br /&gt;
 REM ########################################################################&lt;br /&gt;
 &lt;br /&gt;
 FOR /R %%G IN (*.m4a) DO (CALL :SUB_VLC &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 FOR /R %%G IN (*.m4a.mp*) DO (CALL :SUB_RENAME &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_VLC&lt;br /&gt;
  SET _firstbit=%1&lt;br /&gt;
  SET _qt=&amp;quot;&lt;br /&gt;
  CALL SET _newnm=%%_firstbit:%_qt%=%%&lt;br /&gt;
  SET _commanm=%_newnm:,=_COMMA_%&lt;br /&gt;
  REM echo %_commanm%&lt;br /&gt;
  CALL &amp;quot;C:\Program Files\VideoLAN\VLC\vlc&amp;quot; -I dummy -vvv %1 --sout=#transcode{acodec=&amp;quot;mpga&amp;quot;,ab=&amp;quot;512&amp;quot;,&amp;quot;channels=2&amp;quot;,samplerate=&amp;quot;44100&amp;quot;}:standard{access=&amp;quot;file&amp;quot;,mux=&amp;quot;mpeg1&amp;quot;,dst=&amp;quot;%_commanm%.mp3&amp;quot;} vlc:quit&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_RENAME&lt;br /&gt;
  SET _origfnm=%1&lt;br /&gt;
  SET _endbit=%_origfnm:*.m4a=%&lt;br /&gt;
  CALL SET _newfilenm=%%_origfnm:.m4a%_endbit%=.mp3%%&lt;br /&gt;
  SET _newfilenm=%_newfilenm:_COMMA_=,%&lt;br /&gt;
  COPY %1 %_newfilenm%&lt;br /&gt;
  DEL %1&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :eof&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The same as above, for vlc &amp;gt;= 0.9:&lt;br /&gt;
 @ECHO OFF&lt;br /&gt;
 FOR /R %%G IN (*.m4a) DO (CALL :SUB_VLC &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 FOR /R %%G IN (*.m4a.mp*) DO (CALL :SUB_RENAME &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_VLC&lt;br /&gt;
  SET _firstbit=%1&lt;br /&gt;
  SET _qt=&amp;quot;&lt;br /&gt;
  CALL SET _newnm=%%_firstbit:%_qt%=%%&lt;br /&gt;
  SET _commanm=%_newnm:,=_COMMA_%&lt;br /&gt;
  REM echo %_commanm%&lt;br /&gt;
  CALL &amp;quot;C:\Program Files\VideoLAN\VLC\vlc&amp;quot; -I dummy -vvv %1 --sout=#transcode{acodec=&amp;quot;mp3&amp;quot;,ab=&amp;quot;512&amp;quot;,&amp;quot;channels=2&amp;quot;}:standard{access=&amp;quot;file&amp;quot;,mux=&amp;quot;raw&amp;quot;,dst=&amp;quot;%_commanm%.mp3&amp;quot;} vlc://quit&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_RENAME&lt;br /&gt;
  SET _origfnm=%1&lt;br /&gt;
  SET _endbit=%_origfnm:*.m4a=%&lt;br /&gt;
  CALL SET _newfilenm=%%_origfnm:.m4a%_endbit%=.mp3%%&lt;br /&gt;
  SET _newfilenm=%_newfilenm:_COMMA_=,%&lt;br /&gt;
  COPY %1 %_newfilenm%&lt;br /&gt;
  DEL %1&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :eof&lt;br /&gt;
 &lt;br /&gt;
=== Powershell ===&lt;br /&gt;
 &lt;br /&gt;
    &lt;br /&gt;
    $outputExtension = &amp;quot;.mp3&amp;quot;&lt;br /&gt;
    $bitrate = 160&lt;br /&gt;
    $channels = 2&lt;br /&gt;
    &lt;br /&gt;
    foreach($inputFile in get-childitem -recurse -Filter *.wav)&lt;br /&gt;
    { &lt;br /&gt;
      $outputFileName = [System.IO.Path]::GetFileNameWithoutExtension($inputFile.FullName) + $outputExtension;&lt;br /&gt;
      $outputFileName = [System.IO.Path]::Combine($inputFile.DirectoryName, $outputFileName);&lt;br /&gt;
      &lt;br /&gt;
      $programFiles = ${env:ProgramFiles(x86)};&lt;br /&gt;
      if($programFiles -eq $null) { $programFiles = $env:ProgramFiles; }&lt;br /&gt;
      &lt;br /&gt;
      $processName = $programFiles + &amp;quot;\VideoLAN\VLC\vlc.exe&amp;quot;&lt;br /&gt;
      $processArgs = &amp;quot;-I dummy -vvv `&amp;quot;$($inputFile.FullName)`&amp;quot; --sout=#transcode{acodec=`&amp;quot;mp3`&amp;quot;,ab=`&amp;quot;$bitrate`&amp;quot;,`&amp;quot;channels=$channels`&amp;quot;}:standard{access=`&amp;quot;file`&amp;quot;,mux=`&amp;quot;wav`&amp;quot;,dst=`&amp;quot;$outputFileName`&amp;quot;} vlc://quit&amp;quot;&lt;br /&gt;
      &lt;br /&gt;
      start-process $processName $processArgs -wait&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
=== Unix / Linux ===&lt;br /&gt;
&lt;br /&gt;
 vcodec=&amp;quot;h264&amp;quot;&lt;br /&gt;
 acodec=&amp;quot;mp4a&amp;quot;&lt;br /&gt;
 bitrate=&amp;quot;1024&amp;quot;&lt;br /&gt;
 arate=&amp;quot;192&amp;quot;&lt;br /&gt;
 ext=&amp;quot;mpg&amp;quot;&lt;br /&gt;
 mux=&amp;quot;ts&amp;quot;&lt;br /&gt;
 vlc=&amp;quot;/usr/bin/vlc&amp;quot;&lt;br /&gt;
 fmt=&amp;quot;VOB&amp;quot;&lt;br /&gt;
 dst=&amp;quot;/home/user/&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 for a in *$fmt; do&lt;br /&gt;
 $vlc -I dummy -vvv &amp;quot;./$a&amp;quot; --sout &amp;quot;#transcode{vcodec=$vcodec,vb=$bitrate,acodec=$acodec,ab=$arate,channels=6}:standard{mux=$mux,dst=\&amp;quot;$dst$a.$ext\&amp;quot;,access=file}&amp;quot; vlc://quit&lt;br /&gt;
 done&lt;/div&gt;</summary>
		<author><name>Kevb0</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VLC_HowTo/Transcode_multiple_videos&amp;diff=22758</id>
		<title>VLC HowTo/Transcode multiple videos</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VLC_HowTo/Transcode_multiple_videos&amp;diff=22758"/>
		<updated>2012-06-27T04:31:54Z</updated>

		<summary type="html">&lt;p&gt;Kevb0: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Idea ==&lt;br /&gt;
The idea is to use VLC to do some batch work to encode or transcode multiple files one after each other, without having to care about it. &lt;br /&gt;
&lt;br /&gt;
You may want to transcode all your videotheque to another format to play them on an [[IPod]], a [[Play on Zune|Zune]], a PS3 or a [[Play on Xbox|Xbox]].&lt;br /&gt;
&lt;br /&gt;
== Codecs / Muxers ==&lt;br /&gt;
&lt;br /&gt;
You have to choose the correct codecs for the device you want to transcode for.&lt;br /&gt;
&lt;br /&gt;
We choose here [[H.264]] with [[AAC]] in a [[MPEG-2#TS|MPEG-2/TS]] muxer as an example.&lt;br /&gt;
&lt;br /&gt;
== Command Lines ==&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
 for %%a in (*.VOB) do &amp;quot;C:\Program Files\VideoLAN\VLC\vlc&amp;quot; -I dummy -vvv %%a --sout=#transcode{vcodec=h264,vb=1024,acodec=mp4a,ab=192,channels=2,deinterlace}:standard{access=file,mux=ts,dst=%%a.mpg} vlc://quit&lt;br /&gt;
&lt;br /&gt;
For example, to transcode a batch of m4a files (potentially in multiple subdirectories of a single common root directory) to mp3 files (512kb/s encoding with 44100 sampling frequency) you could use the following code in a Windows XP command prompt:&lt;br /&gt;
 @ECHO OFF&lt;br /&gt;
 REM ########################################################################&lt;br /&gt;
 REM # A Windows XP cmd.com script to batch convert m4a files to mp3.       #&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # Copyright (C) 2008 Andrew Boden                                      #&lt;br /&gt;
 REM # (boden@graduate.uwa.edu.au)                                          #&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # This program is free software: you can redistribute it and/or modify #&lt;br /&gt;
 REM # it under the terms of the GNU General Public License as published by #&lt;br /&gt;
 REM # the Free Software Foundation, either version 3 of the License, or    #&lt;br /&gt;
 REM # (at your option) any later version.                                  # &lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # This program is distributed in the hope that it will be useful,      #&lt;br /&gt;
 REM # but WITHOUT ANY WARRANTY; without even the implied warranty of       #&lt;br /&gt;
 REM # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        #&lt;br /&gt;
 REM # GNU General Public License for more details.                         #&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # You should have received a copy of the GNU General Public License    #&lt;br /&gt;
 REM # along with this program.  If not, see &amp;lt;http://www.gnu.org/licenses/&amp;gt;.#&lt;br /&gt;
 REM #                                                                      #&lt;br /&gt;
 REM # Version 1.0 (June 27th 2008)                                         #&lt;br /&gt;
 REM # Uses VideoLAN VLC 0.8.6h (www.videolan.org)                          #&lt;br /&gt;
 REM # Gracefully handles commas and apostrophes in file names.             #&lt;br /&gt;
 REM # Not aware of any other characters needing graceful handling.         #&lt;br /&gt;
 REM # 512kbps encoding with 44100 sampling.                                #&lt;br /&gt;
 REM ########################################################################&lt;br /&gt;
 &lt;br /&gt;
 FOR /R %%G IN (*.m4a) DO (CALL :SUB_VLC &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 FOR /R %%G IN (*.m4a.mp*) DO (CALL :SUB_RENAME &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_VLC&lt;br /&gt;
  SET _firstbit=%1&lt;br /&gt;
  SET _qt=&amp;quot;&lt;br /&gt;
  CALL SET _newnm=%%_firstbit:%_qt%=%%&lt;br /&gt;
  SET _commanm=%_newnm:,=_COMMA_%&lt;br /&gt;
  REM echo %_commanm%&lt;br /&gt;
  CALL &amp;quot;C:\Program Files\VideoLAN\VLC\vlc&amp;quot; -I dummy -vvv %1 --sout=#transcode{acodec=&amp;quot;mpga&amp;quot;,ab=&amp;quot;512&amp;quot;,&amp;quot;channels=2&amp;quot;,samplerate=&amp;quot;44100&amp;quot;}:standard{access=&amp;quot;file&amp;quot;,mux=&amp;quot;mpeg1&amp;quot;,dst=&amp;quot;%_commanm%.mp3&amp;quot;} vlc:quit&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_RENAME&lt;br /&gt;
  SET _origfnm=%1&lt;br /&gt;
  SET _endbit=%_origfnm:*.m4a=%&lt;br /&gt;
  CALL SET _newfilenm=%%_origfnm:.m4a%_endbit%=.mp3%%&lt;br /&gt;
  SET _newfilenm=%_newfilenm:_COMMA_=,%&lt;br /&gt;
  COPY %1 %_newfilenm%&lt;br /&gt;
  DEL %1&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :eof&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The same as above, for vlc &amp;gt;= 0.9:&lt;br /&gt;
 @ECHO OFF&lt;br /&gt;
 FOR /R %%G IN (*.m4a) DO (CALL :SUB_VLC &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 FOR /R %%G IN (*.m4a.mp*) DO (CALL :SUB_RENAME &amp;quot;%%G&amp;quot;)&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_VLC&lt;br /&gt;
  SET _firstbit=%1&lt;br /&gt;
  SET _qt=&amp;quot;&lt;br /&gt;
  CALL SET _newnm=%%_firstbit:%_qt%=%%&lt;br /&gt;
  SET _commanm=%_newnm:,=_COMMA_%&lt;br /&gt;
  REM echo %_commanm%&lt;br /&gt;
  CALL &amp;quot;C:\Program Files\VideoLAN\VLC\vlc&amp;quot; -I dummy -vvv %1 --sout=#transcode{acodec=&amp;quot;mp3&amp;quot;,ab=&amp;quot;512&amp;quot;,&amp;quot;channels=2&amp;quot;}:standard{access=&amp;quot;file&amp;quot;,mux=&amp;quot;raw&amp;quot;,dst=&amp;quot;%_commanm%.mp3&amp;quot;} vlc://quit&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :SUB_RENAME&lt;br /&gt;
  SET _origfnm=%1&lt;br /&gt;
  SET _endbit=%_origfnm:*.m4a=%&lt;br /&gt;
  CALL SET _newfilenm=%%_origfnm:.m4a%_endbit%=.mp3%%&lt;br /&gt;
  SET _newfilenm=%_newfilenm:_COMMA_=,%&lt;br /&gt;
  COPY %1 %_newfilenm%&lt;br /&gt;
  DEL %1&lt;br /&gt;
 GOTO :eof&lt;br /&gt;
 &lt;br /&gt;
 :eof&lt;br /&gt;
 &lt;br /&gt;
= Powershell =&lt;br /&gt;
 &lt;br /&gt;
    &lt;br /&gt;
    $outputExtension = &amp;quot;.mp3&amp;quot;&lt;br /&gt;
    $bitrate = 160&lt;br /&gt;
    $channels = 2&lt;br /&gt;
    &lt;br /&gt;
    foreach($inputFile in get-childitem -recurse -Filter *.wav)&lt;br /&gt;
    { &lt;br /&gt;
      $outputFileName = [System.IO.Path]::GetFileNameWithoutExtension($inputFile.FullName) + $outputExtension;&lt;br /&gt;
      $outputFileName = [System.IO.Path]::Combine($inputFile.DirectoryName, $outputFileName);&lt;br /&gt;
&lt;br /&gt;
      $programFiles = ${env:ProgramFiles(x86)};&lt;br /&gt;
      if($programFiles -eq $null) { $programFiles = $env:ProgramFiles; }&lt;br /&gt;
      &lt;br /&gt;
      $processName = $programFiles + &amp;quot;\VideoLAN\VLC\vlc.exe&amp;quot;&lt;br /&gt;
      $processArgs = &amp;quot;-I dummy -vvv `&amp;quot;$($inputFile.FullName)`&amp;quot; --sout=#transcode{acodec=`&amp;quot;mp3`&amp;quot;,ab=`&amp;quot;$bitrate`&amp;quot;,`&amp;quot;channels=$channels`&amp;quot;}:standard{access=`&amp;quot;file`&amp;quot;,mux=`&amp;quot;wav`&amp;quot;,dst=`&amp;quot;$outputFileName`&amp;quot;} vlc://quit&amp;quot;&lt;br /&gt;
      &lt;br /&gt;
      start-process $processName $processArgs -wait&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
=== Unix / Linux ===&lt;br /&gt;
&lt;br /&gt;
 vcodec=&amp;quot;h264&amp;quot;&lt;br /&gt;
 acodec=&amp;quot;mp4a&amp;quot;&lt;br /&gt;
 bitrate=&amp;quot;1024&amp;quot;&lt;br /&gt;
 arate=&amp;quot;192&amp;quot;&lt;br /&gt;
 ext=&amp;quot;mpg&amp;quot;&lt;br /&gt;
 mux=&amp;quot;ts&amp;quot;&lt;br /&gt;
 vlc=&amp;quot;/usr/bin/vlc&amp;quot;&lt;br /&gt;
 fmt=&amp;quot;VOB&amp;quot;&lt;br /&gt;
 dst=&amp;quot;/home/user/&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 for a in *$fmt; do&lt;br /&gt;
 $vlc -I dummy -vvv &amp;quot;./$a&amp;quot; --sout &amp;quot;#transcode{vcodec=$vcodec,vb=$bitrate,acodec=$acodec,ab=$arate,channels=6}:standard{mux=$mux,dst=\&amp;quot;$dst$a.$ext\&amp;quot;,access=file}&amp;quot; vlc://quit&lt;br /&gt;
 done&lt;/div&gt;</summary>
		<author><name>Kevb0</name></author>
	</entry>
</feed>