Enabling Fraunhofer IIS MPEG Layer-3 Codec (Professional) in Windows Vista / Windows Server 2008

This article is a guide on how to enable Fraunhofer MP3 ACM codec in Windows Vista / Windows Server 2008.
MP3 Logo

Microsoft says in KB937141 that we are not allowed to produce MP3 using Fraunhofer IIS MPEG Layer-3 ACM codec, and that it’s because of Microsoft’s licensing restrictions—or as District Judge Rudi Brewster prefers, patent infringement issues. If we need to encode our favorite MPEG-2 files to AVI (DivX + MP3) using VirtualDub, we need to solve this problem. VirtualDub doesn’t have its own encoders, so it relies on Windows Audio Compression Manger (ACM) codecs for audio encoding purposes. The most idiotic solution to fix codec problems is to install a codec pack, like K-Lite. Some might say what about LAME ACM, it’s free. But the answer is LAME ACM produces asynchronous audio over video even in CBR mode, when used in VirtualDub.

MP3 ACM Restrictions in Windows Vista / Windows Server 2008

By default both advanced (l3codeca.acm) and professional (l3codecp.acm) ACM codec files are installed in the System32 folder of Windows Vista / Server 2008, but the advanced edition is activated rather than the professional, and that means we’re stuck at low-quality 56 kbps monaural audio, which I can’t tolerate personally. So we need to activate the professional edition (l3codecp.acm).

Automated Fix—Chortkeh Fraunhofer IIS MPEG Layer-3 Codec Fix for Windows 7 / Vista

I’ve made a command-line script patch to enable Fraunhofer IIS MPEG Layer-3 ACM Codec in Windows Vista / Windows Server 2008. Download and run the CMD patch file. Because it needs administrative privileges, it’s needed to be run as administrator when you’re not logged in as administrator.

Download Link
  • Download Chortkeh Fraunhofer IIS MPEG Layer-3 Codec Fix for Windows 7 / Vista by Komeil Bahmanpour

Fixing by Yourself [Updated July 4, 2013]

Registry Changes Required for the Activation of Fraunhofer IIS MPEG Layer-3 Codec (Professional)
Native Fix – Required for Both 32-Bit and 64-Bit Windows Architectures

Convert instances of l3codeca.acm into l3codecp.acm.

  1. In HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\drivers.desc there should be a REG_SZ value named “C:\Windows\System32\l3codecp.acm” (or simply “l3codecp.acm”) with data of “Fraunhofer IIS MPEG Layer-3 Codec (professional)”.
  2. In HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32 there should be a REG_SZ value named “msacm.l3acm” with data of “C:\Windows\System32\l3codecp.acm” (or simply “l3codecp.acm”).

There shouldn’t be any instances of l3codeca.acm remained. Remove if any.

WoW64 (Windows on Windows 64) Fix – Required for 64-Bit Windows Architecture (when 32-Bit applications need Fraunhofer MP3 encoder)

Convert instances of l3codeca.acm to l3codecp.acm.

  1. In HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\drivers.desc there should be a REG_SZ value named “C:\Windows\SysWOW64\l3codecp.acm” (or simply “l3codecp.acm”) with data of “Fraunhofer IIS MPEG Layer-3 Codec (professional)”.
  2. In HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32 there should be a REG_SZ value named “msacm.l3acm” with data of “C:\Windows\SysWOW64\l3codecp.acm” (or simply “l3codecp.acm”).

Now, there shouldn’t be any instances of l3codeca.acm remained. Remove if any.

Other Registry Keys to Check Just in Case

Although the following keys are set in Windows by default, you might like to investigate them personally:

  • HKLM\SOFTWARE\Microsoft\AudioCompressionManager\DriverCache\msacm.l3acm\aFormatTagCache: 0100000010000000550000001e000000
  • HKLM\SOFTWARE\Microsoft\AudioCompressionManager\DriverCache\msacm.l3acm\cFilterTags: 0
  • HKLM\SOFTWARE\Microsoft\AudioCompressionManager\DriverCache\msacm.l3acm\cFormatTags: 2
  • HKLM\SOFTWARE\Microsoft\AudioCompressionManager\DriverCache\msacm.l3acm\fdwSupport: 1
Registry Keys Dropped in Comparison to Windows XP / Windows Server 2003

The following keys were also defined in media resources section of Windows XP / Windows Server 2003, but they’re no longer required:

  • HKLM\SYSTEM\CurrentControlSet\Control\MediaResources\msacm\msacm.l3acm\Driver: l3codecp.acm
  • HKLM\SYSTEM\CurrentControlSet\Control\MediaResources\msacm\msacm.l3acm\Description: Fraunhofer IIS MPEG Audio Layer-3 Codec (professional)
  • HKLM\SYSTEM\CurrentControlSet\Control\MediaResources\msacm\msacm.l3acm\FriendlyName: Fraunhofer IIS MPEG Audio Layer-3 Codec (professional)
