KRadio4

Audio Apps

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

8
Score 77.7%
Description:

KRadio is a comfortable KDE4 application for internet radio and AM/FM radio cards supported by V4L/V4L2. It has a lot of valuable features such as RDS decoding, pre-recording, timeshift playback, recording (wav, mp3, ogg), PVR support, versatile alarms, LIRC support, and much more (see below).

4.0.8 Release Notes

KRadio 4.0.8 is a bugfix and translation release. It fixes crashes and compatibility issues libav/libffmpeg. For details please have a look into the ChangeLog:

http://kradio.sourceforge.net/ChangeLog-4.0.8

Source code and translation packages as well as binary packages for Debian/unstable can be downloaded from the KRadio homepage:

http://kradio.sourceforge.net/download.html

Please test and give feedback about bugs but also success!

With best regards and thanks to all contributors!

Martin


FAQ: http://kradio.sourceforge.net/faq.html

Translation Status:

[li]Czech(100%)
[/li][li]English(100%)
[/li][li]German(100%)
[/li][li]Islandic(46%)
[/li][li]Italian(100%)
[/li][li]Polish(3%)
[/li][li]Portuguese(34%)
[/li][li]Portuguese/Brasil(55%)
[/li][li]Russian(100%)
[/li][li]Serbian(70%)
[/li][li]Slovak(50%)
[/li][li]Spanish(54%)
[/li][li]Turkish(31%)
[/li][li]Ukrainian(100%)
[/li]

KRadio4 now supports:

[li]KDE >= 4.2[/li][li]DBus Support[/li][li]Internet Radio[/li][li]PulseAudio Support (indirect via ALSA)[/li][li]RDS[/li][li]Shortcuts[/li][li]Pre-Recording - no worries any more about starting recording too late[/li][li]Timeshift playing[/li][li]V4L/V4L2 radio cards (including Line-In based cards, PCM capturing based cards and PVR cards)[/li][li]ALSA[/li][li]MP3 and Ogg/Vorbis recording[/li][li]LIRC[/li][li]Alarms and sleep countdowns[/li][li]Dynamic plugin library architecture[/li]

Your contributions are highly appreciated!
Last changelog:

5 years ago

2014-09-28 (4.0.8)
- various translation updates
- libav/libffmeg crash&compatibility fixes
- sleep/standby/timer fixes
- various minor fixes.

2013-01-19 (4.0.7)
- fix for planar sound sample formats in very recent ffmpeg releases
- support for id3 tags in recording configuration
- fixed segfault in case sample format is unknown
- fixed charset/encoding of id3 tags / vorbis comments


2012-08-15 (4.0.6)
- bugfixes for playlist file .pls handling (BBC stations and further UK radio stations, see bugreport 3534405)
- support for WMV playlists (see bugreport 3534405)
- improved playlist type autodetection

2012-08-02 (4.0.5)
- bugfix for http error handling in playlist handler
- cleanup of internet radio libffmpeg/libav code
- fixed watchdog handling: it was not stopped during station change and caused accessing empty playlists, thus div/0
- removing cr/lf in ICY meta data / RDS data for running text in GUI
- fixed typo in escape sequence code for ICY meta data parsing
- fixed content-type handling for mms streams (allows now skipping slow autodetection)
- finally fixed the problem with skips and stops in internet radio stream decoding
- fixed handling of HTTP 304 (not modified) response code
- updated preset file for RioDeJaneiro/Brazil
- initial partial Slovak translation
- added watchdog for internet streams: reconnects after a configurable stall time
- visualization of disabled alarms
- endianess and sample conversion code speedup
- disabled alsa blocking usleep workaround by default and added configuration option
- updated German translation
- added config option for internet radio stations to set metadata encoding charsets
- further buffer management fixes to stop repeated skips on certain systems
- individual name for quickbar window title
- Czech translation update
- spec file updates

2012-02-18 (4.0.4)
- improved shoutcast support: fixed "Accept:" HTTP header field
- issue warning if a broken V4L2 kernel is detected
- fixed buffer alignment issue to avoid alignment-error segfault in libffmpeg sse2 code

C

emw

11 years ago

Hi,

yea, of course, please consider the meaning of that ancient note in the TODO list as implicitly updated. Anyway, I'd appreciate and I'd like to encourage contributions e.g. by implementing this dbus interface. Could be a simple plugin. Like e.g. shortcuts, lirc. I'm currently a bit busy with adding support of internet radio and fixing some problems in the kradio-internal sound system.

Best regards, Martin

Report

