Re: Anti-Whining: Happy Moko Moments - playing Ogg Vorbis files

2009-07-21 Thread Rask Ingemann Lambertsen
On Mon, Jul 20, 2009 at 02:05:00PM +0300, Timo Juhani Lindfors wrote:
> Rask Ingemann Lambertsen  writes:
> >FWIW, you can s/-t raw -c 2 -f S16_BE -r 44100/-f cdr/.
> 
> Sure but I have another version for 22050 Hz podcasts so I preferred
> to be explicit.

'-f cdr -r 22050' works as expected and is shorter. :-)

> > And indeed it decodes in realtime at just 100 MHz.
> 
> You are using the cpufreq patches? Any thing else than what I mirrored at
> 
> http://iki.fi/lindi/openmoko/consumption/

   I'm using the patches I've posted on the kernel mailing list:
https://lists.openmoko.org/pipermail/openmoko-kernel/2009-April/009760.html
https://lists.openmoko.org/pipermail/openmoko-kernel/2009-April/009762.html
https://lists.openmoko.org/pipermail/openmoko-kernel/2009-April/009764.html
Delete arch/arm/plat-s3c24xx/cpufreq.c before applying the next patch.
https://lists.openmoko.org/pipermail/openmoko-kernel/2009-April/010001.html
https://lists.openmoko.org/pipermail/openmoko-kernel/2009-June/010285.html

   I vaguely recall that hunk two of patch number two above no longer
applies cleanly but should be easy enough to apply by hand.

> and are you able to survive suspend/resume with it?

   Yes, no problems after the last patch. I suppose it's time to clean it up
and submit it for inclusion into the kernel.

> >Btw, I can't get aplay to use a buffer larger than 32768 samples. That
> > may be a kernel driver bug.
> 
> I just added a buffer to the example player itself I think. I think
> you can use general purpose "buffer" program in the pipeline too.

   But we need to get the samples to the DMA controller. Quoting
sound/soc/s3c24xx/s3c24xx-pcm.c:

static const struct snd_pcm_hardware s3c24xx_pcm_hardware = {
[...]
.channels_min   = 2,
.channels_max   = 2,
.buffer_bytes_max   = 128*1024,
.period_bytes_min   = PAGE_SIZE,
.period_bytes_max   = PAGE_SIZE*2,
.periods_min= 2,
.periods_max= 128,
.fifo_size  = 32,
};

   The hardware limit is (2^20 - 1) * 2 bytes or nearly 2048 kB.
Artificially limitting the buffer size to 128 kB is just stupid IMNSHO. We
don't need to pretend it's an ISA sound card. I'll see if something breaks
when the limit is relaxed.

> apt-get --build source apt-get source gstreamer0.10-plugins-bad
> 
> prints
> 
> checking for vorbis_block_init in -lvorbisidec... no

   It's not documented to exist. As far as I can tell, it's for internal use
only. I'll have a look at it.

-- 
Rask Ingemann Lambertsen
Danish law requires addresses in e-mail to be logged and stored for a year

___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


Re: Anti-Whining: Happy Moko Moments - playing Ogg Vorbis files

2009-07-20 Thread Timo Juhani Lindfors
Rask Ingemann Lambertsen  writes:
>FWIW, you can s/-t raw -c 2 -f S16_BE -r 44100/-f cdr/.

Sure but I have another version for 22050 Hz podcasts so I preferred
to be explicit.

> And indeed it decodes in realtime at just 100 MHz.

You are using the cpufreq patches? Any thing else than what I mirrored at

http://iki.fi/lindi/openmoko/consumption/

and are you able to survive suspend/resume with it?

>Btw, I can't get aplay to use a buffer larger than 32768 samples. That
> may be a kernel driver bug.

I just added a buffer to the example player itself I think. I think
you can use general purpose "buffer" program in the pipeline too.

>A related issue to take up with the Debian maintainers is the lack of
> the 'vorbisidec' element in the gstreamer plugin packages:

apt-get --build source apt-get source gstreamer0.10-plugins-bad

prints

checking for vorbis_block_init in -lvorbisidec... no

and indeed that symbol is not found:

$ grep vorbis_block_init /usr/lib/libvorbisidec.so.1
$ echo $?
1


___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


Re: Anti-Whining: Happy Moko Moments - playing Ogg Vorbis files

2009-07-19 Thread Rask Ingemann Lambertsen
On Sat, Jul 18, 2009 at 12:21:24PM +0300, Timo Juhani Lindfors wrote:

> ivorbisfile_example < foo.ogg | aplay -t raw -c 2 -f S16_BE -r 44100 -B
> 800 -

   FWIW, you can s/-t raw -c 2 -f S16_BE -r 44100/-f cdr/.

> CPU usage should be strictly less than 25%.

   Coolness. I looked around and found it precompiled here:

http://lair.fifthhorseman.net/~dkg/src/tremor/2009-04-24/libvorbisidec-debug-2009-04-24/

And indeed it decodes in realtime at just 100 MHz.

   Btw, I can't get aplay to use a buffer larger than 32768 samples. That
may be a kernel driver bug.

> If you have time please look at 
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=515259

   A related issue to take up with the Debian maintainers is the lack of
the 'vorbisidec' element in the gstreamer plugin packages:

$ gst-inspect | grep -F -i -e vorbis
vorbis:  vorbisenc: Vorbis audio encoder
vorbis:  vorbisdec: Vorbis audio decoder
vorbis:  vorbisparse: VorbisParse
vorbis:  vorbistag: VorbisTag
typefindfunctions: audio/x-vorbis: no extensions
rtp:  rtpvorbisdepay: RTP Vorbis depayloader
rtp:  rtpvorbispay: RTP Vorbis depayloader

   Currently, the only Debian package that has libvorbisidec1 listed as
dependency is mpd. :-(

-- 
Rask Ingemann Lambertsen
Danish law requires addresses in e-mail to be logged and stored for a year

___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community