[Amarok] 527dd33 Finally: Amarok works with Phonon-VLC AND Phonon-X

Mark Kretschmann kretschmann at kde.org
Tue Mar 30 17:21:03 CEST 2010


commit 527dd33277342bbb941c851bbbf1cc4f12ad1442
Author: Mark Kretschmann <kretschmann at kde.org>
Date:   Tue Mar 30 17:25:58 2010 +0200

    Finally: Amarok works with Phonon-VLC AND Phonon-Xine.
    
    Holy shit. This took about 3 days to debug. But I guess it was worth it, as
    Phonon-VLC is now finally usable with Amarok, and it no longer stops after
    each track. Happy testing with the new backend :)
    
    ~yay
    
    CCMAIL: amarok-devel at kde.org

diff --git a/src/EngineController.cpp b/src/EngineController.cpp
index 69b7348..bcc0114 100644
--- a/src/EngineController.cpp
+++ b/src/EngineController.cpp
@@ -165,7 +165,7 @@ EngineController::initializePhonon()
     m_media->setPrefinishMark( 2000 );
 
     connect( m_media, SIGNAL( finished() ), SLOT( slotQueueEnded() ) );
-    connect( m_media, SIGNAL( aboutToFinish()), SLOT( slotAboutToFinish() ) );
+    connect( m_media, SIGNAL( prefinishMarkReached( qint32 ) ), SLOT( slotAboutToFinish() ) );
     connect( m_media, SIGNAL( metaDataChanged() ), SLOT( slotMetaDataChanged() ) );
     connect( m_media, SIGNAL( stateChanged( Phonon::State, Phonon::State ) ), SLOT( slotStateChanged( Phonon::State, Phonon::State ) ) );
     connect( m_media, SIGNAL( tick( qint64 ) ), SLOT( slotTick( qint64 ) ) );
@@ -1032,6 +1032,14 @@ EngineController::slotNewTrackPlaying( const Phonon::MediaSource &source )
 
     trackChangedNotify( m_currentTrack );
     newTrackPlaying();
+
+    if( !m_multiPlayback )
+    {
+        m_media->blockSignals( true );
+        m_media->setCurrentSource( m_currentTrack->playableUrl() );
+        m_media->blockSignals( false );
+    }
+    m_media->play();
 }
 
 void


More information about the Amarok-devel mailing list