jirityr

11 years ago

How does the RDS works? I can not see any RDS text on the main KRadio display.

PS: I will try the LIRC when you release new snapshot here.

Report

C

emw

11 years ago

Did you try to load the kernel module saa6588 ?
According to the V4L documentation this is not done automatically but enables RDS support for many RDS supported cards...but no guarantee, can not test it (see below).

Btw., did you check that your card has RDS support? Does your V4L(2) driver support RDS? If it does and KRadio does not display radio text or a station name, please send me a dump e.g.

dd if =/dev/radio0 of=/tmp/rdsdump.bin bs=3 count=3000

That should result in a bit more than one minute of RDS binary data. If reading /dev/radio0 (please replace that by your radio card device file) fails, your card and/or driver does not support RDS.

... at least this is what I got from the v4l RDS documentation. Unfortunately I don't have a card supporting RDS. For testing I wrote some hand coded binary emulation input so far. Thus I'd either need a real RDS binary dump or a sponsored RDS enabled card.

BR, Martin

Report

jirityr

11 years ago

I see. It looks like my card doesn't support RDS neither:

tveeprom 0-0050: decoder processor is SAA7115 (idx 19)
tveeprom 0-0050: has radio, has IR receiver, has no IR transmitter
ivtv0: Autodetected Hauppauge WinTV PVR-350

What a pity! ;o)

Report

Limoto

11 years ago

I can't setup active playback. I have a AverMedia Hybrid+FM A16D card and i need to capture from hw:2,0 (at 32KHz) and play it to hw:0,0. But when i try to setup this in KRadio, it put me errors with opening plughw:0,0. Playing with sox works. How to setup that?

(In KDE3, i used sox, because i didn't found a way to set active playback to capture at 32KHz)

Report

C

emw

11 years ago

Hi,

just one more comment on the issue. Please have a look at the KRadio FAQ updated on this topic a few minutes ago:

http://www.nocabal.de/~emw/kradio/faq.html#activeplayback

I hope, it gives you some more directions how to set up your KRadio.

BR, Martin

Report

C

emw

11 years ago

Hi!

Did you set up correctly the Alsa Plugin and the V4L Mixer settings? At least the error message about using the wrong card seems to indicate that. Otherwise, could you please report your alsa/mixer settings in kradio and report the version you are using?

BR, Martin

Report

jirityr

11 years ago

Ebuild for Gentoo users is in the Bugzilla (http://bugs.gentoo.org/show_bug.cgi?id=259704) or in the kde-testing overlay.

Report

jirityr

11 years ago

Could you keep the convention of making the snapshot packages? I mean to have there only the kradio4-snapshot-2009-02-19-r630 directory and not all the /home/... structure.

Report

C

emw

11 years ago

arg...sorry.. yea... I just changed my packaging scripts and added that bug yesterday... will become better next time :)

Martin

Report

panda84

11 years ago

I'm using KRadio on KDE 3 and it's great!!
A KDE 4 version is a great news! Thanks!

Report

jirityr

11 years ago

How to setup Kradio4 for the PVR card?

Report

C

emw

11 years ago

Hi!

I hope, the PVR setup is now documented much better within KRadio (look at the V4L and Streaming Plugin config pages), on the KRadio Website (FAQ) and a dedicated README.PVR in the source archive.

Unfortunately, I don't have a PVR card, thus I could only extrapolate from some users reports and use /dev/urandom instead of a real /dev/video24 (or similar). Hope it works,otherwise please let me know more details or let's think about ways how I could get a PVR card ;-)

Here is the content of the README.PVR file:

1) Configure the Streaming Plugin:
- add your device to the capture URLs (/dev/video24, /dev/video32 and /dev/urandomshould already be there)
- configure the right sound sample format/rate/... for your radio card
2) Configure the V4L2 Plugin:
- Select your favourite PCM Sound Card as playback device
- Select your favourite PCM Mixer Channel as playback channel
- Select the Streaming Plugin as Capture Device
- Select the radio/video device (e.g. /dev/video24) as capture mixer channel
- enable the active playback checkbox. KRadio will now record from the capture channel internally (not to a file) and send the data to the playback PC channel.
3) Done. Your kradio should be now usable for PVR cards. If not, please provide me details on your setup or perhaps even a card to test it.


With best regards,

Martin

Report

jirityr

11 years ago

I had in the Capture URLs list the /dev/video24 by default so I have managed to set up the rest of options by your description.

The result is that I'm able to search for stations but no sound is coming out of it. Maybe some mixer setting is wrong?

