Changed metadata keys type from enum to QString.
This allows to combine metaData and extendedMetaData and simplify metadata handling on both backend and application sides. Change-Id: I136eedc86c215be3485db101c43069ca7c82101b Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
This commit is contained in:
committed by
Qt by Nokia
parent
382ba7d4f4
commit
8ff5b88b27
@@ -203,8 +203,6 @@ bool QCameraImageCapture::setMediaObject(QMediaObject *mediaObject)
|
||||
this, SIGNAL(imageCaptured(int,QImage)));
|
||||
disconnect(d->control, SIGNAL(imageAvailable(int,QVideoFrame)),
|
||||
this, SIGNAL(imageAvailable(int,QVideoFrame)));
|
||||
disconnect(d->control, SIGNAL(imageMetadataAvailable(int,QtMultimedia::MetaData,QVariant)),
|
||||
this, SIGNAL(imageMetadataAvailable(int,QtMultimedia::MetaData,QVariant)));
|
||||
disconnect(d->control, SIGNAL(imageMetadataAvailable(int,QString,QVariant)),
|
||||
this, SIGNAL(imageMetadataAvailable(int,QString,QVariant)));
|
||||
disconnect(d->control, SIGNAL(imageSaved(int,QString)),
|
||||
@@ -255,8 +253,6 @@ bool QCameraImageCapture::setMediaObject(QMediaObject *mediaObject)
|
||||
this, SIGNAL(imageExposed(int)));
|
||||
connect(d->control, SIGNAL(imageCaptured(int,QImage)),
|
||||
this, SIGNAL(imageCaptured(int,QImage)));
|
||||
connect(d->control, SIGNAL(imageMetadataAvailable(int,QtMultimedia::MetaData,QVariant)),
|
||||
this, SIGNAL(imageMetadataAvailable(int,QtMultimedia::MetaData,QVariant)));
|
||||
connect(d->control, SIGNAL(imageMetadataAvailable(int,QString,QVariant)),
|
||||
this, SIGNAL(imageMetadataAvailable(int,QString,QVariant)));
|
||||
connect(d->control, SIGNAL(imageAvailable(int,QVideoFrame)),
|
||||
@@ -614,25 +610,14 @@ void QCameraImageCapture::cancelCapture()
|
||||
Frame \a preview can be displayed to user.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QCameraImageCapture::imageMetadataAvailable(int id, QtMultimedia::MetaData key, const QVariant &value)
|
||||
|
||||
Signals that a metadata for an image with request \a id is available.
|
||||
This signal is emitted for metadata \a value with a \a key listed in QtMultimedia::MetaData enum.
|
||||
|
||||
This signal is emitted between imageExposed and imageSaved signals.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QCameraImageCapture::imageMetadataAvailable(int id, const QString &key, const QVariant &value)
|
||||
|
||||
Signals that a metadata for an image with request \a id is available.
|
||||
This signal is emitted for extended metadata \a value with a \a key not listed in QtMultimedia::MetaData enum.
|
||||
|
||||
This signal is emitted between imageExposed and imageSaved signals.
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn QCameraImageCapture::imageAvailable(int id, const QVideoFrame &buffer)
|
||||
|
||||
|
||||
@@ -136,7 +136,6 @@ Q_SIGNALS:
|
||||
|
||||
void imageExposed(int id);
|
||||
void imageCaptured(int id, const QImage &preview);
|
||||
void imageMetadataAvailable(int id, QtMultimedia::MetaData key, const QVariant &value);
|
||||
void imageMetadataAvailable(int id, const QString &key, const QVariant &value);
|
||||
void imageAvailable(int id, const QVideoFrame &image);
|
||||
void imageSaved(int id, const QString &fileName);
|
||||
|
||||
@@ -136,21 +136,10 @@ QCameraImageCaptureControl::~QCameraImageCaptureControl()
|
||||
has been captured and a \a preview is available.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QCameraImageCaptureControl::imageMetadataAvailable(int id, QtMultimedia::MetaData key, const QVariant &value)
|
||||
|
||||
Signals that a metadata for an image with request \a id is available.
|
||||
This signal is emitted for metadata \a value with a \a key listed in QtMultimedia::MetaData enum.
|
||||
|
||||
This signal should be emitted between imageExposed and imageSaved signals.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QCameraImageCaptureControl::imageMetadataAvailable(int id, const QString &key, const QVariant &value)
|
||||
|
||||
Signals that a metadata for an image with request \a id is available.
|
||||
This signal is emitted for extended metadata \a value with a \a key not listed in QtMultimedia::MetaData enum.
|
||||
|
||||
This signal should be emitted between imageExposed and imageSaved signals.
|
||||
*/
|
||||
|
||||
|
||||
@@ -76,7 +76,6 @@ Q_SIGNALS:
|
||||
|
||||
void imageExposed(int id);
|
||||
void imageCaptured(int id, const QImage &preview);
|
||||
void imageMetadataAvailable(int id, QtMultimedia::MetaData key, const QVariant &value);
|
||||
void imageMetadataAvailable(int id, const QString &key, const QVariant &value);
|
||||
void imageAvailable(int id, const QVideoFrame &buffer);
|
||||
void imageSaved(int id, const QString &fileName);
|
||||
|
||||
@@ -125,11 +125,12 @@ QMediaStreamsControl::~QMediaStreamsControl()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QMediaStreamsControl::metaData(int stream, QtMultimedia::MetaData key)
|
||||
\fn QMediaStreamsControl::metaData(int stream, const QString &key)
|
||||
|
||||
Returns the meta-data value of \a key for a given \a stream.
|
||||
|
||||
Useful metadata keya are QtMultimedia::Title, QtMultimedia::Description and QtMultimedia::Language.
|
||||
Useful metadata keys are QtMultimedia::MetaData::Title,
|
||||
QtMultimedia::MetaData::Description and QtMultimedia::MetaData::Language.
|
||||
*/
|
||||
|
||||
/*!
|
||||
|
||||
@@ -67,7 +67,7 @@ public:
|
||||
virtual int streamCount() = 0;
|
||||
virtual StreamType streamType(int streamNumber) = 0;
|
||||
|
||||
virtual QVariant metaData(int streamNumber, QtMultimedia::MetaData key) = 0;
|
||||
virtual QVariant metaData(int streamNumber, const QString &key) = 0;
|
||||
|
||||
virtual bool isActive(int streamNumber) = 0;
|
||||
virtual void setActive(int streamNumber, bool state) = 0;
|
||||
|
||||
@@ -59,9 +59,8 @@ QT_BEGIN_NAMESPACE
|
||||
If a QMediaService can provide read or write access to the meta-data of
|
||||
its current media it will implement QMetaDataReaderControl. This control
|
||||
provides functions for both retrieving and setting meta-data values.
|
||||
Meta-data may be addressed by the well defined keys in the
|
||||
QtMultimedia::MetaData enumeration using the metaData() functions, or by
|
||||
string keys using the extendedMetaData() functions.
|
||||
Meta-data may be addressed by the keys defined in the
|
||||
QtMultimedia::MetaData namespace.
|
||||
|
||||
The functionality provided by this control is exposed to application
|
||||
code by the meta-data members of QMediaObject, and so meta-data access
|
||||
@@ -112,7 +111,7 @@ QMetaDataReaderControl::~QMetaDataReaderControl()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QVariant QMetaDataReaderControl::metaData(QtMultimedia::MetaData key) const
|
||||
\fn QVariant QMetaDataReaderControl::metaData(const QString &key) const
|
||||
|
||||
Returns the meta-data for the given \a key.
|
||||
*/
|
||||
@@ -123,22 +122,6 @@ QMetaDataReaderControl::~QMetaDataReaderControl()
|
||||
Returns a list of keys there is meta-data available for.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QMetaDataReaderControl::extendedMetaData(const QString &key) const
|
||||
|
||||
Returns the metaData for an abitrary string \a key.
|
||||
|
||||
The valid selection of keys for extended meta-data is determined by the provider and the meaning
|
||||
and type may differ between providers.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QMetaDataReaderControl::availableExtendedMetaData() const
|
||||
|
||||
Returns a list of keys there is extended meta-data available for.
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn void QMetaDataReaderControl::metaDataChanged()
|
||||
|
||||
|
||||
@@ -66,11 +66,8 @@ public:
|
||||
|
||||
virtual bool isMetaDataAvailable() const = 0;
|
||||
|
||||
virtual QVariant metaData(QtMultimedia::MetaData key) const = 0;
|
||||
virtual QList<QtMultimedia::MetaData> availableMetaData() const = 0;
|
||||
|
||||
virtual QVariant extendedMetaData(const QString &key) const = 0;
|
||||
virtual QStringList availableExtendedMetaData() const = 0;
|
||||
virtual QVariant metaData(const QString &key) const = 0;
|
||||
virtual QStringList availableMetaData() const = 0;
|
||||
|
||||
Q_SIGNALS:
|
||||
void metaDataChanged();
|
||||
|
||||
@@ -59,9 +59,8 @@ QT_BEGIN_NAMESPACE
|
||||
If a QMediaService can provide write access to the meta-data of its
|
||||
current media it will implement QMetaDataWriterControl. This control
|
||||
provides functions for both retrieving and setting meta-data values.
|
||||
Meta-data may be addressed by the well defined keys in the
|
||||
QtMultimedia::MetaData enumeration using the metaData() functions, or
|
||||
by string keys using the extendedMetaData() functions.
|
||||
Meta-data may be addressed by the keys defined in the
|
||||
QtMultimedia::MetaData namespace.
|
||||
|
||||
The functionality provided by this control is exposed to application code
|
||||
by the meta-data members of QMediaObject, and so meta-data access is
|
||||
@@ -119,13 +118,13 @@ QMetaDataWriterControl::~QMetaDataWriterControl()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QVariant QMetaDataWriterControl::metaData(QtMultimedia::MetaData key) const
|
||||
\fn QVariant QMetaDataWriterControl::metaData(const QString &key) const
|
||||
|
||||
Returns the meta-data for the given \a key.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn void QMetaDataWriterControl::setMetaData(QtMultimedia::MetaData key, const QVariant &value)
|
||||
\fn void QMetaDataWriterControl::setMetaData(const QString &key, const QVariant &value)
|
||||
|
||||
Sets the \a value of the meta-data element with the given \a key.
|
||||
*/
|
||||
@@ -136,31 +135,6 @@ QMetaDataWriterControl::~QMetaDataWriterControl()
|
||||
Returns a list of keys there is meta-data available for.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QMetaDataWriterControl::extendedMetaData(const QString &key) const
|
||||
|
||||
Returns the meta-data for an abitrary string \a key.
|
||||
|
||||
The valid selection of keys for extended meta-data is determined by the provider and the meaning
|
||||
and type may differ between providers.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QMetaDataWriterControl::setExtendedMetaData(const QString &key, const QVariant &value)
|
||||
|
||||
Change the value of the meta-data element with an abitrary string \a key to \a value.
|
||||
|
||||
The valid selection of keys for extended meta-data is determined by the provider and the meaning
|
||||
and type may differ between providers.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QMetaDataWriterControl::availableExtendedMetaData() const
|
||||
|
||||
Returns a list of keys there is extended meta-data available for.
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn void QMetaDataWriterControl::metaDataChanged()
|
||||
|
||||
|
||||
@@ -67,14 +67,9 @@ public:
|
||||
virtual bool isWritable() const = 0;
|
||||
virtual bool isMetaDataAvailable() const = 0;
|
||||
|
||||
virtual QVariant metaData(QtMultimedia::MetaData key) const = 0;
|
||||
virtual void setMetaData(QtMultimedia::MetaData key, const QVariant &value) = 0;
|
||||
virtual QList<QtMultimedia::MetaData> availableMetaData() const = 0;
|
||||
|
||||
virtual QVariant extendedMetaData(const QString &key) const = 0;
|
||||
virtual void setExtendedMetaData(const QString &key, const QVariant &value) = 0;
|
||||
virtual QStringList availableExtendedMetaData() const = 0;
|
||||
|
||||
virtual QVariant metaData(const QString &key) const = 0;
|
||||
virtual void setMetaData(const QString &key, const QVariant &value) = 0;
|
||||
virtual QStringList availableMetaData() const = 0;
|
||||
|
||||
Q_SIGNALS:
|
||||
void metaDataChanged();
|
||||
|
||||
@@ -322,7 +322,7 @@ bool QMediaObject::isMetaDataAvailable() const
|
||||
/*!
|
||||
Returns the value associated with a meta-data \a key.
|
||||
*/
|
||||
QVariant QMediaObject::metaData(QtMultimedia::MetaData key) const
|
||||
QVariant QMediaObject::metaData(const QString &key) const
|
||||
{
|
||||
Q_D(const QMediaObject);
|
||||
|
||||
@@ -334,13 +334,13 @@ QVariant QMediaObject::metaData(QtMultimedia::MetaData key) const
|
||||
/*!
|
||||
Returns a list of keys there is meta-data available for.
|
||||
*/
|
||||
QList<QtMultimedia::MetaData> QMediaObject::availableMetaData() const
|
||||
QStringList QMediaObject::availableMetaData() const
|
||||
{
|
||||
Q_D(const QMediaObject);
|
||||
|
||||
return d->metaDataControl
|
||||
? d->metaDataControl->availableMetaData()
|
||||
: QList<QtMultimedia::MetaData>();
|
||||
: QStringList();
|
||||
}
|
||||
|
||||
/*!
|
||||
@@ -349,34 +349,6 @@ QList<QtMultimedia::MetaData> QMediaObject::availableMetaData() const
|
||||
Signals that this media object's meta-data has changed.
|
||||
*/
|
||||
|
||||
/*!
|
||||
Returns the value associated with a meta-data \a key.
|
||||
|
||||
The naming and type of extended meta-data is not standardized, so the values and meaning
|
||||
of keys may vary between backends.
|
||||
*/
|
||||
QVariant QMediaObject::extendedMetaData(const QString &key) const
|
||||
{
|
||||
Q_D(const QMediaObject);
|
||||
|
||||
return d->metaDataControl
|
||||
? d->metaDataControl->extendedMetaData(key)
|
||||
: QVariant();
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a list of keys there is extended meta-data available for.
|
||||
*/
|
||||
QStringList QMediaObject::availableExtendedMetaData() const
|
||||
{
|
||||
Q_D(const QMediaObject);
|
||||
|
||||
return d->metaDataControl
|
||||
? d->metaDataControl->availableExtendedMetaData()
|
||||
: QStringList();
|
||||
}
|
||||
|
||||
|
||||
void QMediaObject::setupMetaData()
|
||||
{
|
||||
Q_D(QMediaObject);
|
||||
|
||||
@@ -79,11 +79,8 @@ public:
|
||||
|
||||
bool isMetaDataAvailable() const;
|
||||
|
||||
QVariant metaData(QtMultimedia::MetaData key) const;
|
||||
QList<QtMultimedia::MetaData> availableMetaData() const;
|
||||
|
||||
QVariant extendedMetaData(const QString &key) const;
|
||||
QStringList availableExtendedMetaData() const;
|
||||
QVariant metaData(const QString &key) const;
|
||||
QStringList availableMetaData() const;
|
||||
|
||||
Q_SIGNALS:
|
||||
void notifyIntervalChanged(int milliSeconds);
|
||||
|
||||
@@ -54,17 +54,127 @@ namespace
|
||||
{
|
||||
qRegisterMetaType<QtMultimedia::AvailabilityError>();
|
||||
qRegisterMetaType<QtMultimedia::SupportEstimate>();
|
||||
qRegisterMetaType<QtMultimedia::MetaData>();
|
||||
qRegisterMetaType<QtMultimedia::EncodingMode>();
|
||||
qRegisterMetaType<QtMultimedia::EncodingQuality>();
|
||||
}
|
||||
} _registerMetaTypes;
|
||||
}
|
||||
|
||||
/*!
|
||||
\enum QtMultimedia::MetaData
|
||||
/*
|
||||
When these conditions are satisfied, QStringLiteral is implemented by
|
||||
gcc's statement-expression extension. However, in this file it will
|
||||
not work, because "statement-expressions are not allowed outside functions
|
||||
nor in template-argument lists".
|
||||
|
||||
This enum provides identifiers for meta-data attributes.
|
||||
Fall back to the less-performant QLatin1String in this case.
|
||||
*/
|
||||
#if defined(QStringLiteral) && defined(QT_UNICODE_LITERAL_II) && defined(Q_CC_GNU) && !defined(Q_COMPILER_LAMBDA)
|
||||
# undef QStringLiteral
|
||||
# define QStringLiteral QLatin1String
|
||||
#endif
|
||||
|
||||
#define Q_DEFINE_METADATA(key) const QString QtMultimedia::MetaData::key(QStringLiteral(#key))
|
||||
|
||||
// Common
|
||||
Q_DEFINE_METADATA(Title);
|
||||
Q_DEFINE_METADATA(SubTitle);
|
||||
Q_DEFINE_METADATA(Author);
|
||||
Q_DEFINE_METADATA(Comment);
|
||||
Q_DEFINE_METADATA(Description);
|
||||
Q_DEFINE_METADATA(Category);
|
||||
Q_DEFINE_METADATA(Genre);
|
||||
Q_DEFINE_METADATA(Year);
|
||||
Q_DEFINE_METADATA(Date);
|
||||
Q_DEFINE_METADATA(UserRating);
|
||||
Q_DEFINE_METADATA(Keywords);
|
||||
Q_DEFINE_METADATA(Language);
|
||||
Q_DEFINE_METADATA(Publisher);
|
||||
Q_DEFINE_METADATA(Copyright);
|
||||
Q_DEFINE_METADATA(ParentalRating);
|
||||
Q_DEFINE_METADATA(RatingOrganization);
|
||||
|
||||
// Media
|
||||
Q_DEFINE_METADATA(Size);
|
||||
Q_DEFINE_METADATA(MediaType);
|
||||
Q_DEFINE_METADATA(Duration);
|
||||
|
||||
// Audio
|
||||
Q_DEFINE_METADATA(AudioBitRate);
|
||||
Q_DEFINE_METADATA(AudioCodec);
|
||||
Q_DEFINE_METADATA(AverageLevel);
|
||||
Q_DEFINE_METADATA(ChannelCount);
|
||||
Q_DEFINE_METADATA(PeakValue);
|
||||
Q_DEFINE_METADATA(SampleRate);
|
||||
|
||||
// Music
|
||||
Q_DEFINE_METADATA(AlbumTitle);
|
||||
Q_DEFINE_METADATA(AlbumArtist);
|
||||
Q_DEFINE_METADATA(ContributingArtist);
|
||||
Q_DEFINE_METADATA(Composer);
|
||||
Q_DEFINE_METADATA(Conductor);
|
||||
Q_DEFINE_METADATA(Lyrics);
|
||||
Q_DEFINE_METADATA(Mood);
|
||||
Q_DEFINE_METADATA(TrackNumber);
|
||||
Q_DEFINE_METADATA(TrackCount);
|
||||
|
||||
Q_DEFINE_METADATA(CoverArtUrlSmall);
|
||||
Q_DEFINE_METADATA(CoverArtUrlLarge);
|
||||
|
||||
// Image/Video
|
||||
Q_DEFINE_METADATA(Resolution);
|
||||
Q_DEFINE_METADATA(PixelAspectRatio);
|
||||
|
||||
// Video
|
||||
Q_DEFINE_METADATA(VideoFrameRate);
|
||||
Q_DEFINE_METADATA(VideoBitRate);
|
||||
Q_DEFINE_METADATA(VideoCodec);
|
||||
|
||||
Q_DEFINE_METADATA(PosterUrl);
|
||||
|
||||
// Movie
|
||||
Q_DEFINE_METADATA(ChapterNumber);
|
||||
Q_DEFINE_METADATA(Director);
|
||||
Q_DEFINE_METADATA(LeadPerformer);
|
||||
Q_DEFINE_METADATA(Writer);
|
||||
|
||||
// Photos
|
||||
Q_DEFINE_METADATA(CameraManufacturer);
|
||||
Q_DEFINE_METADATA(CameraModel);
|
||||
Q_DEFINE_METADATA(Event);
|
||||
Q_DEFINE_METADATA(Subject);
|
||||
Q_DEFINE_METADATA(Orientation);
|
||||
Q_DEFINE_METADATA(ExposureTime);
|
||||
Q_DEFINE_METADATA(FNumber);
|
||||
Q_DEFINE_METADATA(ExposureProgram);
|
||||
Q_DEFINE_METADATA(ISOSpeedRatings);
|
||||
Q_DEFINE_METADATA(ExposureBiasValue);
|
||||
Q_DEFINE_METADATA(DateTimeOriginal);
|
||||
Q_DEFINE_METADATA(DateTimeDigitized);
|
||||
Q_DEFINE_METADATA(SubjectDistance);
|
||||
Q_DEFINE_METADATA(MeteringMode);
|
||||
Q_DEFINE_METADATA(LightSource);
|
||||
Q_DEFINE_METADATA(Flash);
|
||||
Q_DEFINE_METADATA(FocalLength);
|
||||
Q_DEFINE_METADATA(ExposureMode);
|
||||
Q_DEFINE_METADATA(WhiteBalance);
|
||||
Q_DEFINE_METADATA(DigitalZoomRatio);
|
||||
Q_DEFINE_METADATA(FocalLengthIn35mmFilm);
|
||||
Q_DEFINE_METADATA(SceneCaptureType);
|
||||
Q_DEFINE_METADATA(GainControl);
|
||||
Q_DEFINE_METADATA(Contrast);
|
||||
Q_DEFINE_METADATA(Saturation);
|
||||
Q_DEFINE_METADATA(Sharpness);
|
||||
Q_DEFINE_METADATA(DeviceSettingDescription);
|
||||
|
||||
Q_DEFINE_METADATA(PosterImage);
|
||||
Q_DEFINE_METADATA(CoverArtImage);
|
||||
Q_DEFINE_METADATA(ThumbnailImage);
|
||||
|
||||
|
||||
/*!
|
||||
\namespace QtMultimedia::MetaData
|
||||
|
||||
This namespace provides identifiers for meta-data attributes.
|
||||
|
||||
\note Not all identifiers are supported on all platforms. Please consult vendor documentation for specific support
|
||||
on different platforms.
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
|
||||
#include <QtCore/qpair.h>
|
||||
#include <QtCore/qmetatype.h>
|
||||
#include <QtCore/qstring.h>
|
||||
|
||||
#include <qtmultimediadefs.h>
|
||||
|
||||
@@ -53,106 +54,106 @@ QT_BEGIN_NAMESPACE
|
||||
|
||||
QT_MODULE(Multimedia)
|
||||
|
||||
#define Q_DECLARE_METADATA(key) Q_MULTIMEDIA_EXPORT extern const QString key
|
||||
|
||||
namespace QtMultimedia
|
||||
{
|
||||
enum MetaData
|
||||
{
|
||||
namespace MetaData {
|
||||
// Common
|
||||
Title,
|
||||
SubTitle,
|
||||
Author,
|
||||
Comment,
|
||||
Description,
|
||||
Category,
|
||||
Genre,
|
||||
Year,
|
||||
Date,
|
||||
UserRating,
|
||||
Keywords,
|
||||
Language,
|
||||
Publisher,
|
||||
Copyright,
|
||||
ParentalRating,
|
||||
RatingOrganization,
|
||||
Q_DECLARE_METADATA(Title);
|
||||
Q_DECLARE_METADATA(SubTitle);
|
||||
Q_DECLARE_METADATA(Author);
|
||||
Q_DECLARE_METADATA(Comment);
|
||||
Q_DECLARE_METADATA(Description);
|
||||
Q_DECLARE_METADATA(Category);
|
||||
Q_DECLARE_METADATA(Genre);
|
||||
Q_DECLARE_METADATA(Year);
|
||||
Q_DECLARE_METADATA(Date);
|
||||
Q_DECLARE_METADATA(UserRating);
|
||||
Q_DECLARE_METADATA(Keywords);
|
||||
Q_DECLARE_METADATA(Language);
|
||||
Q_DECLARE_METADATA(Publisher);
|
||||
Q_DECLARE_METADATA(Copyright);
|
||||
Q_DECLARE_METADATA(ParentalRating);
|
||||
Q_DECLARE_METADATA(RatingOrganization);
|
||||
|
||||
// Media
|
||||
Size,
|
||||
MediaType,
|
||||
Duration,
|
||||
Q_DECLARE_METADATA(Size);
|
||||
Q_DECLARE_METADATA(MediaType);
|
||||
Q_DECLARE_METADATA(Duration);
|
||||
|
||||
// Audio
|
||||
AudioBitRate,
|
||||
AudioCodec,
|
||||
AverageLevel,
|
||||
ChannelCount,
|
||||
PeakValue,
|
||||
SampleRate,
|
||||
Q_DECLARE_METADATA(AudioBitRate);
|
||||
Q_DECLARE_METADATA(AudioCodec);
|
||||
Q_DECLARE_METADATA(AverageLevel);
|
||||
Q_DECLARE_METADATA(ChannelCount);
|
||||
Q_DECLARE_METADATA(PeakValue);
|
||||
Q_DECLARE_METADATA(SampleRate);
|
||||
|
||||
// Music
|
||||
AlbumTitle,
|
||||
AlbumArtist,
|
||||
ContributingArtist,
|
||||
Composer,
|
||||
Conductor,
|
||||
Lyrics,
|
||||
Mood,
|
||||
TrackNumber,
|
||||
TrackCount,
|
||||
Q_DECLARE_METADATA(AlbumTitle);
|
||||
Q_DECLARE_METADATA(AlbumArtist);
|
||||
Q_DECLARE_METADATA(ContributingArtist);
|
||||
Q_DECLARE_METADATA(Composer);
|
||||
Q_DECLARE_METADATA(Conductor);
|
||||
Q_DECLARE_METADATA(Lyrics);
|
||||
Q_DECLARE_METADATA(Mood);
|
||||
Q_DECLARE_METADATA(TrackNumber);
|
||||
Q_DECLARE_METADATA(TrackCount);
|
||||
|
||||
CoverArtUrlSmall,
|
||||
CoverArtUrlLarge,
|
||||
Q_DECLARE_METADATA(CoverArtUrlSmall);
|
||||
Q_DECLARE_METADATA(CoverArtUrlLarge);
|
||||
|
||||
// Image/Video
|
||||
Resolution,
|
||||
PixelAspectRatio,
|
||||
Q_DECLARE_METADATA(Resolution);
|
||||
Q_DECLARE_METADATA(PixelAspectRatio);
|
||||
|
||||
// Video
|
||||
VideoFrameRate,
|
||||
VideoBitRate,
|
||||
VideoCodec,
|
||||
Q_DECLARE_METADATA(VideoFrameRate);
|
||||
Q_DECLARE_METADATA(VideoBitRate);
|
||||
Q_DECLARE_METADATA(VideoCodec);
|
||||
|
||||
PosterUrl,
|
||||
Q_DECLARE_METADATA(PosterUrl);
|
||||
|
||||
// Movie
|
||||
ChapterNumber,
|
||||
Director,
|
||||
LeadPerformer,
|
||||
Writer,
|
||||
Q_DECLARE_METADATA(ChapterNumber);
|
||||
Q_DECLARE_METADATA(Director);
|
||||
Q_DECLARE_METADATA(LeadPerformer);
|
||||
Q_DECLARE_METADATA(Writer);
|
||||
|
||||
// Photos
|
||||
CameraManufacturer,
|
||||
CameraModel,
|
||||
Event,
|
||||
Subject,
|
||||
Orientation,
|
||||
ExposureTime,
|
||||
FNumber,
|
||||
ExposureProgram,
|
||||
ISOSpeedRatings,
|
||||
ExposureBiasValue,
|
||||
DateTimeOriginal,
|
||||
DateTimeDigitized,
|
||||
SubjectDistance,
|
||||
MeteringMode,
|
||||
LightSource,
|
||||
Flash,
|
||||
FocalLength,
|
||||
ExposureMode,
|
||||
WhiteBalance,
|
||||
DigitalZoomRatio,
|
||||
FocalLengthIn35mmFilm,
|
||||
SceneCaptureType,
|
||||
GainControl,
|
||||
Contrast,
|
||||
Saturation,
|
||||
Sharpness,
|
||||
DeviceSettingDescription,
|
||||
Q_DECLARE_METADATA(CameraManufacturer);
|
||||
Q_DECLARE_METADATA(CameraModel);
|
||||
Q_DECLARE_METADATA(Event);
|
||||
Q_DECLARE_METADATA(Subject);
|
||||
Q_DECLARE_METADATA(Orientation);
|
||||
Q_DECLARE_METADATA(ExposureTime);
|
||||
Q_DECLARE_METADATA(FNumber);
|
||||
Q_DECLARE_METADATA(ExposureProgram);
|
||||
Q_DECLARE_METADATA(ISOSpeedRatings);
|
||||
Q_DECLARE_METADATA(ExposureBiasValue);
|
||||
Q_DECLARE_METADATA(DateTimeOriginal);
|
||||
Q_DECLARE_METADATA(DateTimeDigitized);
|
||||
Q_DECLARE_METADATA(SubjectDistance);
|
||||
Q_DECLARE_METADATA(MeteringMode);
|
||||
Q_DECLARE_METADATA(LightSource);
|
||||
Q_DECLARE_METADATA(Flash);
|
||||
Q_DECLARE_METADATA(FocalLength);
|
||||
Q_DECLARE_METADATA(ExposureMode);
|
||||
Q_DECLARE_METADATA(WhiteBalance);
|
||||
Q_DECLARE_METADATA(DigitalZoomRatio);
|
||||
Q_DECLARE_METADATA(FocalLengthIn35mmFilm);
|
||||
Q_DECLARE_METADATA(SceneCaptureType);
|
||||
Q_DECLARE_METADATA(GainControl);
|
||||
Q_DECLARE_METADATA(Contrast);
|
||||
Q_DECLARE_METADATA(Saturation);
|
||||
Q_DECLARE_METADATA(Sharpness);
|
||||
Q_DECLARE_METADATA(DeviceSettingDescription);
|
||||
|
||||
PosterImage,
|
||||
CoverArtImage,
|
||||
ThumbnailImage
|
||||
|
||||
};
|
||||
Q_DECLARE_METADATA(PosterImage);
|
||||
Q_DECLARE_METADATA(CoverArtImage);
|
||||
Q_DECLARE_METADATA(ThumbnailImage);
|
||||
}
|
||||
|
||||
enum SupportEstimate
|
||||
{
|
||||
@@ -189,11 +190,12 @@ namespace QtMultimedia
|
||||
|
||||
}
|
||||
|
||||
#undef Q_DECLARE_METADATA
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
Q_DECLARE_METATYPE(QtMultimedia::AvailabilityError)
|
||||
Q_DECLARE_METATYPE(QtMultimedia::SupportEstimate)
|
||||
Q_DECLARE_METATYPE(QtMultimedia::MetaData)
|
||||
Q_DECLARE_METATYPE(QtMultimedia::EncodingMode)
|
||||
Q_DECLARE_METATYPE(QtMultimedia::EncodingQuality)
|
||||
|
||||
|
||||
@@ -764,7 +764,7 @@ bool QMediaRecorder::isMetaDataWritable() const
|
||||
/*!
|
||||
Returns the value associated with a meta-data \a key.
|
||||
*/
|
||||
QVariant QMediaRecorder::metaData(QtMultimedia::MetaData key) const
|
||||
QVariant QMediaRecorder::metaData(const QString &key) const
|
||||
{
|
||||
Q_D(const QMediaRecorder);
|
||||
|
||||
@@ -779,7 +779,7 @@ QVariant QMediaRecorder::metaData(QtMultimedia::MetaData key) const
|
||||
\note To ensure that meta data is set corretly, it should be set before starting the recording.
|
||||
Once the recording is stopped, any meta data set will be attached to the next recording.
|
||||
*/
|
||||
void QMediaRecorder::setMetaData(QtMultimedia::MetaData key, const QVariant &value)
|
||||
void QMediaRecorder::setMetaData(const QString &key, const QVariant &value)
|
||||
{
|
||||
Q_D(QMediaRecorder);
|
||||
|
||||
@@ -790,13 +790,13 @@ void QMediaRecorder::setMetaData(QtMultimedia::MetaData key, const QVariant &val
|
||||
/*!
|
||||
Returns a list of keys there is meta-data available for.
|
||||
*/
|
||||
QList<QtMultimedia::MetaData> QMediaRecorder::availableMetaData() const
|
||||
QStringList QMediaRecorder::availableMetaData() const
|
||||
{
|
||||
Q_D(const QMediaRecorder);
|
||||
|
||||
return d->metaDataControl
|
||||
? d->metaDataControl->availableMetaData()
|
||||
: QList<QtMultimedia::MetaData>();
|
||||
: QStringList();
|
||||
}
|
||||
|
||||
/*!
|
||||
@@ -805,47 +805,6 @@ QList<QtMultimedia::MetaData> QMediaRecorder::availableMetaData() const
|
||||
Signals that a media object's meta-data has changed.
|
||||
*/
|
||||
|
||||
/*!
|
||||
Returns the value associated with a meta-data \a key.
|
||||
|
||||
The naming and type of extended meta-data is not standardized, so the values and meaning
|
||||
of keys may vary between backends.
|
||||
*/
|
||||
QVariant QMediaRecorder::extendedMetaData(const QString &key) const
|
||||
{
|
||||
Q_D(const QMediaRecorder);
|
||||
|
||||
return d->metaDataControl
|
||||
? d->metaDataControl->extendedMetaData(key)
|
||||
: QVariant();
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets a \a value for a meta-data \a key.
|
||||
|
||||
The naming and type of extended meta-data is not standardized, so the values and meaning
|
||||
of keys may vary between backends.
|
||||
*/
|
||||
void QMediaRecorder::setExtendedMetaData(const QString &key, const QVariant &value)
|
||||
{
|
||||
Q_D(QMediaRecorder);
|
||||
|
||||
if (d->metaDataControl)
|
||||
d->metaDataControl->setExtendedMetaData(key, value);
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a list of keys there is extended meta-data available for.
|
||||
*/
|
||||
QStringList QMediaRecorder::availableExtendedMetaData() const
|
||||
{
|
||||
Q_D(const QMediaRecorder);
|
||||
|
||||
return d->metaDataControl
|
||||
? d->metaDataControl->availableExtendedMetaData()
|
||||
: QStringList();
|
||||
}
|
||||
|
||||
#include "moc_qmediarecorder.cpp"
|
||||
QT_END_NAMESPACE
|
||||
|
||||
|
||||
@@ -145,13 +145,9 @@ public:
|
||||
bool isMetaDataAvailable() const;
|
||||
bool isMetaDataWritable() const;
|
||||
|
||||
QVariant metaData(QtMultimedia::MetaData key) const;
|
||||
void setMetaData(QtMultimedia::MetaData key, const QVariant &value);
|
||||
QList<QtMultimedia::MetaData> availableMetaData() const;
|
||||
|
||||
QVariant extendedMetaData(const QString &key) const;
|
||||
void setExtendedMetaData(const QString &key, const QVariant &value);
|
||||
QStringList availableExtendedMetaData() const;
|
||||
QVariant metaData(const QString &key) const;
|
||||
void setMetaData(const QString &key, const QVariant &value);
|
||||
QStringList availableMetaData() const;
|
||||
|
||||
public Q_SLOTS:
|
||||
void record();
|
||||
|
||||
Reference in New Issue
Block a user