Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: how to merge fixed point wma decoder to libav 0.7.6

Re: how to merge fixed point wma decoder to libav 0.7.6

From: Diaz Soho <soho123.2012_at_gmail.com>
Date: Thu, 11 Sep 2014 01:02:42 +0800

Hi Mike,

Could you explain more detail about your idea?
since I have question about how to decode wma file.
the container used for wma file is ASF, how to demux asf in Rockbox?
the data that read by asf_read_packet (to read an ASF packet) can be put
into decode ,right?
that does not include container data?
Could you kindly give the hints?

Thanks a lot!!

2014-09-03 1:45 GMT+08:00 Mike <giac2000_at_hotmail.com>:

> There is no wrapper around ffmpeg for rockbox, the original ffmpeg code
> has been rewritten to process data one frame at a time instead of one
> superframe at a time like ffmpeg did. This was a problem on lower speed
> devices because superframes could be very large, resulting in audio drop
> outs. Actually, a large part of the original codec has been rewritten to
> work better on low speed devices rather than PCs.
>
> Do you actually need the ffmpeg interface? I would probably not try to
> use it here as it is not well suited to what you want to do unless your
> embedded device is quite fast. Instead I would take a look at wma.c, which
> does a very simple loop calling asf_read_packet (to read an ASF packet),
> then wma_decode_superframe_init to prepare a superframe for decoding,
> and finally a loop of wma_decode_superframe_frame that returns decoded
> PCM samples.
>
> If you do need an ffmpeg interface, you could probably write a wrapper
> around these functions.
>
> Mike
>
> ------------------------------
> Date: Wed, 3 Sep 2014 00:30:43 +0800
> Subject: Re: how to merge fixed point wma decoder to libav 0.7.6
> From: soho123.2012_at_gmail.com
> To: rockbox-dev_at_cool.haxx.se
>
> but the usage of library seems different with original ffmpeg libav,
> for example:
> in rockbox, there is wma_decode_superframe_init,
> but
> in general ffmpeg libav does not include wma_decode_superframe_init,
>
> so,
>
> I do not got the point how to remove the wrapper that you add for rockbox
> could you give some guide?
>
>
> 2014-09-03 0:26 GMT+08:00 Mike <giac2000_at_hotmail.com>:
>
> The other option of course is to use our codecs directly. You can compile
> the codeclib separately from Rockbox and call it directly from another
> program or using the command line. We provide most of the same formats as
> ffmpeg but all integer.
>
> ------------------------------
> From: giac2000_at_hotmail.com
> To: rockbox-dev_at_cool.haxx.se
> Subject: RE: how to merge fixed point wma decoder to libav 0.7.6
> Date: Tue, 2 Sep 2014 09:17:13 -0700
>
> I talked to the ffmpeg people about it almost a decade ago. Since then
> floating point hardware has become very common and the need for fixed point
> diminished. The closest thing I can think of would be vlc for android
> which uses an early version of our fixed point decoder that is still closer
> to ffmpeg.
>
> Mike
>
> ------------------------------
> Date: Tue, 2 Sep 2014 17:32:00 +0800
> Subject: how to merge fixed point wma decoder to libav 0.7.6
> From: soho123.2012_at_gmail.com
> To: rockbox-dev_at_cool.haxx.se
>
> Hi All,
>
> Is there anyone have idea about how to merge fixed point wma decoder to
> libav 0.7.6?
> because my cpu does not include fpu, when use the wma decoder in libav ,
> it take a lot of cpu time.
>
> Or is anyone have merge fixed point wma decoder to libav?
>
>
> Thanks for any input!!
>
>
>
Received on 2014-09-10


Page was last modified "Jan 10 2012" The Rockbox Crew
aaa