Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Real Player 10 - First Impressions of AAC Support (Read 25274 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Real Player 10 - First Impressions of AAC Support

Reply #25
Quote
M: We still use ACELP.net codec as our voice codec, with 4cc SIPR, but I have not heard any plans to enable it to be packaged in M4A.

AFAIK, Sipro Lab's ACELP.net is not compatible with MPEG4's CELP.

Real Player 10 - First Impressions of AAC Support

Reply #26
installed the beta in my crashbox and even decided to upgrade it to the final release just now. Looks very decent for realplayer and the intended audience <which is admittedly not me>. Looks confusing next to the simple clean interface I am used to. Trying to just convert a wav file and it seems to be escaping me after looking through all the menus (edit: as in greyed out) - oh well.
the preview of the online music files do sound quite sharp though.

Real Player 10 - First Impressions of AAC Support

Reply #27
The_Cisco_Kid: I am afraid the Convert Media option is available only in the Plus player (or when subscribed to "SuperPass").

Via the helix community one can however obtain a free command line Producer that encodes to our AAC format, as well as a cmd line tool to convert losslessly from AAC to M4A, M4A to AAC, RM to M4A, AAC to RM, RM to AAC, RM to M4A.
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.

Real Player 10 - First Impressions of AAC Support

Reply #28
Quote
AFAIK, Sipro Lab's ACELP.net is not compatible with MPEG4's CELP.

Roberto: Really? Drat. This post by menno indicated that Sipro's codec was the one supported by iTunes and the iPod, and Sipro's website confirms it (although I have not been able to find any documentation on the *.aa container - if *.aa is even a container, and not just a raw stream!), so trying *.mp4/*.m4a seemed a logical approach.

  karl_lillevold: I revived an old Helix account and downloaded helixproducer_10_beta_windows.zip, rmto3260.zip and dtdrive_032404.zip. It appears (if I understand what I've read so far) that dtdrive not only has the capability of transmuxing, but directly encoding to any specified container from a *.wav source. But so far I've had little luck in figuring out the exact usage of the switches, since the internal "help" is a little on the minimalistic side. From rough guesswork, the following seemed a logical approach to transcoding WAV>ACELP:
Code: [Select]
dtdrive -EAIF SIPR -EAR 16000 audio-input.wav

  ... although since that only produces the following message, I know it is either incomplete or flat-out wrong:
Code: [Select]
*******************************************************************************
****** Begin File=audio-input.wav Protocol=Unspec. ShortName=Unspec. **********
*******************************************************************************
Drive time: 0.012000 seconds.
Failed.

  Any assistance with a working WAV>ACELP.net example would be appreciated.  (And if dtdrive is not yet able to create files in the *.aa format - however that may be structured - could this be added to the list of desirable features?)

    - M.

Edit: Added a small bit....

Real Player 10 - First Impressions of AAC Support

Reply #29
I have not used dtdrive much for other than conversions. I think the problem you have is that it can not find its DLLs. Set HELIX_LIBS or use option -L. However, even with this set, and using -EA instead of -EAIF, it fails. I will ask, but in the meantime, producer works:


producer.exe -i file.wav -o file.rm -ad ap.rpad -lc e,d


ap.rpad:
Code: [Select]
<?xml version="1.0"?>
<audience>
 <avgBitrate type="uint">16000</avgBitrate>
 <maxBitrate type="uint">16000</maxBitrate>
 <streams>
   <audioStream>
     <pluginName type="string">rn-audiocodec-realaudio</pluginName>
     <codecName type="string">sipr</codecName>
     <codecFlavor type="uint">3</codecFlavor>
     <streamContext type="bag">
       <presentationType type="string">audio-only</presentationType>
       <audioMode type="string">music</audioMode>
     </streamContext>
   </audioStream>
 </streams>
</audience>


Converting this .rm to .m4a also fails, because I think the m4a writer only supports AAC for now. It is however open source
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.

Real Player 10 - First Impressions of AAC Support

Reply #30
Thank you for such a quick response! I've just tested the method outlined above, and it works just fine.

  Additionally, for anyone who might be interested in using this method with Speek's Batchenc frontend, simply copy the entire contents (all files and subfolders, as they are shown) from the extracted "producer" directory to wherever your the Batchenc frontend is located. Copy "ap.rpad" (as Karl described it, above) to the "audiences" sub-directory. Conversion can then be invoked through Batchenc with this line:
Code: [Select]
producer.exe -i <infile> -o <outfile.rm> -ad ap.rpad -lc e,d

  Still no luck in getting this to a format iTunes/iPod will accept... but it's a start!

  dtdrive seems to be finding the DLLs, since I can successfully transmux an AAC-RM to M4A using dtdrive file.rm -W file.m4a. But when an ACELP-RM is used as input with the same line, the following is displayed:
Code: [Select]
*******************************************************************************
****** Begin File=file.rm Protocol=Unspec. ShortName=Unspec. ******************
*******************************************************************************
====== Begin File Header ======================================================
Flags                    = 9
IsRealDataType           = 1
StreamCount              = 1
AllAudioCodecs           = sipr
Audiences                = ap;
audioMode                = music
Creation Date            = 3/26/2004 16:59:17
Generated By             = Helix DNA(TM) Producer 10.0 for Windows, Build 10.0.
                          0.195
Modification Date        = 3/26/2004 16:59:17
videoMode                = normal
====== End File Header ========================================================
------ Begin Stream Header = 0 ------------------------------------------------
ActualPreroll            = 960
AvgBitRate               = 16000
AvgPacketSize            = 320
Duration                 = 30720
EndOneRuleEndAll         = 1
EndTime                  = 30000
MaxBitRate               = 16000
MaxPacketSize            = 320
Preroll                  = 1920
StreamNumber             = 0
ASMRuleBook              = priority=5,averagebandwidth=16000,PNMKeyFrameRule=T;
                          priority=5,averagebandwidth=0,PNMNonKeyFrameRule=T,O
                          nDepend="0",OffDepend="0";
intrinsicDurationType    = intrinsicDurationContinuous
MimeType                 = audio/x-pn-realaudio
StreamName               = Audio Stream
OpaqueData               = <Buffer>
RMFF 1.0 Flags           = <Buffer>
------ End Stream Header = 0 --------------------------------------------------
Drive time: 0.016000 seconds.
Failed.


    - M.

Real Player 10 - First Impressions of AAC Support

Reply #31
Quote
ap.rpad:
Code: [Select]
<?xml version="1.0"?>
<audience>
 <avgBitrate type="uint">16000</avgBitrate>
 <maxBitrate type="uint">16000</maxBitrate>
 <streams>
   <audioStream>
     <pluginName type="string">rn-audiocodec-realaudio</pluginName>
     <codecName type="string">sipr</codecName>
     <codecFlavor type="uint">3</codecFlavor>
     <streamContext type="bag">
       <presentationType type="string">audio-only</presentationType>
       <audioMode type="string">music</audioMode>
     </streamContext>
   </audioStream>
 </streams>
</audience>

Another quick question: For spoken-word material (such as audiobooks), shouldn't the audioMode type in ap.rpad be set to "voice"?
Code: [Select]
<?xml version="1.0"?>
<audience>
 <avgBitrate type="uint">16000</avgBitrate>
 <maxBitrate type="uint">16000</maxBitrate>
 <streams>
   <audioStream>
     <pluginName type="string">rn-audiocodec-realaudio</pluginName>
     <codecName type="string">sipr</codecName>
     <codecFlavor type="uint">3</codecFlavor>
     <streamContext type="bag">
       <presentationType type="string">audio-only</presentationType>
       <audioMode type="string">voice</audioMode>
     </streamContext>
   </audioStream>
 </streams>
</audience>

  ... or will this have any effect on the way the audio is processed/stored?

    - M.

Edit: Well, after testing the above (which I should have done before posting the question!) it appears that setting the audioMode to "voice" produces the following error lines:
Code: [Select]
Diagnostic: Input has audio and Audience does not contain audioStream stream
Error: Job failed to start encoding
Error: Encoding failed!

  So why does it work with "music" and not "voice," and what is the purpose of the "voice" mode?

Real Player 10 - First Impressions of AAC Support

Reply #32
It turns out _encoding_ in dtdrive is work in progress, and works only for AAC at the moment, and then you need a few extra DLLs from the Producer SDK as well as RealPlayer 10 Gold, so Producer is the recommended tool to encode RealMedia.

The only effect audioMode has is that it maps the cmd line audio mode to a specific audience. You can have multiple audiences in a job file, one for each audio mode (music, voice), and then there is audio-only, or audio-video, so a total of 4 audiences.

You choose audio mode with command line switch '-am <voice|music>. And since music is default, my suggested audience works. If you exchange music with voice in the audience, you need to use -am voice.  It has no effect on the actual encoding.
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.

Real Player 10 - First Impressions of AAC Support

Reply #33
Karl,

I just tested Real Player 10 GOLD (free version) and found that it played my Nero created HE AAC (48k) files flawlessly (unlike WinAmp 5.03 without Menno's plugin). Besides Nero, I believe RealPlayer 10 is the first commercially available program to playback both AAC LC and HE AAC files properly within a M4A container file format. Well done! No where did RealPlayer 10 say it was a HE AAC file (it just called it AAC) but the sound quality of the playback was definately HE AAC and not just the AAC LC (22khz portion) like many other players do.

I believe I read on HA before that both the RealPlayer Free and Plus versions do not encode to HE AAC. Is that correct? They just do playback of HE AAC/AAC LC and only encoding to AAC LC. Thanks for the clarification and keep up the good work.

Real Player 10 - First Impressions of AAC Support

Reply #34
Thank you for the clarification on the use of -am voice. Now let's see how far my understanding carries....

  If I'm not mistaken (although that's certainly a possibility) it looks like this should be the *.rpad variation most closely approximating iTunes' "128kbps high quality" setting:
Code: [Select]
<?xml version="1.0"?>
<audience>
<avgBitrate type="uint">128000</avgBitrate>
<streams>
  <audioStream>
    <pluginName type="string">rn-audiocodec-realaudio</pluginName>
    <codecName type="string">raac</codecName>
    <codecFlavor type="uint">2</codecFlavor>
    <encodingComplexity type="string">high</encodingComplexity>
    <encodingType type="string">cbr</encodingType>
    <streamContext type="bag">
      <presentationType type="string">audio-only</presentationType>
      <audioMode type="string">music</audioMode>
    </streamContext>
  </audioStream>
</streams>
</audience>

  Now, at the time Roberto's AAC at 128kbps v2 public listening test was conducted, Real Producer 10 beta was used. But the current available Helix beta (10.0.0.195) was released two days before that last test concluded. Has the AAC-RM encoding engine improved since then in terms of subjective quality, or is it safe for one to assume the results of the  AAC at 128kbps v2 public listening test are still a valid reference point?

    - M.

Edit: Oops... I listed the wrong codecFlavor at first: 7 seems to be for "128 Kbps Stereo Surround," while 2 is the appropriate selection for "128 Kbps Stereo Music."

Real Player 10 - First Impressions of AAC Support

Reply #35
Quote
Via the helix community one can however obtain a free command line Producer that encodes to our AAC format, as well as a cmd line tool to convert losslessly from AAC to M4A, M4A to AAC, RM to M4A, AAC to RM, RM to AAC, RM to M4A.

i already asked this on doom9, but you didnt answer

does this tool handle to convert he-aac (aac+sbr) correctly from .rm to .m4a? afaik there is some sort of flag in the mp4 container, which indicates that the aac stream contains sbr
I know, that I know nothing (Socrates)

Real Player 10 - First Impressions of AAC Support

Reply #36
Quote
Originally posted by guest0101
I believe I read on HA before that both the RealPlayer Free and Plus versions do not encode to HE AAC. Is that correct? They just do playback of HE AAC/AAC LC and only encoding to AAC LC. Thanks for the clarification and keep up the good work.

Thanks for your feedback, and yes, it is correct that RealPlayer 10 Gold and the normal Producer does not encode to HE-AAC as they are released.  In the SDK section of the Binary Download section on helix community, there is a separate plugin available for Producer, along with a readme.txt that explains how to use it ("please refer to the Helix DNA Producer SDK license for information about AAC and HE-AAC licensing terms.")

Quote
Originally posted by M
Has the AAC-RM encoding engine improved since then in terms of subjective quality, or is it safe for one to assume the results of the AAC at 128kbps v2 public listening test are still a valid reference point?

As far as I know there were no significant changes to the Coding Technologies core encoder.

Quote
Originally posted by bond
already asked this on doom9, but you didnt answer  does this tool handle to convert he-aac (aac+sbr) correctly from .rm to .m4a? afaik there is some sort of flag in the mp4 container, which indicates that the aac stream contains sbr

Sorry, there are a lot of questions. Sometimes I miss one or two. You could have also tried yourself, but in this case, the result would have not been great, since it seems dtdrive does not handle all flavors of HE-AAC very gracefully. It does in fact crash on a test file of mine, so I need to file a bug report. dtdrive is work in constant progress, since it pretty much handles every filetype in our system, and used for a lot of purposes. Since our tools do not normally encode to HE-AAC, testing of this conversion to M4A has been limited.

Quote
Originally posted by M
Oops... I listed the wrong codecFlavor at first: 7 seems to be for "128 Kbps Stereo Surround," while 2 is the appropriate selection for "128 Kbps Stereo Music."

Some of the Surround and Stereo flavors are not really needed. It is only the RealAudio 8 Surround flavors that have been tuned to better preserve Dolby Surround info. For AAC, the Stereo and Surround flavors are indeed the same, but it's always better to use Stereo for music to avoid any confusion or errors.
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.

Real Player 10 - First Impressions of AAC Support

Reply #37
Quote
afaik there is some sort of flag in the mp4 container, which indicates that the aac stream contains sbr

No, there isn't.

There CAN be a flag in the audio specific config, but there doesn't have to be.

Menno

Real Player 10 - First Impressions of AAC Support

Reply #38
Quote
RealPlayer installs itself to C:\Program Files\Real\RealPlayer and a list of DLLs in C:\Program Files\Common Files\Real (and one DLL, I think, pncrt.dll (272 KB) to windows\system32). Compared to the rest of the program that use "Common Files" and system32 I don't think this is too bad, but I too would have liked one single folder (like Thunderbird or Firefox).

What is the function of the file nprfxins.dll installed to C:\Program Files\RichFX\Player upon install?

Edit: It's also installed to C:\Program Files\Internet Explorer\PLUGINS\RichFX\Player on my Win2000 system....

Edit2 - There is also a folder installed to C:\Documents and Settings\James Bond\Application Data\Real\ and 4 dlls installed to System32 (rmoc3260.dll, pndx5032.dll, pndx5016.dll, pncrt.dll)

Real Player 10 - First Impressions of AAC Support

Reply #39
Quote
What is the function of the file nprfxins.dll installed to C:\Program Files\RichFX\Player upon install?

I don't have this on my system, but it sounds like something left over from a previous version, or installed via an upgrade. It is not installed by RealPlayer's normal installation, afaik. I think there was once plugin called RichFX for 3D effects. Maybe you previously tried to play RichFX content.

edit2: I too have it in C:\Program Files\Internet Explorer\PLUGINS\RichFX\Player. It may have been installed by RealPlayer. I will ask.

edit3: Yes, many apps use Application Data, even Mozilla, Firefox and Thunderbird. And thanks for the update on which DLLs are placed in Windows\System32.
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.

Real Player 10 - First Impressions of AAC Support

Reply #40
Quote
Quote
What is the function of the file nprfxins.dll installed to C:\Program Files\RichFX\Player upon install?

I don't have this on my system, but it sounds like something left over from a previous version, or installed via an upgrade. It is not installed by RealPlayer's normal installation, afaik. I think there was once plugin called RichFX for 3D effects. Maybe you previously tried to play RichFX content.

edit2: I too have it in C:\Program Files\Internet Explorer\PLUGINS\RichFX\Player

Yes, this was done via an upgrade install (RealPlayer 10 beta to 10 Final) - I have no idea what RichFX content is nor do I remember trying to play it.

Real Player 10 - First Impressions of AAC Support

Reply #41
ViPER1313: thanks for providing the details about these additional DLLs that RealPlayer installs, which I did not know about  I have updated my post on the first page.
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.

Real Player 10 - First Impressions of AAC Support

Reply #42
Quote
Besides Nero, I believe RealPlayer 10 is the first commercially available program to playback both AAC LC and HE AAC files properly within a M4A container file format.

Well, 3ivx has been playing back AAC/HE-AAC files in MP4/M4A files in all DirectShow  players for quite a while now