Talk:Phonon (software)

Untitled
Is it just me, or will the code listed not compile? I haven't worked with KDE development, but it looks like the line:

media = new MediaObject( this );

doesn't give a type for "media." Is this some sort of macro that doesn't work the way I expect, or is it actually supposed to be something like:

MediaObject *media = new MediaObject( this );

- Forkazoo 00:48, 25 May 2007 (UTC)


 * I'm assuming Media has been predefined as MediaObject *media, but haven't developed in KDE4 yet so don't really feel comfortable updating this

- QTachyon (talk) 02:35, 23 March 2008 (UTC)


 * You are correct, the variable "media" requires a type definition.


 * I'm more concerned with the line "connect(media, SIGNAL(finished), SLOT(slotFinished);". Doesn't this require the definition of another method "slotFinished" in the current class? Wouldn't this increase the number of lines required? More importantly, is that signal/slot connection even necessary? Looking at the relevent reference, I'm pretty sure that "connect([...])" is actually unnecessary in this context.


 * It also appears the "30 lines in the old audio framework" reference also includes function prototype lines and formatting that this example doesn't. Overall, my impression is that, while Phonon can do these things in fewer lines of code, the actual numbers given are dubious. I confess I have not used Phonon, but my reading of the API and the references given makes me believe I am correct. For these reasons, I will rework this part of the article.

Other meaning of the word Phonon
It's worth mentioning that the word Phonon means arts in arabic, but the chances the developers knew that are next to nil.

Should I add this info?


 * sure add it as a trivia
 * Rather not. If the developers didn't know about it, then it has no bearing at all on the subject at hand. Shinobu 11:32, 21 March 2007 (UTC)
 * How could they use the word and not know what it means? I'd suggest asking them where they got the word and publish it here. Most KDE names are based on what it does (KMail, Kompare, Kwin) or have some relation to other programs that do the same thing ([Internet] Explorer, [Netscape] Navigator, [KDE] Konqueror.)
 * Phonon was a constructed name not supposed to be related to anything. As a joke it was introduced as a sound-particle. The origial name of Phonon was KDE Multimedia KdeMM and later M2M (for Multi-MultiMedia framework) Carewolf 11:12, 10 August 2007 (UTC)
 * In any case, Phonon is only relatively close to the word "arts" in Arabic. A closer transliteration would be "Phunuun", with the u pronounced similarly to German. In Arabic there is no "o" sound.

Phonon is not technically a multimedia framework
If I understand correctly Phonon is only a wrapper to provide a single API regardless of the actual multimedia framework being used. New frameworks can be added by writing "engines" for Phonon, besides the regular frameworks engines can be created for other platforms like OS X or Windows.


 * It is both. A framework just means something that provides a consistent platform which Phonon does for multimedia. Carewolf 11:13, 10 August 2007 (UTC)

Backends
Does Phonon support aRts, PulseAudio, etc. or am I misunderstanding at which level the API stands? (like, maybe Phonon uses xine and xine in turn can use aRts etc). 200.127.223.79 (talk) 03:16, 15 May 2008 (UTC)
 * Think this should help for the understanding: Re: PulseAudio and Phonon?. Momet (talk) 06:26, 15 May 2008 (UTC)
 * link's been broken now with the new dot, here's a new link, although you have to scroll thru the comments: . Jordo ex (talk) 17:00, 29 January 2009 (UTC)

The aRts backend was discontinued early on, because it was too much work, and the entire idea was to move away from aRts. Carewolf (talk) 18:17, 25 August 2009 (UTC)

users
Are there any programs that use Phonon in a stable release? Or are applications using Phonon still in development? Are there at least any example programs or beta releases that use Phonon? Herorev (talk) 05:20, 24 May 2008 (UTC)
 * Dragon Player is one example that comes to mind. Brisv e  gas  08:19, 24 May 2008 (UTC)

does not work
The C code snippet does not work for me. The connect is not needed, but you need an AudioPath as I describe here: http://techbase.kde.org/Development/Tutorials/Phonon/Introduction#tutorial2.cpp. Here is the IMO correct snippet: Phonon::MediaObject* media = new Phonon::MediaObject(this); Phonon::AudioOutput *audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory, this); createPath(media, audioOutput); media->setCurrentSource(QUrl("/tmp/example.wav")); media->play; --ThorstenStaerk (talk) 15:02, 15 August 2010 (UTC)

#include
Shouldn't the C++ code example include the necessary #include directives? Neon Merlin  17:43, 21 October 2008 (UTC)

Article Name
Shouldn't this be renamed to Phonon (Qt)? TimmmmCam (talk) 12:29, 26 February 2010 (UTC)

Layers of crap in KDE?
Do I understand this right, that Phonon is yet another abstraction layer? Even the provided scheme File:Phonon-audiodeviceconfig.png abstracts away the Linux kernel and ALSA. Then there could be PulseAudio. The scheme looks as if there is no kernel and device driver:


 * Soundcard Hardware → Linux kernel & ALSA driver → Audio player
 * Soundcard Hardware → Linux kernel & ALSA driver → PulseAudio → Audio player
 * Soundcard Hardware → Linux kernel & ALSA driver → PulseAudio → GStreamer → Audio player
 * Soundcard Hardware → Linux kernel & ALSA driver → PulseAudio → GStreamer → Phonon → Audio player

I understand it is not mandatory to actually make use of Phonon, yet somebody added it. User:ScotXW t@lk
 * pulseaudio did not exist when Phonon was made, and GStreamer was highly unstable. Finally remember Phonon also works with DirectAudio on Windows and CoreWhatever on Mac. And that talk pages are not forums. Carewolf (talk) 20:01, 4 July 2014 (UTC)


 * KDE SC 4 was initially released on 11 January 2008, PulseAudio on July 2004 making your statement plain wrong; This A Guide Through The Linux Sound API Jungle blog entry is from September 2008. User:ScotXW t@lk 16:48, 28 July 2014 (UTC)