When I'm trying to adjust the mixer and when I do Apply, the kdradio4 get frozen (the GUI can redraw itself but I can not click on any button or close it). Maybe it has something to do with the messages in the console:

QPainter::begin: A paint device can only be painted by one painter at a time.

Report

C

emw

11 years ago

Hi!

As noted in the prev. note, the latest snapshot r630 should fix most issues and be usable for productive use now. The only thing that worries me a bit is the warning of the QPainter... haven't seen that yet... is it still in r630?

Best regards, Martin

Report

jirityr

11 years ago

Yes, the message is still there even in the r630:

QPainter::begin: A paint device can only be painted by one painter at a time.

It is generated approximately 20 times per second.

Report

C

emw

11 years ago

Hmm... although I could not reproduce it, I found a place which could cause this behaviour with some high probability. Seems to depend on Qt Version (I'm currently using 4.5rc1 from kde-svn). Will be fixed in next snapshot.

Thanks for your feedback!

Martin

Report

jirityr

11 years ago

Actually, it crashes when I want to add next device into the Capture URLs list:

Application: KRadio (kradio4), signal SIGSEGV
0x00007fd9460d6a70 in __nanosleep_nocancel () from /lib/libc.so.6
Current language: auto; currently c

Thread 1 (Thread 0x7fd949f91760 (LWP 2197)):
[KCrash Handler]
#5 QString::operator== (this=0xf0f000000000018, other=<value optimized out>) at tools/qstring.cpp:1782
#6 0x00007fd93db1feb9 in StreamingConfiguration::setStreamOptions (this=0x1186ea0, sf=@0xf0f000000000000, BufferSize=105) at /usr/include/qt4/QtCore/qstring.h:870
#7 0x00007fd93db20182 in StreamingConfiguration::slotCaptureSelectionChanged (this=0x1186ea0)
at /usr/src/debug/media-sound/kradio-20090208-r562/kradio4-snapshot-2009-02-08-r562/plugins/streaming/streaming-configuration.cpp:418
#8 0x00007fd93db2249a in StreamingConfiguration::qt_metacall (this=0x1186ea0, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=<value optimized out>)
at /usr/src/debug/media-sound/kradio-20090208-r562/kradio_build/plugins/streaming/streaming-configuration.moc:104
#9 0x00007fd947d8224d in QMetaObject::activate (sender=0x1184930, from_signal_index=<value optimized out>, to_signal_index=50, argv=0xf99480) at kernel/qobject.cpp:3025
#10 0x00007fd9491f4933 in Q3ListView::setCurrentItem (this=0x1184930, i=0xf99480) at itemviews/q3listview.cpp:5345
#11 0x00007fd9491fe8c6 in Q3ListViewItem::startRename (this=0xf99480, col=1) at itemviews/q3listview.cpp:822
#12 0x00007fd93db21db4 in StreamingConfiguration::slotNewCaptureChannel (this=0x1186ea0)
at /usr/src/debug/media-sound/kradio-20090208-r562/kradio4-snapshot-2009-02-08-r562/plugins/streaming/streaming-configuration.cpp:272
#13 0x00007fd93db224ed in StreamingConfiguration::qt_metacall (this=0x1186ea0, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=<value optimized out>)
at /usr/src/debug/media-sound/kradio-20090208-r562/kradio_build/plugins/streaming/streaming-configuration.moc:99
#14 0x00007fd947d8224d in QMetaObject::activate (sender=0x118b440, from_signal_index=<value optimized out>, to_signal_index=30, argv=0xf99480) at kernel/qobject.cpp:3025
#15 0x00007fd947186ab7 in QAbstractButton::clicked (this=0xf0f000000000018, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:185
#16 0x00007fd946f60ddb in QAbstractButtonPrivate::emitClicked (this=0x118f840) at widgets/qabstractbutton.cpp:544
#17 0x00007fd946f624b5 in QAbstractButtonPrivate::click (this=0x118f840) at widgets/qabstractbutton.cpp:537
#18 0x00007fd946f626bd in QAbstractButton::mouseReleaseEvent (this=0x118b440, e=0x7fff51fd2de0) at widgets/qabstractbutton.cpp:1116
#19 0x00007fd946ce6a5e in QWidget::event (this=0x118b440, event=0x7fff51fd2de0) at kernel/qwidget.cpp:7169
#20 0x00007fd946f619ef in QAbstractButton::event (this=0x118b440, e=0x7fd93db2906e) at widgets/qabstractbutton.cpp:1078
#21 0x00007fd946fe47c7 in QPushButton::event (this=0x118b440, e=0x7fff51fd2de0) at widgets/qpushbutton.cpp:658
#22 0x00007fd946ca243e in QApplicationPrivate::notify_helper (this=0xd59f30, receiver=0x118b440, e=0x7fff51fd2de0) at kernel/qapplication.cpp:3809
#23 0x00007fd946ca8d76 in QApplication::notify (this=<value optimized out>, receiver=0x118b440, e=0x7fff51fd2de0) at kernel/qapplication.cpp:3534
#24 0x00007fd9499d578b in KApplication::notify (this=0x7fff51fd3760, receiver=0x118b440, event=0x7fff51fd2de0)
at /usr/src/debug/kde-base/kdelibs-4.2.0-r2/kdelibs-4.2.0/kdeui/kernel/kapplication.cpp:307
#25 0x00007fd947d72774 in QCoreApplication::notifyInternal (this=0x7fff51fd3760, receiver=0x118b440, event=0x7fff51fd2de0) at kernel/qcoreapplication.cpp:589
#26 0x00007fd946caa94a in QApplicationPrivate::sendMouseEvent (receiver=0x118b440, event=0x7fff51fd2de0, alienWidget=0x118b440, nativeWidget=0xe38310, buttonDown=<value optimized out>,
lastMouseReceiver=@0x7fd947519640) at src/corelib/kernel/qcoreapplication.h:218
#27 0x00007fd946cfa01a in QETWidget::translateMouseEvent (this=0xe38310, event=<value optimized out>) at kernel/qapplication_x11.cpp:4048
#28 0x00007fd946cf8aa5 in QApplication::x11ProcessEvent (this=0x7fff51fd3760, event=0x7fff51fd3480) at kernel/qapplication_x11.cpp:3166
#29 0x00007fd946d1a835 in QEventDispatcherX11::processEvents (this=0xd59ec0, flags=@0x7fff51fd3650) at kernel/qeventdispatcher_x11.cpp:134
#30 0x00007fd947d71b85 in QEventLoop::processEvents (this=<value optimized out>, flags=@0x7fff51fd3690) at kernel/qeventloop.cpp:149
#31 0x00007fd947d71d06 in QEventLoop::exec (this=0x7fff51fd36d0, flags=@0x7fff51fd36e0) at kernel/qeventloop.cpp:196
#32 0x00007fd947d73c5e in QCoreApplication::exec () at kernel/qcoreapplication.cpp:851
#33 0x0000000000464bf1 in main (argc=1, argv=0x7fff51fd3b18) at /usr/src/debug/media-sound/kradio-20090208-r562/kradio4-snapshot-2009-02-08-r562/src/main.cpp:68

