Help - Search - Members - Calendar
Full Version: Lame psychoacoustic evaluation
Hydrogenaudio Forums > Lossy Audio Compression > MP3 > MP3 - Tech
morpheus1982
Hi everyone,

There has to be a way...actually let me rephrase...I NEED there to be a way to successfully isolate the LAMEs pyschoacoustic subroutine.

I want to be able to feed PCM data into the pyschoacoustic subroutines and just return masking thresholds and other relevant data.

The reasons for this madness is Dissertation.

Please help me. sad.gif

Also, could someone tell me which piece of code acts as an "int main()" for the whole of LAME? In other words which routine takes the PCM input and calls the relevant steps to encode an MP3?

Once again, please help me.... crying.gif
robert
well, maybe some automatic generated doc is of any help for you.
morpheus1982
thankyou for your time, but I have access to all these docs online. Thanks anyway...
Gabriel
Once again, I think that this will be quite hard.

You need to use it from matlab? Maybe there is another way:

*From matlab, create a wav file with your pcm samples
*run Lame on this wav file. If you can not directly run an external program from matlab, then you could create a C program that would run the lame executable, and use this C file from matlab.
*modify Lame so it outputs its psy data to a file
*parse this text file from matlab.
Gabriel
QUOTE
Also, could someone tell me which piece of code acts as an "int main()" for the whole of LAME? In other words which routine takes the PCM input and calls the relevant steps to encode an MP3?

The lame library is encoding when the lame_encode_buffer_XXX functions are called.
You could have look at how the Lame frontend is calling the encoding library:
http://cvs.sourceforge.net/viewcvs.py/lame...=1.89&view=auto
Dibrom
Is there a specific need to use a psymodel present in an mp3 encoder? I have a feeling that it might be a lot easier to do something like this with Vorbis than with LAME.

You might at least want to take a look at Vorbis for something like this. Might have some luck contacting one of the devs too, or something like that.
robert
QUOTE(morpheus1982 @ Aug 5 2004, 09:26 PM)
Hi everyone,

There has to be a way...actually let me rephrase...I NEED there to be a way to successfully isolate the LAMEs pyschoacoustic subroutine.

I want to be able to feed PCM data into the pyschoacoustic subroutines and just return masking thresholds and other relevant data.

The reasons for this madness is Dissertation.

Please help me. sad.gif

Also, could someone tell me which piece of code acts as an "int main()" for the whole of LAME? In other words which routine takes the PCM input and calls the relevant steps to encode an MP3?

Once again, please help me....  crying.gif
*


if you click on "Globals->Functions" you find lames main functions in mp3x.c--for the frame analyzer--and main.c--for the lame commandline encoder.
I think for your purpose the frame analyzer would be a better starting point. then look how the frame analyzer works and rebuild it into your matlab project. if you need more info as the frame analyzer already collects, you'll have to add it at the appropriate places. But, what would you need that the frame analyzer does not get already?
Gabriel
QUOTE
But, what would you need that the frame analyzer does not get already?

Let me guess:
*tonality values
*masking values (with numbers)
morpheus1982
thank you for your feedback....I have only just read the messages, so I will have a look v soon
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.