Hi.
I recently got myself an ADS InstantFM USB radio tuner card.
This is exactly what I always wanted, a tuner with a built-in
USB soundcard, so no need for loopback cables or anything.
It also happens to have RDS, which can be programmed from
user-space since 2.6.32.
So to celebrate the release of 2.6.32, I wrote a small
command-line tool (basically for myself) to work with that
card. The tool impelemnts the following features as of now:
* Decode most important RDS messages (program name, radiotext)
* Allow for playback via JACK or ALSA
* Allow to record to an OGG file
The recording and playback features are currently implemented
using helper tools: arecord, aplay, oggenc and alsa_in.
Here is the URL:
http://delysid.org/linux-si470x.tar.xz
Future ideas:
* Write the capture and playback code in C to allow for:
* Stop during playback, buffering the audio for later playback.
* Record during playback like time-machine: Buffer a defined amount
of audio from the past, and use it when the user requests
recording.
* Maybe integrate libSoundTouch for realtime pitch shifting and
time compression (if playback is behind realtime).
If you have such a card (luck you!) give the RDS decoding a whirl.
Patches of course always welcome.
P.S.: A very good existing tool for realtime playback
of audio for this tuner card is mplayer:
mplayer -radio adevice=hw=2.0:arate=96000 -rawaudio rate=96000 radio://91.2/capture
If all you need is this, by all means, go with mplayer.
linux-si470x is more geared towards integrating RDS decoding
into a command-line tool for operating these tuner cards.
P.S.2: Version 0.1 of linux-si470x is now 2 days old.
So this is indeed a very early pre-release. But since I didn't find
anything equivalent, I thought I'd release it anyway in
case someone can make early use of it.
--
CYa,
⡍⠁⠗⠊⠕