Report

C

emw

11 years ago

Hi!

Just a quick guess: From your dump I saw that you are still using the old snapshot (r562). There have been *lots* of known problems inside r562, that snapshot was just send out to show that work on kradio is continuing. The most recent snapshot from yesterday (r630 thus almost 70 svn commits of improvement!) should fix most issues.Hopefully ;-) Please give it a try!


Best regards, Martin

Report

jirityr

11 years ago

Yes, you are right ;o) I forget to upgrade the kradio ;o) Well, it works now much better with the r630 ;o) I'm able to add devices into the Capture URLs list, tune stations and play them. Great work! I have also found a few things which could be fixed:

There is missing the Power icon in the Radio Display.

I have tested also the LIRC support and it works in general. But when I have a global program to control the volume, the kradio4 is still trying to capture the volume buttons over which leads in freezing state. Further, when I want to change the channel over the Ch+, Ch-, it is seeking through the channels and it never stops.

Thank you for the new version! It is great to have kradio for KDE4 and on top of that with support of PVR cards!

Report

C

emw

11 years ago

Some more questions on the zapping-look:
* what are your lirc repeat settings for the ch+/- keys?
* is the GUI of kradio still responding? Can you switch of the radio or look into the error log? There should be log messages for each licq command in the debug view. Could you send me that debug output, please?

BR, Martin

Report

C

emw

11 years ago

FYI: Should be fixed in recent svn revision 652. Please don't for get to configure the LIRC plugin in kradio properly!

BR, Martin

Report

C

emw

11 years ago

hmm... strange... can't reply more than this level... therefore replying on my own message...

Sodele... just a short note on the LIRC issue: Finally I could reproduce that. The reason is that in the kradio mode of the lircrc, an entry like

begin
prog = kradio
config = eventmap
repeat = 1
end

