summaryrefslogtreecommitdiffstats
path: root/src/multimedia
diff options
context:
space:
mode:
authorDoris Verria <doris.verria@qt.io>2021-02-15 10:28:53 +0100
committerLars Knoll <lars.knoll@qt.io>2021-03-02 14:50:16 +0000
commit4a6b7816b1f11e00063ee6080141be4d77bca9ac (patch)
treef73ed511fa44773e27c10a47b8517775be4133df /src/multimedia
parent2499b994a77c12a4cd55fd79c83708d18f3d896d (diff)
Show metadata for audio/video files in player example
Change-Id: I10748df06e9866c3121015c657b579aa27ac4450 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/multimedia')
-rw-r--r--src/multimedia/qmediametadata.cpp61
-rw-r--r--src/multimedia/qmediametadata.h4
2 files changed, 65 insertions, 0 deletions
diff --git a/src/multimedia/qmediametadata.cpp b/src/multimedia/qmediametadata.cpp
index 5ab262357..11002d96f 100644
--- a/src/multimedia/qmediametadata.cpp
+++ b/src/multimedia/qmediametadata.cpp
@@ -39,6 +39,7 @@
#include "qmediametadata.h"
#include <qvariant.h>
+#include <qobject.h>
QT_BEGIN_NAMESPACE
@@ -232,5 +233,65 @@ void QMediaMetaData::insert(QMediaMetaData::Key k, const QVariant &value)
data.insert(k, value);
}
+QString QMediaMetaData::metaDataKeyToString(QMediaMetaData::Key k)
+{
+ switch (k) {
+ case QMediaMetaData::Title:
+ return (QObject::tr("Title"));
+ case QMediaMetaData::Author:
+ return (QObject::tr("Author"));
+ case QMediaMetaData::Comment:
+ return (QObject::tr("Comment"));
+ case QMediaMetaData::Description:
+ return (QObject::tr("Description"));
+ case QMediaMetaData::Genre:
+ return (QObject::tr("Genre"));
+ case QMediaMetaData::Year:
+ return (QObject::tr("Year"));
+ case QMediaMetaData::Date:
+ return (QObject::tr("Date"));
+ case QMediaMetaData::Language:
+ return (QObject::tr("Language"));
+ case QMediaMetaData::Publisher:
+ return (QObject::tr("Publisher"));
+ case QMediaMetaData::Copyright:
+ return (QObject::tr("Copyright"));
+ case QMediaMetaData::Url:
+ return (QObject::tr("Url"));
+ case QMediaMetaData::Duration:
+ return (QObject::tr("Duration"));
+ case QMediaMetaData::MediaType:
+ return (QObject::tr("Media type"));
+ case QMediaMetaData::AudioBitRate:
+ return (QObject::tr("Audio bit rate"));
+ case QMediaMetaData::AudioCodec:
+ return (QObject::tr("Audio codec"));
+ case QMediaMetaData::VideoBitRate:
+ return (QObject::tr("Video bit rate"));
+ case QMediaMetaData::VideoCodec:
+ return (QObject::tr("Video codec"));
+ case QMediaMetaData::AlbumTitle:
+ return (QObject::tr("Album title"));
+ case QMediaMetaData::AlbumArtist:
+ return (QObject::tr("Album artist"));
+ case QMediaMetaData::ContributingArtist:
+ return (QObject::tr("Contributing artist"));
+ case QMediaMetaData::TrackNumber:
+ return (QObject::tr("Track number"));
+ case QMediaMetaData::Composer:
+ return (QObject::tr("Composer"));
+ case QMediaMetaData::ThumbnailImage:
+ return (QObject::tr("Thumbnail image"));
+ case QMediaMetaData::CoverArtImage:
+ return (QObject::tr("Cover art image"));
+ case QMediaMetaData::Orientation:
+ return (QObject::tr("Orientation"));
+ case QMediaMetaData::Resolution:
+ return (QObject::tr("Resolution"));
+ case QMediaMetaData::LeadPerformer:
+ return (QObject::tr("Lead performer"));
+ }
+}
+
QT_END_NAMESPACE
diff --git a/src/multimedia/qmediametadata.h b/src/multimedia/qmediametadata.h
index 0bf43309b..3e552aba8 100644
--- a/src/multimedia/qmediametadata.h
+++ b/src/multimedia/qmediametadata.h
@@ -89,6 +89,8 @@ public:
LeadPerformer,
};
+ static const int NumMetaData = 27;
+
// QMetaType typeForKey(Key k);
QVariant value(Key k) const;
void insert(Key k, const QVariant &value);
@@ -100,6 +102,8 @@ public:
bool isEmpty() const { return data.isEmpty(); }
+ static QString metaDataKeyToString(Key k);
+
protected:
friend bool operator==(const QMediaMetaData &a, const QMediaMetaData &b)
{ return a.data == b.data; }