Convert LOTS of files to M4A/OGG


  1. Posts : 13
    Windows 10 Home (1803 Build 17134.590)
       #1

    Convert LOTS of files to M4A/OGG


    Anyone know of any good audio utilities that can batch convert tons (we're talking 1,000's) of audio files into both M4A & OGG? I really don't wanna have to manually convert each file in Audacity...

    (Preferably to both formats simultaneously, but not necessarily)
      My Computer


  2. Posts : 2,487
    Windows 10 Home, 64-bit
       #2

    What format are the files right now? WAV?

    I've used both Freemake and Mobile Media Converter successfully, but I'm not sure if they can output to your chosen formats. I usually just deal with WAV, mp3, and mp4. I've used MMC for maybe 50 or 100 files at a time and I can't say if it would choke on thousands at one swallow.
      My Computer


  3. Posts : 31,651
    10 Home x64 (22H2) (10 Pro on 2nd pc)
       #3

    DjDave238 said:
    Anyone know of any good audio utilities that can batch convert tons (we're talking 1,000's) of audio files into both M4A & OGG? I really don't wanna have to manually convert each file in Audacity...
    FFmpeg can convert to both formats: FFmpeg

    It is a command line utility, so can be used in a Command Prompt FOR loop to process multiple files. The basic command (assuming your originals are all .wav files) would be:

    for %n in (*.wav) do ffmpeg -i "%n" "%n.m4a"

    This can be added to in order to do both conversions.

    for %n in (*.wav) do (ffmpeg -i "%n" "%n.m4a" & ffmpeg -i "%n" "%n.ogg")

    The drawback of this would be that the output files would all end up named <original name>.wav.m4a (or *.wav.ogg) with an unwanted .wav. included in the new name. To get round this we need to work from a list of the file names without the .wav extension.Generate one with:

    for %a in ("*.wav") do @echo %~na >>list.txt

    Now we can use this list in a FOR /F loop for FFmpeg. NB: the following will only succeed if ALL the filename do NOT have spaces in them.

    for /f %n in (list.txt) do (ffmpeg -i "%n.wav" "%n.ogg" & ffmpeg -i "%n.wav" "%n.m4a")

    NB: if you wish to write the FOR loop in a batch file, then you need to use a double %% instead of the single %

    If you wish to control the quality of the encoding then FFmpeg has options for that. See:

    Encode/HighQualityAudio | FFmpeg

    TheoraVorbisEncodingGuide | FFmpeg

    Encode/AAC | FFmpeg

    and the FFmpeg documentation. FFmpeg Documentation


    It may well be possible to use Powershell commands to call FFmpeg rather than a command prompt, but I am not well versed in Powershell. Perhaps an expert could suggest a more elegant way using Powershell?
    Last edited by Bree; 18 Mar 2019 at 21:12.
      My Computers


  4. Posts : 11,247
    Windows / Linux : Arch Linux
       #4

    Hi there

    @DjDave238

    Try this but I think you'll need a Linux distro to do it though. (Use a VM or live distro)

    Correction - on the downloads page there are Windows versions.

    fre:ac - free audio converter

    Cheers
    jimbo
      My Computer


  5. Posts : 13
    Windows 10 Home (1803 Build 17134.590)
    Thread Starter
       #5

    Thank you all!
      My Computer


 

  Related Discussions
Our Sites
Site Links
About Us
Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

© Designer Media Ltd
All times are GMT -5. The time now is 12:24.
Find Us




Windows 10 Forums