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
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user