<table><tr><td style="">rjvbb added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D14397">View Revision</a></tr></table><br /><div><div><p>[I didn't get to send this yesterday]</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">Not using something because it's from a "rival GUI" is not a valid argument.</pre></div></blockquote>

<p>It is IMVHO if "it" introduces a dependency on another GUI middleware. Libcanberra does that to the best of my knowledge.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>Canberra over GStreamer works there as well.</p></blockquote>

<p>Only if you accept dependencies that shouldn't be required if you want to keep things as native as possible. The fact that a plasma project already uses libcanberra shouldn't be used as an argument for using it in a *framework*. Plasma is exclusive to non-Apple Unix (and in fact almost to Linux), and it's probably irrealistic to think that one could construct a completely GTk-free distribution on such systems (= the library will probably be there anyway).<br />
KNotifications is a Tier1 framework with a cross-platform vocation. For me that means that a solution with QtMultimedia should be preferred if anyway possible. Regardless what that component depends on itself... (Alexey beat me to it I see :))</p>

<p>NB: I'm not talking about glib. That's a platform-agnostic support library that Qt uses even on Mac (I don't know about MSWin).</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>You could shove coreaudio or quicktime behind it if you wanted.</p></blockquote>

<p>*That* would be reinventing the wheel. Why would you want to do that in a Qt-based universe if Qt already has a component where this has been done?<br />
Quicktime is dead, btw.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>That's not true.</p></blockquote>

<p>It is if you leave my remark in its (generic) context... And sound latencies can hardly be avoided with a 100% guarantee with asynchronous playback over an independent daemon process.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>I restored the Phonon option for when canberra isn't available on the platform.</p></blockquote>

<p>I haven't checked, but I'd appreciate if that could also be done through a cmake option. In packaging systems like MacPorts and HB it's perfectly possible to have libcanberra and/or pulseaudio installed for Gnome apps that cannot do without them, but still not want to let other software use them (opportunistic dependencies). Alternatively, CMake has a DISABLE* backdoor for the basic <tt style="background: #ebebeb; font-size: 13px;">find_package()</tt>, not very elegant but maybe it can do the trick?</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R289 KNotifications</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D14397">https://phabricator.kde.org/D14397</a></div></div><br /><div><strong>To: </strong>broulik, Frameworks, dfaure, davidedmundson, sitter, drosca, kfunk, rjvbb<br /><strong>Cc: </strong>alexeymin, ngraham, nicolasfella, kde-frameworks-devel, michaelh, bruns<br /></div>