[gst-devel] libmpg123 decoder plugin

Felipe Contreras felipe.contreras at gmail.com
Thu Jan 15 14:06:47 CET 2009


On Thu, Jan 15, 2009 at 2:35 PM, Roland Poppenreiter <r_poppi at gmx.at> wrote:
> * On Thu, 15 Jan 2009 at  7:47 +0200, Felipe Contreras wrote:
>> On Wed, Jan 14, 2009 at 5:41 PM, Roland Poppenreiter <r_poppi at gmx.at> wrote:
>> > Hello everybody,
>> >
>> > I hope this is the right mailinglist for this anouncement.  I wrote
>> > a mp3 decoder plugin with the mpg123 library. One reason is that
>> > mpg123 has some processor optimization (SSE, MMX, 3DNow, ...) in it
>> > and should be faster than the mad decoder. I used the mad decoder
>> > plugin (gstmad.c) as template for my plugin - so they are quite
>> > similar. I wanted to benchmark both decoders and compare the results
>> > but I ran into several problems and I got a few questions:
>> >
>> >  - sometimes i get a short white noise sound when i start playing an
>> >   mp3 file with my mpg123 decoder plugin.
>> >  - short white noise sound appears after seeking as well.
>> >  - is it possible that data comming from the filesrc is sometimes
>> >   overlapping?
>> >  - seeking is not always working, also not with the mad decoder.
>>
>> Are you using the mp3parse element?
>
> no, I dont even know this plugin ....
> the pipeline I'm using is this:
>
> gst-launch filesrc location="foo.mp3" ! mpg123 ! audioconvert !
> osssink

It's on the mpegaudio parse plug-in. It would do the proper frame
seeking so your decoder element doesn't have to.

<snip/>

>> Is that mpg123 library new? If I recall correctly the last time I
>> tried it wasn't there, I even suggested them to create a library, but
>> they didn't look too interested.
>
> the libmpg123 is not new, its the api from the mpg123 mp3-player
> (http://www.mpg123.de/api/) and I already used it for my mpg123
> gstreamer plugin.

Yeah, I know, but it was a standalone player (no library) before.
Anyway, it's good that they've split it.

>> Another option is to provide an OpenMAX IL API for the library. In
>> that case the gst-openmax wrapper would be able to use the decoder
>> transparently.
>
> I dont know this library, I will take a look at it, but for the
> moment I have to solve my problems with the mpg123 plugin.

But that's the point, if you provide the mp123 library with OpenMAX IL
interface, then you don't need to write your decoder element.

-- 
Felipe Contreras




More information about the gstreamer-devel mailing list