Amarok version : 2.5.0 When playing a stream eg:http://scfire-dtc-aa03.stream.aol.com:80/stream/1049, the current track applet displays Unknown Artist and Unknown Album. Debug output shows amarok does receive the metadata from the phonon backend. amarok: BEGIN: void EngineController::slotMetaDataChanged() amarok: [EngineController] Artist : ("") amarok: [EngineController] Album : ("Radio Paradise") amarok: [EngineController] Title : ("Nirvana - The Man Who Sold The World") amarok: [EngineController] Genre : ("Various") amarok: [EngineController] Tracknumber: ("") amarok: [EngineController] Length : () amarok: [EngineController] Track changed: false current: 0x1953dd0 url "http://scfire-dtc-aa03.stream.aol.com:80/stream/1049" amarok: [EngineController] no spam amarok: BEGIN: void MetaStream::Track::Private::currentMetadataChanged(QVariantMap) amarok: END__: void MetaStream::Track::Private::currentMetadataChanged(QVariantMap) [Took: 0s] amarok: END__: void EngineController::slotMetaDataChanged() [Took: 0s] Metadata ready, sending to zeitgeist Current state: 2 Sending "Nirvana - The Man Who Sold The World by " to zeitgeist Zeitgeist mime type: "audio/raw" Zeitgeist URL: QUrl( "http://scfire-dtc-aa03.stream.aol.com:80/stream/1049" ) mediasource type: 1 amarok: BEGIN: void ScanManager::checkForDirectoryChanges() amarok: BEGIN: void DirWatchJob::setPaused(bool) amarok: END__: void DirWatchJob::setPaused(bool) [Took: 0s] amarok: END__: void ScanManager::checkForDirectoryChanges() [Took: 0s] amarok: BEGIN: virtual bool MainWindow::queryExit() amarok: BEGIN: void MainWindow::saveLayout() amarok: END__: void MainWindow::saveLayout() [Took: 0s] amarok: END__: virtual bool MainWindow::queryExit() [Took: 0s] amarok: BEGIN: virtual App::~App() amarok: [ScanManager] Abort scan: "Abort requested from SqlCollection::stopScan()" amarok: BEGIN: void TimecodeObserver::stopped(qint64, qint64) amarok: END__: void TimecodeObserver::stopped(qint64, qint64) [Took: 0s] amarok: BEGIN: void WikipediaEnginePrivate::_stopped() amarok: END__: void WikipediaEnginePrivate::_stopped() [Took: 0s] amarok: BEGIN: void OSDWidget::show(const QString&, const QImage&) amarok: END__: void OSDWidget::show(const QString&, const QImage&) [Took: 0.007s] amarok: BEGIN: void Context::ContextView::slotTrackChanged(Meta::TrackPtr) amarok: END__: void Context::ContextView::slotTrackChanged(Meta::TrackPtr) [Took: 0s] amarok: BEGIN: void RecentlyPlayedListWidget::trackChanged(Meta::TrackPtr) amarok: BEGIN: void RecentlyPlayedListWidget::updateWidget() amarok: END__: void RecentlyPlayedListWidget::updateWidget() [Took: 0s] amarok: END__: void RecentlyPlayedListWidget::trackChanged(Meta::TrackPtr) [Took: 0s] amarok: BEGIN: void WikipediaEnginePrivate::_checkRequireUpdate(Meta::TrackPtr) amarok: END__: void WikipediaEnginePrivate::_checkRequireUpdate(Meta::TrackPtr) [Took: 0s] amarok: BEGIN: void LyricsAppletPrivate::_trackDataChanged(Meta::TrackPtr) amarok: END__: void LyricsAppletPrivate::_trackDataChanged(Meta::TrackPtr) [Took: 0s] amarok: Playlist properties changed; can go next: true ; can go previous: false amarok: BEGIN: void Amarok::Mpris2DBusHandler::updateTrackProperties() QString::arg: Argument missing: /PendingTrack, /org/mpris/MediaPlayer2 amarok: END__: void Amarok::Mpris2DBusHandler::updateTrackProperties() [Took: 0s] amarok: BEGIN: virtual ScriptManager::~ScriptManager() amarok: BEGIN: virtual ScriptableServiceScript::~ScriptableServiceScript() amarok: END__: virtual ScriptableServiceScript::~ScriptableServiceScript() [Took: 0s] amarok: BEGIN: virtual ScriptableServiceScript::~ScriptableServiceScript() amarok: END__: virtual ScriptableServiceScript::~ScriptableServiceScript() [Took: 0s] amarok: END__: virtual ScriptManager::~ScriptManager() [Took: 0.011s] Reproducible: Always
This is a problem with the phonon-backend-gstreamer, not reproducible with the phonon-backend-vlc. *** This bug has been marked as a duplicate of bug 300189 ***
This is reproducible with phonon-backend-vlc. As you can see from the logs I posted above, amarok does receive metadata from the phonon-backend, it just does not display it.
Which version of the phonon-backend-vlc are you using? FWIW, I can't even use that stream, it crashes with a floating point exception in Pulseaudio, using the phonon-backend-vlc 0.5.0 and Amarok 2.5-git of today
phonon-backend-vlc-0.5.0-1.fc16.1.x86_64 I can run amarok GIT version of today if I remove the lyrics applet. Otherwise I get a crash.
Oh, now I also get it, removed the lyrics app. Confirmed and reassigning back to Amarok. Thank you very much for testing with git as well.
http://quickgit.kde.org/index.php?p=amarok.git&a=commit&h=c7847192c8483d03023fb9ed73db5fee5ee82694 This bug was introduced with the above commit. The author Bart Cerneels<bart.cerneels@kde.org> would be the best person to fix this bug.
Bart, any ideas?
I'll look, at it tomorrow. Think I know how to fix it already.
Git commit b4c58f9eff09333ff4ba47681229737cb485e10c by Bart Cerneels. Committed on 29/05/2012 at 22:21. Pushed by shanachie into branch 'master'. Fix stream metadata update via MetaProxy. Do to thread affinity EngineController::currentMetadataChanged() signal was never delivered to MetaStream::Track::Private. Solved by forcing a direct slot connection. Note: Stream metadata changes while playing is broken in Phonon-gstreamer 4.6.0 but it's fixed in 4.6.1 according to tdfisher. M +17 -18 src/core-impl/meta/stream/Stream_p.h http://commits.kde.org/amarok/b4c58f9eff09333ff4ba47681229737cb485e10c
Yes, its fixed in GIT now.