Radio Listening Software: Difference between revisions
No edit summary |
|||
(21 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ |
|||
__NOEDITSECTION__ |
|||
<div style="margin:0; border:1px solid #6289AB; padding:0.5em; background-color:#F7F9FB;"> |
|||
{| style="background-color:#F7F9FB;" cellspacing=0 cellpadding=5 border=0 |
|||
| valign=top | [[Image:Radio_icon.png|50px]] |
|||
| |
|||
== '''Radio Listening Software:'''== |
|||
|} |
|||
There are a number of [[Radio devices]], in particular those TV tuner devices which also contain a radio receiver/tuner, for which V4L directly supports. The following list of software applications allow one to control a radio tuner. |
There are a number of [[Radio devices]], in particular those TV tuner devices which also contain a radio receiver/tuner, for which V4L directly supports. The following list of software applications allow one to control a radio tuner. |
||
Line 4: | Line 12: | ||
Gnomeradio and kradio, the most fully featured applications, are not yet available in all distributions and need to be compiled first. Some of the older applications are mature and readily available, but no longer actively developed. |
Gnomeradio and kradio, the most fully featured applications, are not yet available in all distributions and need to be compiled first. Some of the older applications are mature and readily available, but no longer actively developed. |
||
⚫ | |||
* [http://www.stanford.edu/~blp/fmtools/ fmtools] also for the command-line (most distros) |
|||
⚫ | |||
** [http://cajun.sourceforge.net/ cajun] for making your own car or home audio system |
|||
** [http://www.dashpc.com/ DashPC] for car radio and more from Linux Automotive |
|||
* [http://gkrellm.luon.net/gkrellm-radio.phtml gkrellm-radio] -- minimalistic [http://gkrellm.net gkrellm] plugin to control radio tuners |
* [http://gkrellm.luon.net/gkrellm-radio.phtml gkrellm-radio] -- minimalistic [http://gkrellm.net gkrellm] plugin to control radio tuners |
||
* [ |
* [https://projects-old.gnome.org/gnomeradio/ gnomeradio] -- for Gnome, capable of recording |
||
* [https://launchpad.net/gnome-radio/ gnome-radio] -- Listen to FM radio over the air using PCI cards or USB devices with FM tuners built in |
|||
* [http://www.gnu.org/software/gnuradio/ |
* [http://www.gnu.org/software/gnuradio/ GNU Radio] -- the GNU software radio, testing phase; cf. [http://comsec.com/wiki?GnuRadio2.X wiki] |
||
* [http://foobazco.org/projects/gradio/ gradio] -- in Debian, but not currently active |
* [http://foobazco.org/projects/gradio/ gradio] -- in Debian, but not currently active |
||
* [[ivtv-radio]] [http://ivtvdriver.org/index.php/Howto:Radio_tuner] -- part of the ivtv-utils package |
|||
⚫ | |||
* [http:// |
* [http://kradio.sourceforge.net/ KRadio] for KDE |
||
* [[MPlayer#Using_MPlayer_for_Radio_Listening|MPlayer]] -- media player for Linux. See link for radio usage information |
|||
* [http://linux.bytesex.org/xawtv/ radio] -- a curses-based radio application by Gerd Knorr, part of xawtv; see [http://dc.qut.edu.au/cgi-bin/man/man2html?1+radio man page] (most distros) |
|||
* [[radio]] -- a n-curses-based radio application (part of the [[Xawtv#Associated_Utilities|xawtv package]]) |
|||
** [http://w3.misterhouse.net:81/mh/code/public/v4l_radio.pl radio script] part of the [http://w3.misterhouse.net:81/ MisterHouse] project |
|||
* [http://whats.all.this.brouhaha.com/?p=199 radioshark] -- application to control the griffin radioshark |
* [http://whats.all.this.brouhaha.com/?p=199 radioshark] -- application to control the griffin radioshark |
||
* [https://sourceforge.net/projects/xdradio/ XDRadio] --- XDialog wrapper for radio listening |
* [https://sourceforge.net/projects/xdradio/ XDRadio] --- XDialog wrapper for radio listening |
||
Line 20: | Line 28: | ||
* [http://silicone.free.fr/xmms-FMRadio/ xmms-fmradio] -- plugin for [http://www.xmms.org/ XMMS], last version autumn 2004, Debian and Red Hat packages |
* [http://silicone.free.fr/xmms-FMRadio/ xmms-fmradio] -- plugin for [http://www.xmms.org/ XMMS], last version autumn 2004, Debian and Red Hat packages |
||
==Also See== |
|||
* For [[Radio Data System (RDS)#What devices can receive RDS information|devices capable of receiving RDS information]], see the associated [[Radio Data System (RDS)#User applications|userspace applications]]. |
|||
* [[dvbradio]] (part of the [[xawtv#Associated_Utilities_2|v4 xawtv package]]) as an example of a specific application for listening to radio streams embedded within dvb transport streams |
|||
</div> |
|||
== User experiences == |
== User experiences == |
||
If you're a user, post your installation and user experiences here! |
If you're a user, post your installation and user experiences here! |
||
⚫ | |||
The package contains two binaries, fm and fmscan. To pick up all stations even with very weak reception, I issued, |
|||
$ fmscan -d /dev/radio2 fmscan -d /dev/radio3 -t 18 -i 0.1 |
|||
Scanning range: 87.9 - 107.9 MHz (0.2 MHz increments)... |
|||
Nice and clean. I added an antenna, but still got weak reception. This is very useful for testing the radio and finding the stations; does it support directing the sound to a file? I try various combinations and end up with this to get 100% volume: |
|||
$ fm -d /dev/radio3 89.9 65535 |
|||
Radio tuned to 89.88 MHz at 100.00% volume |
|||
Weird. I don't see a way to record; do I need to use sox? I don't know if I'm getting any sound, as I don't have speakers on this box. |
|||
Sox is what gnomeradio uses to record and it thankfully sends commands it uses to standard out. |
|||
for wav file: |
|||
sox -c2 -w -r32000 -tossdsp /dev/audio -r 44100 -c 2 -w -twav /tmp/foo.wav |
|||
for mp3 or ogg: |
|||
sox -c2 -w -r32000 -tossdsp /dev/audio -r 44100 -c 2 -w -twav /tmp/fm_fifo & |
|||
and |
|||
lame -S -h -b 128 /tmp/fm_fifo /tmp/foo.mp3 |
|||
or |
|||
oggenc -Q -b 128 -o /tmp/foo.ogg /tmp/fm_fifo |
|||
=== gnomeradio === |
=== gnomeradio === |
||
Line 67: | Line 48: | ||
No recording capability, stable gui, minimal functionality -- tuner and volume. I had to hand-edit the .gradiorc configuration file to get station presets; I may have missed some way of doing this through the gui. |
No recording capability, stable gui, minimal functionality -- tuner and volume. I had to hand-edit the .gradiorc configuration file to get station presets; I may have missed some way of doing this through the gui. |
||
=== |
=== xfce4-radio-plugin === |
||
XFCE changed over from the "libxfcegui4" lib to "libxfce4ui," and somebody with XFCE fixed & recompiled the panel plugins except for this and a couple of others, but didn't specify what they had to do. You can't compile and use the plugin out-of-the-box on the version of XFCE Panel used now without making some changes. Here's what I did: |
|||
You can do a lot of things with MPlayer. As example, I use this syntax for radio listening: |
|||
1. Install libxfce4ui-1 package |
|||
2. Download the xfce4-radio-plugin source and extract the files |
|||
3. Do a "find & replace" on the files to replace all references to the old "libxfcegui4-1.0" to "libxfce4ui-1" |
|||
4. Modify the following lines in xfce4-radio.c: |
|||
xfce_exec(data->startup_command, FALSE, FALSE, NULL) |
|||
to |
|||
xfce_spawn_command_line_on_screen(NULL,data->startup_command, FALSE, FALSE, NULL) |
|||
AND: |
|||
mplayer -rawaudio rate=48000 radio://2/capture -radio adevice=hw=2:arate=48000:channels=93.8-Radio_Zones,94.7-SSR_1 |
|||
xfce_exec(data->shutdown_command, FALSE, FALSE, NULL); |
|||
This will start mplayer with sample rate = 48 kHz (choose the same than the one the sound card is using), listening to the second station onto the list, the tuner is the third sound card (ALSA device hw:2). For more examples: [http://www.mplayerhq.hu/DOCS/HTML/en/radio-input.html#radio-tips MPlayer radio tips]. |
|||
xfce_spawn_command_line_on_screen(NULL,data->shutdown_command, FALSE, FALSE, NULL) |
|||
(I think you need to add the extra "NULL" in the parameters sent to the function, at least from what I could find.) |
|||
You can add as many stations than wanted and use LIRC to control MPLayer. |
|||
5. If you have changed everything to what it should be and have the right libs installed, you should able to run configure, and then make. You have to run make like this: |
|||
I am running JACK all the time. I added |
|||
make "LDFLAGS=-lm" |
|||
ao=jack,alsa |
|||
otherwise, you will end up with "DSO not found on command line." |
|||
into ~.mplayer/config (for MPlayer) and mplayerplug-in.conf (for Firefox mplayerplug-in). For recording, I can use any JACK aware recording application. |
|||
6. Do make install, then symlink /usr/local/share/xfce4/panel-plugins/radio.desktop to /usr/share/xfce4/panel-plugins/radio.desktop |
|||
Once this is done I was able to add the plugin to the Panel. Unfortunately, I cannot actually do a full function test on this as I found out later the FM tuner in my TV card isn't recognized by the driver. It is possible this won't work as I don't know anything about those function calls or if there is something else missing in the new lib that I do not know about. |
|||
=== radio === |
|||
The radio package has a single binary, radio. The man page says it looks for the kradio configuration file ~/.kde/share/config/kradiorc. Failing that, radio tries ~/.radio. I issue, |
|||
radio -c /dev/radio3 |
|||
and get a blue and red curses screen, very cool. Arrow keys increase and decrease frequency in 0.05 intervals. I'm clearly not picking up any signal to speak of. I figure I have a lower-level issue with the tuner. |
|||
[[Category:Radio]] |
[[Category:Radio]] |
||
[[Category:Software]] |
[[Category:Software]] |
Latest revision as of 23:30, 17 July 2019
![]() |
Radio Listening Software: |
There are a number of Radio devices, in particular those TV tuner devices which also contain a radio receiver/tuner, for which V4L directly supports. The following list of software applications allow one to control a radio tuner.
Radio Applications
Gnomeradio and kradio, the most fully featured applications, are not yet available in all distributions and need to be compiled first. Some of the older applications are mature and readily available, but no longer actively developed.
- fftv [1]
- fmtools
- gkrellm-radio -- minimalistic gkrellm plugin to control radio tuners
- gnomeradio -- for Gnome, capable of recording
- gnome-radio -- Listen to FM radio over the air using PCI cards or USB devices with FM tuners built in
- GNU Radio -- the GNU software radio, testing phase; cf. wiki
- gradio -- in Debian, but not currently active
- ivtv-radio [2] -- part of the ivtv-utils package
- KRadio for KDE
- MPlayer -- media player for Linux. See link for radio usage information
- radio -- a n-curses-based radio application (part of the xawtv package)
- radioshark -- application to control the griffin radioshark
- XDRadio --- XDialog wrapper for radio listening
- xfce4-radio-plugin -- plugin for the Xfce panel
- xmms-fmradio -- plugin for XMMS, last version autumn 2004, Debian and Red Hat packages
Also See
- For devices capable of receiving RDS information, see the associated userspace applications.
- dvbradio (part of the v4 xawtv package) as an example of a specific application for listening to radio streams embedded within dvb transport streams
User experiences
If you're a user, post your installation and user experiences here!
gnomeradio
Clearly a more sophisticated application. There's only a debian package for i386, so I'll need to build from the tarball. Since I'm mainly interested in remote recording, I'll try fmtools and radio first.
gradio
I tried gradio on Debian amd64, as it's available; it's very basic. If you don't have the card on /dev/radio, start with
gradio -d /dev/radio2
No recording capability, stable gui, minimal functionality -- tuner and volume. I had to hand-edit the .gradiorc configuration file to get station presets; I may have missed some way of doing this through the gui.
xfce4-radio-plugin
XFCE changed over from the "libxfcegui4" lib to "libxfce4ui," and somebody with XFCE fixed & recompiled the panel plugins except for this and a couple of others, but didn't specify what they had to do. You can't compile and use the plugin out-of-the-box on the version of XFCE Panel used now without making some changes. Here's what I did:
1. Install libxfce4ui-1 package 2. Download the xfce4-radio-plugin source and extract the files 3. Do a "find & replace" on the files to replace all references to the old "libxfcegui4-1.0" to "libxfce4ui-1" 4. Modify the following lines in xfce4-radio.c:
xfce_exec(data->startup_command, FALSE, FALSE, NULL) to xfce_spawn_command_line_on_screen(NULL,data->startup_command, FALSE, FALSE, NULL)
AND:
xfce_exec(data->shutdown_command, FALSE, FALSE, NULL); xfce_spawn_command_line_on_screen(NULL,data->shutdown_command, FALSE, FALSE, NULL)
(I think you need to add the extra "NULL" in the parameters sent to the function, at least from what I could find.)
5. If you have changed everything to what it should be and have the right libs installed, you should able to run configure, and then make. You have to run make like this: make "LDFLAGS=-lm" otherwise, you will end up with "DSO not found on command line." 6. Do make install, then symlink /usr/local/share/xfce4/panel-plugins/radio.desktop to /usr/share/xfce4/panel-plugins/radio.desktop
Once this is done I was able to add the plugin to the Panel. Unfortunately, I cannot actually do a full function test on this as I found out later the FM tuner in my TV card isn't recognized by the driver. It is possible this won't work as I don't know anything about those function calls or if there is something else missing in the new lib that I do not know about.