<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/122404/">https://git.reviewboard.kde.org/r/122404/</a>
     </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On February 3rd, 2015, 1:57 p.m. CET, <b>Harald Sitter</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I really think this code needs to be in phononserver or better yet Phonon itself (akin to the pulsesupport) or even better in VLC.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The solid audiointerface stuff is gone in frameworks5, so ultimately this is a dead end. Equally phononserver is bound to go away at some point in the future and being replaced by listing exclusively what phonon reports (which in turn is pulseaudio listing || backend listing). So, enabling VLC to expose this information through the libvlc_audio_output_device enumerable would be the best course of action. If the VLC devs don't want that or whatever, then putting it in Phonon seems the most useful approach.</p></pre>
 </blockquote>







</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">To be honest, that would suit me perfectly. I'm not quite motivated to invest in learning IOKit at the moment, and Solid even less.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Pulseaudio is a bit problematic on OS X currently, and I've seen many complaints about it (e.g. concerning delays that I can confirm on my Linux systems where event notifications tend to sound "long" after the event).
So the best course of action might yet be to figure out why the vlc backend isn't in MacPorts.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Is phonon-backend-vlc still/indeed the preferred backend for KDE/KF5?</p></pre>
<br />










<p>- René J.V.</p>


<br />
<p>On February 3rd, 2015, 1:44 p.m. CET, René J.V. Bertin wrote:</p>









<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDE Software on Mac OS X, kdelibs, Phonon, and Solid.</div>
<div>By René J.V. Bertin.</div>


<p style="color: grey;"><i>Updated Feb. 3, 2015, 1:44 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kdelibs
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">While trying to bring a functional Multimedia kcm to OS X (see https://git.reviewboard.kde.org/r/122403/), I realised that Solid's IOKit backend doesn't currently support audio devices.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This RR outlines the current state of my draft attempt to provide that support. I'm handicapped by my lack of experience with both IOKit and Solid, and would thus appreciate a helping hand.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I'm currently at a stage where Solid returns a list representing the audio devices present in my system, but apparently not with the correct metadata for phononserver to consider them, despite the fact that I pretend all devices to be pluripotent (i.e. AUDIOCONTROL|AUDIOINPUT|AUDIOOUTPUT) :</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> Solid offers <span style="color: #666666">5</span> audio devices
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> Solid offers <span style="color: #666666">0</span> video devices
...
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> groups<span style="color: #666666">:</span> ()
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> already found devices<span style="color: #666666">:</span> QSet()
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> Audio Playback Devices<span style="color: #666666">:</span> ()
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> Audio Capture Devices<span style="color: #666666">:</span> ()
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>phonon (kded module) PhononServer<span style="color: #666666">::</span>findDevices<span style="color: #666666">:</span> Video Capture Devices<span style="color: #666666">:</span> ()
kded(<span style="color: #666666">81671</span>)<span style="color: #666666">/</span>kded4 <span style="color: #666666">*</span>Kded<span style="color: #666666">::</span>loadModule<span style="color: #666666">:</span> Successfully loaded module <span style="color: #BA2121">"phononserver"</span>
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I'll add a more complete log as an attachment.</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">On OS X 10.9.5/MacPorts with kdelibs 4.14.4 (git/master), kde4-runtime (git/master) and kde4-workspace (git/master); phonon 4.8.3 with phonon-backend-gstreamer 4.8.2 .</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>solid/solid/CMakeLists.txt <span style="color: grey">(a7f1f07)</span></li>

 <li>solid/solid/backends/iokit/iokitdevice.cpp <span style="color: grey">(f113c16)</span></li>

 <li>solid/solid/backends/iokit/iokitmanager.cpp <span style="color: grey">(fcd748e)</span></li>

 <li>solid/solid/devicemanager.cpp <span style="color: grey">(a465169)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/122404/diff/" style="margin-left: 3em;">View Diff</a></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">File Attachments </h1>


 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2015/02/03/67a59590-84a4-4d30-88aa-332d9f068a2c__Solid-20150203.log">full trace with debug output</a></li>

</ul>




  </td>
 </tr>
</table>








  </div>
 </body>
</html>