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: Mp4 Decoding Requirements (Read 4472 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Mp4 Decoding Requirements

I've just bought UT2003, and noticed it's music tracks come ogg encoded.  A nice step in the right direction!  (a lot of games use 22khz uncompressed wavs) :-S

Anyway, I was wondering the effect of this on the game, you have to add ogg decoding to the list of things your processor is being hit with, and for a processor like mine, that's just not good!

This led me to think about AAC/MP4.  From what I can see, AAC decoding is horrible!  No offence to Menno, but decoding AAC's on my computer causes it to lag, the music to stutter and generally go slow  I'm in the process of switching all my AAC's to MP4's, because they play instantly (no 15 second hang's in winamp on startup!) and they seem to use a lot less in resources.

What's the actual situation?  Why are mp4's less work to decode?  Is there a way to make them better?

Thankx
< w o g o n e . c o m / l o l >

Mp4 Decoding Requirements

Reply #1
Quote
I've just bought UT2003, and noticed it's music tracks come ogg encoded.  A nice step in the right direction!  (a lot of games use 22khz uncompressed wavs) :-S

Anyway, I was wondering the effect of this on the game, you have to add ogg decoding to the list of things your processor is being hit with, and for a processor like mine, that's just not good!

This led me to think about AAC/MP4.  From what I can see, AAC decoding is horrible!  No offence to Menno, but decoding AAC's on my computer causes it to lag, the music to stutter and generally go slow   I'm in the process of switching all my AAC's to MP4's, because they play instantly (no 15 second hang's in winamp on startup!) and they seem to use a lot less in resources.

What's the actual situation?  Why are mp4's less work to decode?  Is there a way to make them better?

Thankx

Yes, UT2003 has ogg sound files, BUT, have you looked at the date on them?

The only difference between aac and mp4 files is the header. File length, for example, is carried in the mp4 header, but not in aac header. IIRC, the aac plugin scans the file first. There is no difference in the real decoding time.

Mp4 Decoding Requirements

Reply #2
Quote
This led me to think about AAC/MP4.  From what I can see, AAC decoding is horrible!  No offence to Menno, but decoding AAC's on my computer causes it to lag, the music to stutter and generally go slow

If I compare the decoding speed of Ogg Vorbis and AAC or MP4 on my old PC (5x86/133 MHz), I would say that they are quite equal which means that both need almost all of the CPU power to decode properly. That's why I changed the default setting in Winamp's preferences/options/process priority class from "normal" to "high", although it is not recommended. If I don't do this, I can't even move the mouse without causing stuttering problems on the playback. So what CPU does your PC have and did you already change this Winamp setting?

Quote
I'm in the process of switching all my AAC's to MP4's, because they play instantly (no 15 second hang's in winamp on startup!) and they seem to use a lot less in resources.


I can't confirm this, because both formats play the same here. By the way, which compile of Menno's FAAD2 do you use: Roberto's or John's? Like I wrote before on Audiocoding.com, John's in_mp4.dll is the one that even lets me listen to AAC files done with -streaming or -normal without flaws, while Roberto's (and Menno's own) compiles could not do this.

Quote
What's the actual situation?  Why are mp4's less work to decode?  Is there a way to make them better?


First I would suggest that you try John's compile from Nov 2nd and alter the Winamp setting, too. If this doesn't help, you might even try out QuickTime 6 that is able to translate a resampled AAC file with the correct speed on my PC, which is another thing that Winamp can't do. The last resort would be to wait for an AAC implementation in Mpxplay, because this player is still the fastest on my machine, also with Ogg Vorbis.
ZZee ya, Hans-Jürgen
BLUEZZ BASTARDZZ - "That lil' ol' ZZ Top cover band from Hamburg..."
INDIGO ROCKS - "Down home rockin' blues. Tasty as strudel."

Mp4 Decoding Requirements

Reply #3
I've been trying to play them on a PI-133, with a bit of difficulty.  It's also a case when playing UT2003 on my system (PIII-800), it can't play AAC's but can play MP4's while I play the game.  I think it's because file length is included in the mp4 header, Winamp likes to know the file length when you start playing a track, so an hour long AAC has to scan through the whole thing, which takes forever and a day when my CPU is busy!

I think I'm using the plugins from Roberto's site...  so where could I try John's at?  I'm in too much of a mess atm to find it myself!  I haven't organized my audio folder since I joined HA and discovered all this lovely new stuff, I've got builds of AACenc I made myself, about 100 downloads, and all kindsa rubbish scattered about!
< w o g o n e . c o m / l o l >


Mp4 Decoding Requirements

Reply #5
Quote
I've been trying to play them on a PI-133, with a bit of difficulty.  It's also a case when playing UT2003 on my system (PIII-800), it can't play AAC's but can play MP4's while I play the game.

I see, you want the AAC files (or rather one huge file) as background music while playing the game... so altering the Winamp setting is of course no good idea then. 

Quote
I think it's because file length is included in the mp4 header, Winamp likes to know the file length when you start playing a track, so an hour long AAC has to scan through the whole thing, which takes forever and a day when my CPU is busy!


There might be something to this, because I also noticed that my test files get a little smaller when converted to MP4, and consequentally Winamp's display and the file info show a lower bitrate (71 kbps instead of 73 kbps) for a MP4 file of 20 seconds. So maybe with an hour long file there could be an influence on the CPU load, I don't know...

Quote
I think I'm using the plugins from Roberto's site...  so where could I try John's at?  I'm in too much of a mess atm to find it myself!


He was quicker than me...    I'm not sure why his compile decodes faster on my PC than Roberto's or Menno's, but it is like that, and this is what counts for me.    Maybe it simply has to do with the file size of the in_mp4.dll, because his compile is about 150 KB small, while Roberto's is almost 1 MB big (Menno's special one with disabled floating_point is somewhere in the middle with around 400 KB).
ZZee ya, Hans-Jürgen
BLUEZZ BASTARDZZ - "That lil' ol' ZZ Top cover band from Hamburg..."
INDIGO ROCKS - "Down home rockin' blues. Tasty as strudel."

Mp4 Decoding Requirements

Reply #6
Quote
Quote
I think I'm using the plugins from Roberto's site...  so where could I try John's at?

From here: http://homepage.ntlworld.com/jfe1205/winam...aad_plugins.zip.

Hmm... The MP4 plugin in that "package" seems a bit fucked up... It somehow bypasses "Shibatch super equalizer"... Very annoying...

Mp4 Decoding Requirements

Reply #7
Hmm, yes, I think DSP plugins are bypassed at the moment, because I had to figure out how to handle other bitdepths than 16 in winamp using the DSP plugin interface.
I'll have a look at that.

Menno

Mp4 Decoding Requirements

Reply #8
Quote
Hmm, yes, I think DSP plugins are bypassed at the moment, because I had to figure out how to handle other bitdepths than 16 in winamp using the DSP plugin interface.
I'll have a look at that.

Menno

"Hmm... Okey"...

By the way, dithering doesn't seem to work at the moment, or is it just me who's having problems getting any sound at all when trying to use it?

Mp4 Decoding Requirements

Reply #9
Yeah, I've also noticed that mp4's are a fair bit smaller than aac's!  I saved 5mb converting 100 files from AAC to MP4 - and a load of time on startup!

I notcied that Roberto's in_mp4 was absolutely huge!  I'm guessing it's all about the compiler you use - John maybe used the Intel compiler, that's supposed to be the best for speed and optimization.
< w o g o n e . c o m / l o l >

Mp4 Decoding Requirements

Reply #10
I doubt the size of the binaries from john33 is really having an effect on speed.  Generally the vectorized output from the intel compiler produces larger binaries than their non-vectorized counterparts.  The most likely reason why his binaries are so small is because of a little utility called UPX.  This should have no beneficial effects on speed.

Mp4 Decoding Requirements

Reply #11
Quote
Hmm, yes, I think DSP plugins are bypassed at the moment, because I had to figure out how to handle other bitdepths than 16 in winamp using the DSP plugin interface.
I'll have a look at that.

Menno

You might want to fire off a PM to Peter (zZzZzZz) about that.  He'd probably be able to help you pretty quickly.

Mp4 Decoding Requirements

Reply #12
Quote
the Intel compiler, that's supposed to be the best for speed and optimization.

I meant, if he used Intel rather than MSVC or Borland, he'd get faster running files.  They all wildly differ in size just for the fun of it I'm sure!
< w o g o n e . c o m / l o l >

Mp4 Decoding Requirements

Reply #13
Roberto uses the intel compiler, it creates huge output on that mp4 file library. My compiles are usually normal VC7 compiles.

And dithering indeed doesn't work in the mp4 plugin, but works nicely in the command line frontend (must be something with signalling it to the decoder library).

Menno

Mp4 Decoding Requirements

Reply #14
Anyway... I hope you can fix that bypass "thingie" so I can start using MP4 instead of pure AAC... (I need to use the Shibatch super equalizer... My speakers sound really wierd without it...  )

It would also be nice if the .mp4 extension wasn't shown in the playlist either...