Windows 7 Support [Updated August 10, 2009]

The same patch as described above works fine with all editions of Windows 7 x86 (32-bit) and Windows 7 x64 (64-bit). Again please note changing Registry system configuration requires administrative privileges, so you need to be logged in as Administrator, or run the patch as administrator.

Changelog

Revision 4 (July 4, 2013)
  • Supported Windows on Windows 64 (WoW64)
  • Changed into path qualifier (%SystemRoot%\System32\l3codecp.acm for x86/x64 and %SystemRoot%\SysWOW64\l3codecp.acm for WoW64) instead of filename (l3codecp.acm) style
  • Supported error message whenever it’s not being run as administrator
  • Hidden reg delete error messages including ERROR: The system was unable to find the specified registry key or value.
Revision 3 (July 6, 2009)
  • Dropped adding msacm.l3codec under HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
Revision 2 (June 29, 2008)
  • Added checking to see if initial directory differs from SystemRoot%\System32 to show run as administrator warning message.

35 thoughts on “Enabling Fraunhofer IIS MPEG Layer-3 Codec (Professional) in Windows Vista / Windows Server 2008

  1. Today I needed to enable the l3codecp.acm (Fraunhofer IIS MPEG Layer-3 Codec Professional) in Windows 7 x64 to encode something in VirtualDub 64-bit. The patch described above worked like a charm in Windows 7 64-bit.

  2. This article give me help very much! Thanks author! Recently, I have been doing a program about of MPEG Layer-3,On OS xp, I found that 56 kbps monaural audio channels is max value which I can’t tolerate too. On OS vista ,the MPEG Layer-3 is cann’t connected! With this article,these problem had been solved easily! Thanks!

  3. I am running Vista. How would I go about getting this to work on it? I looked for those values but came up with nothing. Any help greatly appreciated

  4. I used the fix in windows 7 x64 Englisch version

    and i receive next massage.

    +—————————————————————————-+
    ¦ Windows Vista Fix for Fraunhofer IIS MPEG Layer-3 Codec ¦
    ¦ Revision 3 ¦
    ¦ July 6, 2009 ¦
    ¦ Copyright (C) 2007-2009 Chortkeh. All rights reserved. ¦
    +—————————————————————————-+

    Removing the advanced edition of Fraunhofer IIS MPEG Layer-3 Codec…
    ERROR: The system was unable to find the specified registry key or value.

    Activating the professional edition of Fraunhofer IIS MPEG Layer-3 Codec…
    The operation completed successfully.
    The operation completed successfully.

    Press any key to continue . . .

    I used it a few times and checked the registry but i can’t detect a typo here however it is not working in Virtualdub

    Can anybody help me with this problem?

    thanks

    • The Fix should work with Windows 7 x64 English. You need to check your Registry using RegEdit.exe to see if those keys are there.

      Also check the following registry key out:

      HKEY_CURRENT_USER\Software\Microsoft\ActiveMovie\devenum\{33D9A761-90C8-11D0-BD43-00A0C911CE86}\85MPEG Layer-3

      It’s where the ACM wrapper for the MP3 codec is defined as ACM ID 0×00000055 (85) and its friendly name is specified via FriendlyName string value.

      The ERROR message is shown because you “used it a few times.” In fact, you shouldn’t see the error during the first run of the Fix on an unfixed installation of Windows. Once patched, the ERROR message will be shown during further runs of the Fix, but meaning no harm.

      What you’re looking for in VirtualDub is “MPEG Layer-3″ (MP3 codec’s FriendlyName) inside “Select audio compression.”

  5. I am using the Fraunhofer IIS MPEG Layer-3 Codec with two different programs, VirtualDub 1.9.9 and Freez Screen Video Capture 1.2.

    After installing the codec and successfully running the patch, VirtualDub finds the codec, but Freez does not. The registry reveals:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\drivers.desc:

    Name: Type: Value:
    ac3filter.acm REG_SZ AC3Filter ACM codec
    ac3filter64.acm REG_SZ AC3Filter64 ACM codec
    C:\Windows\System32\l3codecp.acm REG_SZ Fraunhofer IIS MPEG Layer-3 Codec
    ff_vfw.dll REG_SZ ffdshow Video Codec
    l3codecp.acm REG_SZ Fraunhofer IIS MPEG Audio Layer-3 Codec (professional)
    wdmaud.drv REG_SZ SB Live! 24-bit
    xvidvfw.dll REG_SZ Xvid MPEG-4 Video Codec

    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
    msacm.l3acm REG_SZ l3codecp.acm

    The registry key:
    HKLM\SOFTWARE\Microsoft\AudioCompressionManager

    …does not exist.

    The key:
    HKEY_CURRENT_USER\Software\Microsoft\ActiveMovie\devenum\{33D9A761-90C8-11D0-BD43-00A0C911CE86}\

    …exists, but is empty.

    Running Vista w/SP1, and SystemInfo shows the MPEG Layer-3 Codec (version 3.4.0.0) is installed properly.

    I have used the codec with Freez before, but I am having this problem since I had to reinstall everything, so my hard disk is relatively clean.

    Can you help?

    Thanks in advance, and thanks for a VERY helpful and informative site.

    • Maybe the problem is where your HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\drivers.desc contains two l3codecp.acm keys: One with the full path specified, and one without. This will probably cripple Freez. I’m confused, if you have run my patch (chortkeh-fix-mp3-codec.cmd), the patch would have successfully deleted the one with the full path (C:\Windows\System32\l3codecp.acm). I’m guessing you were neither logged in as Administrator, nor ran my patch as administrator.

    • im sorry but now MPEG layer3 wont work in my sony vegas but i can see him in programm. also i cant see codec at hypercam.any way to reinstall MPEG layer3 or some fix?

  6. Komeil, thanks for an amazingly useful site. After struggling with ALAC/FLAC/WMAL/etc I reached the conclusion there really is no such thing as “lossless encoding”. They all sound like garbage compared to Fraunhofer Pro MP3s.

    • You’re welcome. BTW, lossless files are the bit-for-bit equivalent of the ripped CD’s huge WAV files, only smaller in size because of the lossless compression. Size aside, there’s no way for MP3 (or any other lossy format) to compete. I think there’s a problem with your player / decoder.

      • Well as far as “equivalent” I have just two words: lowpass filter.

        To my ears ALAC is hollow in the upper end, FLACs and WMAL have ringing problems etc. Apple and other vendors are careful to call their codecs mathematically lossless, because accuracy in mathematics doesn’t necessarily equate to pleasing sound quality. Fraunhofer’s developers are audio engineers not computer geeks, they’re 10 years ahead of everyone else in figuring out how to eliminate problems that still plague the lossless encoders I’ve tried.

        • I don’t know about ALAC, I’m not an Apple fanboy. But I know for sure both FLAC and WMAL can reproduce the exact WAV when played back; in other words the result is a bit-for-bit duplicate of the original audio file.

          Reconsider your thoughts. Where’s the LPF? I know it’s hard to believe, because if you ZIP a WAV, it’d only get compressed by 10–20%, but these audio-specific compression algorithms use linear prediction to convert the audio fixed-point PCM samples to a series of small uncorrelated numbers—known as the residuals—that are typically reduced to 50–60% of their original size. As a test, convert a ripped CD track from WAV to FLAC and then back again to WAV, now binary compare the WAV files. For skeptics out there, esteemed audio conversion utilities such as dBPowerAmp have an option for you to check the produced FLAC / WMAL against the original WAV file.

          You want me to believe all the audiophiles archiving (ripping their precious CDs on hi-end CD-ROM drives and losslessly compress the WAV) utilizing FLAC (WMAL produces smaller files in comparison, but FLAC is more widely supported by hi-end players) are losing tiny audio pieces comparing to the original CD? No way.

          I’m done arguing.

          • Komeil, we’re not arguing. Especially since we agree on Apple. :) I know nothing is lost from WAV to lossless codecs. I’m saying certain things are lost in the CDA<>PCM process that Fraunhofer has been working 25+ years to replace.

    • Thanks, but I think it’s not working properly, since you don’t have to check for errors (if errorlevel 1) after reg delete command as it’s probable not to have all those keys present. I’m pretty busy right now, but I’m going to fix the CMD file later.

  7. For Win7x64 another registry entry needs to to be updated.

    After applying your patch I was still getting the odd EventID 3002 error message, specifically when I RDP into the Win7x64 machine from an XP32 machine. Further research I found the following change is also required for a full clean-up.

    In the following key:
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32

    Change the “msacm.l3acm” entry
    from: “C:\Windows\SysWOW64\l3codeca.acm”
    to: “C:\Windows\SysWOW64\l3codecp.acm”

    Regards,
    Rick

  8. Hello dear friend Komeil,

    I am using Win 7 64 and have run your program as administrator, I am also using Acronis Try and Decide so I can undo any changes I don’t want on the HD. Each time I have run your nice program it says it completed successfully, yet when I open my :Audiograbber v1.83: and look at the selection of codecs nothing has changed. I have also rebooted thinking maybe that was the trouble but it wasn’t. I know that registry entries are instant and don’t need a reboot. But what the heck it’s worth a try.

    I am successfully using the Fraunhofer codec in Win XP Pro and have for many years. It appears in the list of codecs I can use in Audiograbber.

    Can you tell me what you think might be the trouble?

    Thank you very much I appreciate what you have done! I have screen shots of the Fraunhofer codec being listed in the Audiograbber running on XP if you’d like to see them.

    • Hi,

      Audiograbber is a 32-bit application naturally requiring 32-bit libraries. The ripping process (CD-DA PCM → WAV) is inbuilt, but having it run on a 64-bit Windows, encoding media (WAV → MP3) is a case of WoW64 (Windows on Windows 64) ACM (Audio Compression Manger) dependency.

      Download the patch again and see if it works. The new Revision 4 (of July 4, 2013) supports WoW64.

      Enjoy and happy 4th of July to all Americans!

      • Hello Komeil,

        I am sorry to report that I downloaded your latest cmd program and ran it as administrator on my Win 7 64 system trying to get the codecs to appear in Audiograbber.

        I ran the patch twice and each time it showed success. When I run regedit I see that the keys you’d like to be changed are still the same as they were.

        IE: All the keys under “Other Registry Keys to Check Just in Case” are all still in place as you list them.

        Am I understanding that I can change my keys to what you want using the ” Fixing It Yourself” lines?

        I hate to make registry changes on my own I like the idea of YOU making a nice program that allows it to be done automatically!

        So right now I haven’t changed anything even though the program indicates I did!

        Thank you again for your hard work!

        J Tinsby

        • 1. The recent CMD patch file (Rev 4 of 7/4/2013) checks for being run as admin and throws an error if there’s a problem with that. So that’s not the case here. If it doesn’t display an error message, then you’re fine with that.
          2. The recent patch should display at least two sets of two (a total of 4) “The operation completed successfully” and NO error messages in x64 systems, and then wait for your “any” key. Anything other than that and there’s something wrong.
          3. Check to see if both C:\Windows\System32\l3codecp.acm (178 kB) and C:\Windows\SysWOW64\l3codecp.acm (215 kB) do exist. Note the sizes.
          4. The part I mentioned BEFORE “Other Registry Keys to Check Just in Case” is important, not the part itself. Try checking both native (x64 in your case) and WoW64 keys. On an x64 system, the 32-bit Audiograbber depends on WoW64-based codecs.
          5. The “Other Registry Keys to Check Just in Case” is not to be changed, removed, or even investigated. As its title suggests, it’s not necessary to check, and most importantly, the patch does not patch there. In your case, it’s not important at all.
          6. To make sure, I downloaded, installed, and opened Audiograbber 1.83 Special Edition. Fraunhofer IIS MPEG Audio Layer-3 Codec (professional) is on the list.

          • Dear Friend Komeil.

            Thank you very much for all your efforts to help me.

            I must say that when I right click your .cmd program and choose Run as Admin then click the program, the DOS box comes and goes so fast that I cannot read anything in it! It seemed that at one time it went slowly so I could read what was being indicated, now I cannot do that.

            Sorry I misunderstood your directions about changing the registry! Good thing I had the sense to ask you about it.

            I too am running Audi grabber 1.83 SE I didn’t re-install it but I can do very easily. You should note that I have disabled my virus scanner when I run your program, even though it made no difference.

            I will do as you suggest in Part $ above and see what I find there.

            I think you would agree that once the codecs are enabled Audiograbber should see them immediately. Or should I simply re-install AG 1.83 SE and maybe everything is fine and I don’t know it?

            Regards and thanks again,

            J Tinsby

          • Hello again Komeil,
            First I removed and re-installed AG SE to no avail, the Fraunhofer’s aren’t listed as yet.
            Following your directions above I was able to find that I find all the OLD HKLM Software keys including those needed for WoW64 are all in place and have not been changed to the Professional ones.

            I will backup the registry and make the changes manually as you describe them. I don’t know what else to do at this point.

            Thank you as always,

            J Tinsby

          • Komeil,

            I am happy to report that I WAS able to get your program to work in Win 7 64! Now I can use the Fraunhofer codecs in AudioGrabber if I need to.

            Many thanks for your work!

            J Tinsby

  9. Hi,
    I have different type of music file, I need to calculate music duration and i need to play. So can you suggest me.
    I have to use wav, wma, aiff, mp3, mp4 file name. So i need to calculate total music duration and play the song. But currently i am capable to calculate music duration and play music only mp3.
    Please help me.

Leave a Reply

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

CAPTCHA Image

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>