src/3rdparty/phonon/mmf/audioplayer.cpp
changeset 3 41300fa6a67c
parent 0 1918ee327afb
child 4 3b1da2848fc7
--- a/src/3rdparty/phonon/mmf/audioplayer.cpp	Tue Jan 26 12:42:25 2010 +0200
+++ b/src/3rdparty/phonon/mmf/audioplayer.cpp	Tue Feb 02 00:43:10 2010 +0200
@@ -182,8 +182,8 @@
 
     if (KErrNone == aError) {
         maxVolumeChanged(m_player->MaxVolume());
-
         emit totalTimeChanged(totalTime());
+        updateMetaData();
         changeState(StoppedState);
     } else {
         // TODO: set different error states according to value of aError?
@@ -251,5 +251,24 @@
 #endif // QT_PHONON_MMF_AUDIO_DRM
 
 
+//-----------------------------------------------------------------------------
+// Private functions
+//-----------------------------------------------------------------------------
+
+int MMF::AudioPlayer::numberOfMetaDataEntries() const
+{
+    int numberOfEntries = 0;
+    m_player->GetNumberOfMetaDataEntries(numberOfEntries); // ignoring return code
+    return numberOfEntries;
+}
+
+QPair<QString, QString> MMF::AudioPlayer::metaDataEntry(int index) const
+{
+    CMMFMetaDataEntry *entry = 0;
+    QT_TRAP_THROWING(entry = m_player->GetMetaDataEntryL(index));
+    return QPair<QString, QString>(qt_TDesC2QString(entry->Name()), qt_TDesC2QString(entry->Value()));
+}
+
+
 QT_END_NAMESPACE