is missing compared to my setup. Although KRadio is "supposed" to work without that entry, this could serve as a workaround at least until the issue is fixed.

Thanks for your feedback and debugging!

BR, Martin

Report

jirityr

11 years ago

I just tested the r649 and the LIRC still doesn't work. My lircrc is the following:

begin
prog = irexec
button = Radio
config = kradio4 &
mode = kradio
repeat = 0
end
begin kradio
begin
prog = kradio4
button = Exit
config = QUIT
repead = 0
end
end kradio

and when I press the Exit button on my remote controller, kradio get frozen and the following message appears many times in the console:

kradio4(7235) IErrorLogClient::sendLogDebug: "2009-02-21T16:15:34 Debug: LIRC: Back/Exit"

Do I need to define the mode section in the lircrc file? Or it is sufficient to define the section with irexec and the rest define in the kradio? I mean to define the "Exit" button directly in the kradio LIRC configuration as "Quit KRadio"?

Btw. the Quit button is still missing an icon ;o)

Report

C

emw

11 years ago

Hi!

Some questions:
* how is "the global program" controlling your volume? Does it react on LIRC commands? If yes, you could either adapt your .lircrc file so that the volume commands are not sent to kradio or tell kradio to ignore the respective lirc-commands (see lirc config page)

* What do you mean by "seeking through channels ... and it never stops"? Is it a zapping through all known channels? Or is it the channel search over the frequency range? If its the latter one, does it stop at the end of the frequency range?

BR, Martin

Report

5 years ago

2014-09-28 (4.0.8)
- various translation updates
- libav/libffmeg crash&compatibility fixes
- sleep/standby/timer fixes
- various minor fixes.

2013-01-19 (4.0.7)
- fix for planar sound sample formats in very recent ffmpeg releases
- support for id3 tags in recording configuration
- fixed segfault in case sample format is unknown
- fixed charset/encoding of id3 tags / vorbis comments


2012-08-15 (4.0.6)
- bugfixes for playlist file .pls handling (BBC stations and further UK radio stations, see bugreport 3534405)
- support for WMV playlists (see bugreport 3534405)
- improved playlist type autodetection

2012-08-02 (4.0.5)
- bugfix for http error handling in playlist handler
- cleanup of internet radio libffmpeg/libav code
- fixed watchdog handling: it was not stopped during station change and caused accessing empty playlists, thus div/0
- removing cr/lf in ICY meta data / RDS data for running text in GUI
- fixed typo in escape sequence code for ICY meta data parsing
- fixed content-type handling for mms streams (allows now skipping slow autodetection)
- finally fixed the problem with skips and stops in internet radio stream decoding
- fixed handling of HTTP 304 (not modified) response code
- updated preset file for RioDeJaneiro/Brazil
- initial partial Slovak translation
- added watchdog for internet streams: reconnects after a configurable stall time
- visualization of disabled alarms
- endianess and sample conversion code speedup
- disabled alsa blocking usleep workaround by default and added configuration option
- updated German translation
- added config option for internet radio stations to set metadata encoding charsets
- further buffer management fixes to stop repeated skips on certain systems
- individual name for quickbar window title
- Czech translation update
- spec file updates

2012-02-18 (4.0.4)
- improved shoutcast support: fixed "Accept:" HTTP header field
- issue warning if a broken V4L2 kernel is detected
- fixed buffer alignment issue to avoid alignment-error segfault in libffmpeg sse2 code

12345678910
9
product-maker jezzivi Feb 09 2013 9 excellent
product-maker symbianflo Aug 16 2012 9 excellent
product-maker lionhater Aug 15 2012 9 excellent
product-maker roctheme Feb 23 2012 9 excellent
product-maker denisq Jan 13 2011 9 excellent
product-maker Incarus Jan 08 2011 9 excellent
product-maker bugmenot1234 Oct 04 2010 9 excellent
product-maker kudlaty Oct 03 2010 9 excellent
product-maker svah4cky0 Sep 27 2010 9 excellent
product-maker Base: 4 x 5.0 Ratings
jezzivi
Feb 09 2013
otomi
Apr 02 2011
denisq
Jan 13 2011
kudlaty
Oct 03 2010
bugmenot1234
May 12 2010
ngrocott
Dec 09 2009
usrkl
Jul 24 2009
panda84
Jun 02 2009
File (click to download) Version Description PackagetypeArchitectureRelease Channel Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
4.0.8
updated Sep 27 2014
added Aug 22 2005
downloads 24h
0
mediaviews 24h 0
pageviews 24h 2