1. 01 Oct, 2017 1 commit
    • Michael Pyne's avatar
      Remove Kdelibs4Support. · 1e3b90b8
      Michael Pyne authored
      This required a wide assortment of fixes, including deleting
      needless #include <koldfoo.h> headers, some minor additional porting
      tasks, and adding in includes that were previously only implicitly
      included.
      1e3b90b8
  2. 30 Sep, 2017 1 commit
    • Michael Pyne's avatar
      Fix scratchy/choppy playback in phonon-gstreamer, refactor playback. · 6644a0aa
      Michael Pyne authored
      The simplifications needed for PlayerManager have the sideeffect of
      removing crossfade support for now (but that hasn't worked since KDE
      3...).
      
      Despite the churn to PlayerManager, the actual problem causing poor
      playback was that the position slider was syncing its GUI update
      straight back into PlayerManager::seek.  This affected phonon-vlc less
      for some reason but either way the output is now bearable :) :)
      6644a0aa
  3. 29 Sep, 2017 1 commit
    • Michael Pyne's avatar
      Port away from KUrl. · aa3fc5d1
      Michael Pyne authored
      This removes KUrl from most (but not all) files and throws in minor
      other assorted cleanups that I didn't want to split off into a separate
      commit.
      aa3fc5d1
  4. 27 Aug, 2017 1 commit
    • Michael Pyne's avatar
      Fix 'trying to add empty file warnings'. · 7fe64d10
      Michael Pyne authored
      Finally backtraced it... to a signal handler for PlayerManager.  Turns
      out we get the Stopped state with an old state of Loading after all,
      which was being handled in the else block which assumed
      buffering/playback, and tried to read a (null) FileHandle as a result
      since nothing was actually playing.
      7fe64d10
  5. 26 Aug, 2017 2 commits
  6. 25 Aug, 2017 1 commit
  7. 24 Apr, 2016 1 commit
  8. 10 Oct, 2014 1 commit
    • Michael Pyne's avatar
      player: Handle Phonon-generated pause actions. · 93f4535f
      Michael Pyne authored
      It seems we can get into a Phonon pause state without going through
      JuK's own pause-specific code path. With this patch I can watch KMix
      receive pause events on MPRIS2 with phonon-vlc.
      
      Based on a patch by James Smith that has been languishing in a review
      request. My apologies for the delay! Some whitespace fixes as well.
      
      If there's an open Juk bug for this please let me know and I'll review
      it. I'm closing/CC-ing the one bug I see that might be relevant, which
      couldn't be reproduced earlier (and shouldn't be reproduceable after
      this change).
      
      REVIEW:118754
      BUG:290689
      93f4535f
  9. 13 Feb, 2014 1 commit
  10. 30 Nov, 2013 1 commit
    • Michael Pyne's avatar
      GIT_SILENT: Update source code license headers. · d969a0b4
      Michael Pyne authored
      Thanks to Eric Newberry (from Google Code-In) for running the heavy
      lifting on this.
      
      I made some other corrections since we're touching all the source
      anyways (e.g. fixing my email addresses), fixing the encoding of Richard
      Lärkäng's name, and I've also chosen to avoid the fancy box-shaped
      comments so that there's no issue with trailing spaces/tabs.
      
      REVIEW:114216
      d969a0b4
  11. 03 Sep, 2013 1 commit
    • Michael Pyne's avatar
      scrobbler: Change Scrobbler owner to be JuK, not PlayerManager. · 1fc69df5
      Michael Pyne authored
      PlayerManager will always emit a track changed signal, which means the
      Scrobbler will always have to receive it even if we're not scrobbling
      (my last change to avoid making network requests when not using last.fm
      broke this, it seems).
      
      Instead move the Scrobbler into the base application class where we can
      track whether scrobbling is enabled or not, and Do the Right Thing. I
      don't have a last.fm account so although this should still work (I
      think), I can't verify. I have verified that we at least don't crash
      anymore. Martin, can you double-check when you get a chance?
      
      FIXED-IN:4.11.2
      BUG:323703
      1fc69df5
  12. 20 Apr, 2012 2 commits
    • Alex Merry's avatar
      Fix notification of volume changes and seeks · 9f8851da
      Alex Merry authored
      Setting the volume in MPRIS would previously not update the volume
      slider; it now does.  The CanSeek property is also now always set
      correctly, and Seeked is emitted when appropriate.
      9f8851da
    • Michael Pyne's avatar
      Add more-accurate accessors for track length info. · 17dec63f
      Michael Pyne authored
      Our MPRIS implementation had an inaccurate length calculation because it
      was assuming it was working with units of ms from the PlayerManager but
      was in reality receiving seconds.
      
      Phonon does export ms though, and many other methods of PlayerManager
      work with ms. For the sake of consistency we add millisecond-based
      methods (add instead of replacing due to the existing methods being part
      of the public DBus API), which fixes the calculation as well.
      17dec63f
  13. 24 Feb, 2012 2 commits
  14. 22 Feb, 2012 1 commit
    • Martin Tobias Holmedahl Sandsmark's avatar
      Add last.fm scrobbling support to JuK. · 62c3c0ae
      Martin Tobias Holmedahl Sandsmark authored
      No configuration GUI yet, you have to add a [Scrobbling] section to your jukrc,
      with a Username=foo and Password=bar field to make it work.
      
      Doesn't use liblastfm, because liblastfm doesn't support the latest last.fm API.
      
      FEATURE:
      CCBUG:262194
      
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=1281560
      62c3c0ae
  15. 31 Jul, 2011 1 commit
  16. 09 May, 2011 1 commit
    • Scott Wheeler's avatar
      Switch to Amarok's volume / track polition sliders. · 5487fcaa
      Scott Wheeler authored
      There's a lot that still seems wonky, but it seems to all be Phonon
      breakage that I can reproduce with the version pre-changeset.
      
      Specifically Phonon (or its backends) seem quite fickle about when
      they've decided that seeking is enabled.  The crossfading code seems
      to compound this, but again, this does not seem to be a regression
      from the previous code.
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=1231011
      5487fcaa
  17. 21 Feb, 2010 1 commit
  18. 20 Feb, 2010 1 commit
    • Markus Slopianka's avatar
      · de6eb1a0
      Markus Slopianka authored
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=1093436
      de6eb1a0
  19. 26 Nov, 2009 1 commit
    • Michael Pyne's avatar
      Decouple PlayerManager from JuK so that it isn't a singleton. · c0204770
      Michael Pyne authored
      The major reason for this change is to allow for a saner destruct sequence
      (instead of the unordered global static destruct sequence) which will hopefully
      help reduce crash-on-shutdown bugs.
      
      This will not be in the upcoming KDE 4.4 beta but will be in the 4.4 release (assuming no
      bugs are found in it ;)
      
      CCMAIL:nlecureuil@mandriva.com
      
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=1054429
      c0204770
  20. 30 Oct, 2009 1 commit
  21. 29 Oct, 2009 1 commit
  22. 20 Sep, 2009 1 commit
  23. 23 Aug, 2009 1 commit
  24. 17 Aug, 2009 1 commit
  25. 17 Mar, 2009 1 commit
  26. 06 Mar, 2009 2 commits
    • Michael Pyne's avatar
      Remove unused code · 27e2d387
      Michael Pyne authored
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=935734
      27e2d387
    • Michael Pyne's avatar
      Make the "2 MediaObject" Phonon playback work better in the face of the NowPlaying applet. · 08967e3c
      Michael Pyne authored
      (Long story, but suffice to say that JuK forcing the applet to poll for the current position
      becomes a problem when the applet's position slider moves, causing a seek() call over DBus,
      which will (if the position requested is not the same as the current position due to the poll
      lag) skip to the next track if it happens while crossfading).  Stopping crossfading shouldn't
      have caused that effect so that's a JuK bug, now fixed.
      
      Also use prefinishMark in order to control when crossfading will happen.
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=935733
      08967e3c
  27. 04 Feb, 2009 1 commit
    • Michael Pyne's avatar
      Two bugfixes: · 5f913836
      Michael Pyne authored
      1. Don't allow JuK to shutdown until Phonon has definitely returned to StoppedState to prevent some backends
      from crashing on shutdown.
      
      2. Delay system tray creation until after the collection list has been loaded from the cache.  If we're
      trying to create the system tray before this process then half the time we end up freezing all of Plasma
      until the cache finally loads, which is especially noticable on initial KDE startup.
      
      I will give this a few days of testing in /trunk and will then probably backport both.
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=921339
      5f913836
  28. 25 Jan, 2009 1 commit
    • Michael Pyne's avatar
      Crossing my fingers here but this refactor of the playback code seems to be... · 96995095
      Michael Pyne authored
      Crossing my fingers here but this refactor of the playback code seems to be working well in both phonon-xine
      and phonon-gst.  Crossfade only occurs when a song ends now while the change is abrupt when manually switching
      tracks because I'm evil (or awesome depending on how you see it).
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=916339
      96995095
  29. 20 Jan, 2009 1 commit
  30. 12 Jul, 2008 2 commits
  31. 21 Jun, 2008 1 commit
  32. 17 Jun, 2008 1 commit
  33. 14 Jun, 2008 1 commit
    • Michael Pyne's avatar
      Really mostly fix bug 161168 (JuK crossfading is teh suck). · ff88f1ae
      Michael Pyne authored
      We cache the VolumeFaderEffect object and include it in the pipeline at all times.  What this does is allows
      the volume changing to go smoothly when we try to start changing the volume of our playing track.
      
      In addition phonon-gst crashes if I try to remove the fader effect afterwards and skips horribly if I don't
      cache the fader effect.
      
      Unfortunately phonon-xine suffers from crackling sounds with the fader effect left in the chain, so now
      phonon-gst is the best backend to use for JuK.  Both sound much better during the fading process though,
      although phonon-xine still suffers from initial high volume on the incoming song.
      
      This pretty much works for me now though, so I'm closing the bug.
      
      BUG:161168
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=820637
      ff88f1ae
  34. 19 May, 2008 1 commit
  35. 18 May, 2008 1 commit
    • Michael Pyne's avatar
      Improve crossfading in JuK trunk to not sound like a catastrophe for the · e2ff1af4
      Michael Pyne authored
      first half second.  I think the order of inserting effects into the audio path
      has something to do with it, so I've reordered everything to be ready before
      starting the next track.
      
      In addition you shouldn't get huge volume jumps when crossfading rapidly and I've improved the memory
      allocation lifetimes.
      
      Unfortunately you still sometimes get a bit of high-volume at the beginning of the next track but I don't
      think that is juk's fault.
      
      CCBUG:161168
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=809464
      e2ff1af4