<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://svn.reviewboard.kde.org/r/6902/">http://svn.reviewboard.kde.org/r/6902/</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 14th, 2012, 6:43 a.m., <b>Ian Wadham</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;">I think you have deleted too much in KGoldrunner. My intention was, if OpenAL is not available at build time, to keep KGoldrunner silent and not compile *any* of the sound code. IOW I am deprecating the use of Phonon in KGoldrunner and am not willing for it to be built in indirectly because it is a "fallback" inside KgSound or KGAudioScene.

I am serious about this. Phonon makes my application sound terrible... KGoldrunner went for a whole release (KDE SC 4.6) with no sound because the sound produced by Phonon was so bad. I spent large parts of my time a year ago on the Phonon list trying to get answers, but in vain. Also no amount of re-building with more and more recent versions of KDE libs, Phonon, Phonon Backend, Qt or GStreamer made any improvement. Finally I switched to TagaroAudio and OpenAL and everything has worked fine ever since.

Perhaps the Granatier authors had similar experience with Phonon. They were the first to switch to TagaroAudio.

I think it is OK to delete the KGrSoundBank class in KGoldrunner, and any other references to Phonon, because I think it is unlikely that Phonon will improve regarding the playing of short sounds. We have been waiting four years for that at KDE Games, but performance has only got worse.</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;">I have introduced a new function KgAudioScene::capabilities(), where the OpenAL backend reports among others the flag SupportsLowLatencyPlayback. I'll update the patch to check that flag in KGoldRunner.</pre>
<br />








<p>- Stefan</p>


<br />
<p>On February 13th, 2012, 8:37 p.m., Stefan Majewsky wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://svn.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for KDE Games and Ian Wadham.</div>
<div>By Stefan Majewsky.</div>


<p style="color: grey;"><i>Updated Feb. 13, 2012, 8:37 p.m.</i></p>






<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;">As the first new component in libkdegames v5, I'm adding TagaroAudio which has already resided in the kdegames source tree via private static copies in Granatier and KGoldRunner. This patch ports both to the new classes in libkdegames.

Because the Tagaro brand name need be eliminated as the code is imported into libkdegames, I have removed the Tagaro namespace and added a "Kg" prefix to the class names, which are now KgAudioScene and KgSound. I know that this is a departure from the current "KGameFoo" naming scheme, see my mail to the kde-games-devel@ about this.

I could not get reviewboard to accept my patch including the various files I deleted, so here's a list of all deleted stuff:
* granatier/cmake/modules/FindSndFile.cmake (now in <toplevel>/cmake/modules)
* granatier/src/TagaroAudio
* granatier/src/granatiersound.{h,cpp} (Tagaro::Sound is now used directly instead of the thin wrapper GranatierSound)
* kgoldrunner/cmake/modules/FindSndFile.cmake (see above; why did we have two copies of this anyway?)
* kgoldrunner/src/TagaroAudio
* kgoldrunner/src/kgrsoundbank.{h,cpp} (after I removed the ifdefs, it was not used anywhere, so I figured it's about time to retire this class).

I checked the log of the static copies of TagaroAudio in Granatier and KGoldRunner, and imported a patch from Mathias Kraus in granatier/src/Tagaro into the KgAudio code.</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;">Sound playback works in Granatier and KGoldRunner.</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>trunk/KDE/kdegames/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/cmake/modules/FindSndFile.cmake <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/granatier/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/granatier/src/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/granatier/src/game.h <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/granatier/src/game.cpp <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/kgoldrunner.cpp <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/kgrgame.h <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/kgrgame.cpp <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/kgrsounds.h <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/kgrsounds.cpp <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/kgoldrunner/src/main.cpp <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgaudioscene-openal.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgaudioscene-phonon.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgaudioscene.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgopenalruntime_p.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgsound-openal.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgsound-phonon.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/audio/kgsound.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/includes/CMakeLists.txt <span style="color: grey">(1279940)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/includes/KgAudioScene <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdegames/libkdegames/includes/KgSound <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

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




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








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