[Tremor] Re: packaging tremor (libvorbisidec) for debian
Daniel Kahn Gillmor
dkg-debian.org at fifthhorseman.net
Fri Nov 24 18:06:42 PST 2006
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On November 24, monty at xiph.org said:
> > I've already made an example package, which tests and runs well (50%
> > CPU consumption, comparable to libmad for mp3's) on the linksys NSLU2
> > (32MB RAM, 266Mhz processor) under Linux 2.6.18.
>
> That seems a little high; Tremor originally ran on an ARM7 TDMI
> (Cirrus Maverick) at 74MHz at about 50% cpu.
And here i thought i was doing good for matching libmad's speed :(. i
haven't done any very serious testing, though: i've used the
ivorbisfile_example.c program (dynamically-linked) like this:
<test.ogg ./ivorbisfile_example | aplay -f cd
i was running vmstat during the run (i interrupted the playback after
~25 seconds), which shows:
[0 dkg at igor ~]$ vmstat 5
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 5352 1092 836 16252 0 0 7 2 27 20 2 1 96 0
0 0 5348 1108 836 15484 0 0 0 0 217 43 26 3 70 0
0 0 5348 1108 848 15484 0 0 0 10 363 48 48 5 47 0
0 0 5348 1108 852 15484 0 0 0 1 358 35 48 3 44 4
0 0 5348 1104 856 15484 0 0 0 1 358 35 49 3 48 0
0 0 5348 1800 860 15484 0 0 0 1 358 48 48 4 47 0
0 0 5348 1800 860 15484 0 0 0 1 105 19 2 0 98 0
0 0 5348 1816 860 15484 0 0 0 0 99 7 0 0 100 0
[130 dkg at igor ~]$
I don't think aplay itself (or any userland alsa component) is chewing
up a significant fraction of that, either: test.ogg is 4:04, and i
tried:
[0 dkg at igor ~]$ time <test.ogg ./ivorbisfile_example >/dev/null
ALBUM=The Great Rock 'N' Roll Swindle
TRACKNUMBER=4
TITLE=Anarchy In The U.K. (Johnny Rotten)
ARTIST=Sex Pistols
Bitstream is 2 channel, 44100Hz
Decoded length: 10761576 samples
Encoded by: Xiph.Org libVorbis I 20040629
Done.
real 1m38.053s
user 1m36.590s
sys 0m0.350s
[0 dkg at igor ~]$
4:04/1:37 is 2.5 x realtime, or 40% usage.
so that's better than 50%, but not by much.
Any suggestions for what i might be able to do to speed up (or other
ways to test) would be welcome.
> > I'm packaging the regular branch, rather than the low-memory
> > branch at the moment, since debian systems tend towards higher RAM
> > than most embedded devices, and i'm assuming that the regular
> > branch can provide higher fidelity than the lowmem version.
>
> Fidelity is the same, but the main branch is much faster (CPU/memory
> tradeoff).
OK, that makes sense. Thanks for the clarification. Maybe i'll try
packaging the lowmem branch with these same tests just for
comparison...
> > i'm pulling the sources from svn: If there's a more canonical
> > location for the source i should be looking at, i'd be happy to
> > hear it. I also notice that svn contains bits of debian packaging
> > (a debian/ directory, in particular) which seems to be either
> > out-of-date or from another package or both.
>
> "All of the above"
heh. That's kinda what i thought, but it doesn't hurt to check.
> > I'd be happy to contribute my packaging modifications to the
> > mainline tree, if that's desired. They're GPL at the moment, but
> > i would be willing to change them to the BSD-ish license favored
> > by tremor if that's needed.
>
> The tremor directory must be BSD, so contributed Debian packaging
> updates should be BSD as well.
Done. Until i can get this into debian, i'm going to be publishing my
main packaging changes [0]. The diff.gz file there contains all my
changes. They're fairly small at the moment, and now they're all
BSD-licensed. You are welcome to incorporate them into SVN if you
like. They're nothing outrageous. Also, i'll keep you informed as
things change with the debian packaging (unless don't want me to!).
> > also: i'm having a bit of trouble figuring out the proper version
> > number for the tremor library.
> > http://svn.xiph.org/trunk/Tremor/debian/changelog implies that it
> > is version 1.2.0, but http://svn.xiph.org/trunk/Tremor/CHANGELOG
> > implies that it is 1.0.2, and the libraries appear to build for me
> > as 1.0.2 -- i just want to make sure i'm not missing some new
> > version.
>
> I... don't actually know :-)
Fair enough. Can you point me toward anyone who might know? i
haven't been able to find any release-publication timeline for
libvorbisidec yet. If there is one, i'd love to set up an automated
"watchfile" [1] to help me keep current if y'all make new releases
upstream, but of course this isn't urgent.
Thanks for your prompt response,
--dkg
[0] http://lair.fifthhorseman.net/~dkg/src/tremor/
[1] http://dehs.alioth.debian.org/uscan.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8+ <http://mailcrypt.sourceforge.net/>
iD8DBQFFZ6TsiXTlFKVLY2URAhAJAKCR38VIddPfGMX7bJ0EbOc/ThJZUQCgz5I7
5j1GLGTBh/9vDcq54R2tetw=
=Eknk
-----END PGP SIGNATURE-----
More information about the Tremor
mailing list