[Twisted-Python] What's everyone using Twisted for?
Tommi Virtanen
tv at twistedmatrix.com
Fri Dec 14 12:39:29 MST 2001
Glyph Lefkowitz <glyph at twistedmatrix.com> writes:
> So, occasionally I've heard from people using Twisted. I haven't made
All the old beards know my software already, but here goes
anyway:
http://mc-foo.sourceforge.net/
MC Foo is an advanced, adaptive and learning mp3 jukebox server.
* continuous music playing
* learns what music you like and dislike
* no static playlists; uses a playqueue you can view and alter
* can be controlled from any hosts and even with infrared remote
controllers
* allows multiple user/preference profiles, according to whose
listening and his or her mood
The project started as part of our studies. That led to the C
implementation -- choice of language was dictated by the
lecturer.
Since the course, I got bored of debugging C, and decided I
need to learn Python. Five hours later, I had reimplemented
the core parts of MC Foo in Python. I still had to debug the
line-based network interface. Five hours later, I had ported
it to use XML-RPC. That wasn't really satisfactory. I started
spending time on #python on irc.openprojects.net, and saw this
group of hackers putting together an asynchronic input/output
framework (and more) in Python. Five hours later, MC Foo was
ported to use twisted.spread.pb. There exists a Tkinter client
GUI that allows you to visually manipulate the playqueue. I
use the command line interface heavily.
MC Foo uses existing Ogg/MP3 libraries as backend, and will
never touch file contents or decompression ourselves (it does
write to /dev/sound/dsp itself, but it's all opaque data to
it). Where Python-accessible free libraries are not available,
a suitable players will be used in batch mode. (That is
mpg321, for now. Anyone know of a free Python MP3 library?)
STATUS
------
It plays music whenever I'm home.
Everything but the CVS is horribly obsolete. Grab the CVS snapshot,
look around. Grab me on #python to help you get started -- I can
successfully build .debs out of a CVS snapshot, create .taps with
that, and run the .taps, but your mileage may still vary.
I will add one or two features, kill some bugs and then finally
release the first real Python version of MC Foo.
--
tv@{{hq.yok.utu,havoc,gaeshido}.fi,{debian,wanderer}.org,stonesoft.com}
double a,b=4,c;main(){for(;++a<2e6;c-=(b=-b)/a++);printf("%f\n",c);}
More information about the Twisted-Python
mailing list