title
Products            Buy            Support Forum            Professional            About            Codec Central
 
Page 1 of 3 123 LastLast
Results 1 to 15 of 84

Thread: Enhanced AACPlus (AACPlus v2) Codec

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Join Date
    Feb 2005
    Posts
    17

    Arrow Enhanced AACPlus (AACPlus v2) Codec

    Well, I've developed a CLI codec for Enhanced AACPlus, aka AACPlus v2, aka AAC+SBR+PS using the reference encoder sourcecode provided by Coding Technologies. I had to modify the source a little bit because the encoder wants only 48kHz or 32kHz audio, but the only forceable sample rate dbPowerAmp provides is 44.1kHz. Audio quality should not change much (if at all) due to this patch.

    Finding a player may however be a problem. As it is, Winamp supports AACPlus in streams, but not as a file. The codec produces files with the extension .mp4 which will allow all other players to play back the file properly. Winamp will just drop the SBR Data and the sound quality will be quite bad. Other players such as Windows Media Player and VideoLAN are known to play the files correctly. If you want to verify that they are actually being encoded with AACPlus and not just AAC, you can run the output file through the included EnhAacPlusDec.exe program - just run from the command line and play the .wav file it produces in your favourite audio player.

    http://home.cwru.edu/~bes7/db_EnhAACPlus_650.zip

    Version History:

    Version 650 is out. This is an update release - now based on the Coding Technologies 650 release found at the 3gpp website. It changes some of the low-bandwidth encoding modes around, fixes a bug with 32kbps mono, and should actually sound a bit better. This is because Coding Tech updated their tuning table to work with 44.1kHz audio, so actually all I did was add ths higher bitrate support (up to 64kBps stereo). That's right - the Coding Tech reference encoder should now be able to work with dMC without any patching by me :) Also, it's now compiled with VC8 (Visual Studio 2005). I was unable to increase the bitrate beyond 64kBps Stereo/32kBps Mono due to what I believe are register size limitations.

    Version 630 is out. This is an update release - now based on the Coding Technologies 630 release found at the 3gpp website. It adds a 10kbps mono mode and makes general tweaks all around.

    Version 1.2 is out. This fixes many problems with various bitrates not encoding properly, or at all. Mono encoding was bumped back to max 32kbps, since the program bails at anything higher than that. Stereo encoding still works all the way up to 64kbps.

    Version 1.1 is out with requested feature - stereo encoding up to 64kbps and mono encoding up to 48kbps (though if you ask me you can't tell the difference).

    ------------

    I should mention that the source code for the Coding Technologies reference encoder is freely available as part of the 3gpp specifications at http://www.3gpp.org/ftp/Specs/html-info/26410.htm

    If you want to build this encoder yourself, grab the source at:
    http://www.3gpp.org/ftp/Specs/archiv.../26410-630.zip

    And then apply my patch located at: http://home.cwru.edu/~bes7/sbr_main.c.patch.630

    Edit by LtData: Version 750 is here: http://forum.dbpoweramp.com/showpost...1&postcount=62
    Edit2 by LtData: This encoder is ONLY for dMC r11.5 and older, it does NOT work with dMC r12 and newer.
    Last edited by LtData; 04-28-2007 at 02:01 AM. Reason: pointed to new version, as user was unable to edit himself

  2. #2
    Administrator
    Join Date
    Apr 2002
    Posts
    43,852

    Re: Enhanced AACPlus (AACPlus v2) Codec

    >.3gp

    This is for mobile phones?

  3. #3

    Join Date
    Feb 2005
    Posts
    17

    Re: Enhanced AACPlus (AACPlus v2) Codec

    Not exactly. The Enhanced AACPlus encoding technology is being examined by the 3gpp (3rd Generation Partnership Project) for use in future mobile products. As such, Coding Technologies released the sourcecode to their Enhanced AACPlus encoder and decoder to 3gpp, who made it freely available on their website. Since Enhanced AACPlus is used almost primarily in streaming right now, there's not exactly an official extension for the Enhanced AACPlus encoded files. I guess the 3gpp just decided to use .3gp for now.

    --Brandon Siegel

  4. #4

    Join Date
    Feb 2005
    Posts
    7

    Red face Re: Enhanced AACPlus (AACPlus v2) Codec

    I get files with the extension : .aac.
    But my ipod only support .m4a.

  5. #5

    Join Date
    Feb 2005
    Posts
    17

    Re: Enhanced AACPlus (AACPlus v2) Codec

    You should be fine just changing the extension to .m4a (not .m4p as that's a DRM-protected file) but I doubt the iPod knows what to do with the Extended data, and thus the sound won't likely be very good.

    --Brandon Siegel

  6. #6

    Join Date
    Feb 2005
    Posts
    7

    Re: Enhanced AACPlus (AACPlus v2) Codec

    Yes,You are right! I change the extension to .m4a then put it into ipod,but ipod does not know it. :(

  7. #7

    Join Date
    Aug 2006
    Posts
    1

    Re: Enhanced AACPlus (AACPlus v2) Codec

    According to the 3GPP TS 26.401, their codec implements the HE AAC Profile at Level 2.
    Unfortunately, I need the level-3 code now.
    And I'm trying to extend the code to Level-3, but it seems to be not easy.

    (Level-2: Max AAC sampling rate (SBR present) = 24)
    (Level-3: Max AAC sampling rate (SBR present) = 24/48)
    (Level-2: Max SBR sampling rate (in/out) = 24/48)
    (Level-3: Max SBR sampling rate (in/out) = 48/48)

    Could you provide any comments to the Layer-3 extension task ?
    Thanks in advance.

  8. #8

    Join Date
    Apr 2005
    Location
    Poland,Kobylany
    Posts
    3

    Re: Enhanced AACPlus (AACPlus v2) Codec

    hello

    This Codec won't encode at 32kbps...... :blush:

    cmd->enhAacPlusEnc input.wav output.mp4 32000 s -> and seems not encode..

    and not encode at 28 kbps up to 43 kbps. I play files encode at 32kbps but is no sound :cry:

    Files I encoded with codec at 18kbps up to 27kbps and at 44kbps up to 67 kbps plays on foobar2000 and Winamp. Sound is playing. I replaced the Winamp in_mp4.dll with the one at AudioCoding site http://www.audiocoding.com/...
    Last edited by mariusziwan; 04-09-2005 at 08:30 AM.

  9. #9

    Join Date
    Feb 2005
    Posts
    17

    Re: Enhanced AACPlus (AACPlus v2) Codec

    Ah, you're right. Basically, the code defines variables about what the output should be like for a range of frequencies. This is from the encoder source:
    Code:
      { 18000, 24000,  22050, 2,  4,  2, 1, 0, -3, SBR_SWITCH_LRC, 3 }, /* nominal: 18 kbit/s */
      { 24000, 28000,  22050, 2,  5,  6, 1, 0, -3, SBR_SWITCH_LRC, 3 }, /* nominal: 24 kbit/s */
      { 28000, 36000,  22050, 2,  7,  8, 2, 0, -3, SBR_SWITCH_LRC, 2 }, /* nominal: 32 kbit/s */
      { 36000, 44000,  22050, 2, 10,  9, 2, 0, -3, SBR_SWITCH_LRC, 2 }, /* nominal: 40 kbit/s */
      { 44000, 52000,  22050, 2, 12,  9, 3, 0, -3, SBR_SWITCH_LRC, 2 }, /* nominal: 48 kbit/s */
      { 52000, 60000,  22050, 2, 12,  9, 3, 0, -3, SBR_SWITCH_LRC, 2 }, /* nominal: 56 kbit/s */
      { 60000, 68000,  22050, 2, 12,  9, 3, 0, -3, SBR_SWITCH_LRC, 2 }, /* nominal: 64 kbit/s */
    The definition for 32kbit/sec (actually, variable from 28 to 36 kbit/sec) doesn't work right. I'll play with the variables specified and see if I can find a combination that sounds good, and encodes right. Thanks for the bug report!

    --Brandon Siegel

  10. #10

    Join Date
    Apr 2005
    Location
    Poland,Kobylany
    Posts
    3

    Re: Enhanced AACPlus (AACPlus v2) Codec

    No problemo....

  11. #11

    Join Date
    Apr 2005
    Posts
    1

    Re: Enhanced AACPlus (AACPlus v2) Codec

    Hi bsiegel,

    Any luck in getting the 28-36kbit/s bitrates working? I'm amazed at the quality of 24k and 32k would be really nice, if I can somehow find a way to impliment it into a streaming application.

    Cheers.

  12. #12

    Join Date
    Feb 2005
    Posts
    17

    Re: Enhanced AACPlus (AACPlus v2) Codec

    I've got to mess around with the settings some more. I'm not entirely sure why it's cutting out for that segment of desired output rates. Even if I copy the tuning settings from another bitrate segment that's known to work, it still can't encode in that one specific segment. I'm going to try rolling back the hack I made to add higher bitrates and see what that does, because, even if I doubt that has any relationship or effect on the problem, I can't imagine the original codec having this problem. I'll keep at it and post here when I've got the problem nailed.

    --Brandon Siegel

  13. #13

    Join Date
    Feb 2005
    Posts
    17

    Re: Enhanced AACPlus (AACPlus v2) Codec

    Well, I put off studying a bit and played with the code, trying to see what part of the tuning table was breaking the encoder, and it took me a while to realise that from 16kbps to 36kbps, the encoder activates SBR (spectral band replication) to boost the quality of the encoding, but this causes it to use tuning data from the mono tuning table. Above 36kbps, it uses data from the stereo tuning table. Anyhow, the link's been updated in the first post - go grab it.

    --Brandon Siegel

  14. #14
    dand's Avatar
    Join Date
    Aug 2005
    Posts
    1

    Question Re: Enhanced AACPlus (AACPlus v2) Codec

    Quote Originally Posted by bsiegel
    Well, I put off studying a bit and played with the code, trying to see what part of the tuning table was breaking the encoder, and it took me a while to realise that from 16kbps to 36kbps, the encoder activates SBR (spectral band replication) to boost the quality of the encoding, but this causes it to use tuning data from the mono tuning table. Above 36kbps, it uses data from the stereo tuning table. Anyhow, the link's been updated in the first post - go grab it.
    --Brandon Siegel
    How did you figure out which settings to use for 44100 Hz audio at different bitrates?
    Thanks,
    Daniel

  15. #15

    Join Date
    Feb 2005
    Posts
    17

    Re: Enhanced AACPlus (AACPlus v2) Codec

    Releasing a new version based on the 630 codebase that is provided at the 3gpp website. Adds a 10kbit/sec mono encoding mode and makes general encoding improvements all around. Please replace your current version with the one linked in the first post of this topic.

    Also, the code for this is open so if someone wants to go ahead and make a linux build or whatnot, the instructions are also in the first post.

    --Brandon Siegel
    Last edited by bsiegel; 09-09-2005 at 05:21 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •