289 lines
8.2 KiB
C++
289 lines
8.2 KiB
C++
/****************************************************************************
|
|
**
|
|
** Copyright (C) 2016 The Qt Company Ltd.
|
|
** Contact: https://www.qt.io/licensing/
|
|
**
|
|
** This file is part of the Qt Toolkit.
|
|
**
|
|
** $QT_BEGIN_LICENSE:LGPL$
|
|
** Commercial License Usage
|
|
** Licensees holding valid commercial Qt licenses may use this file in
|
|
** accordance with the commercial license agreement provided with the
|
|
** Software or, alternatively, in accordance with the terms contained in
|
|
** a written agreement between you and The Qt Company. For licensing terms
|
|
** and conditions see https://www.qt.io/terms-conditions. For further
|
|
** information use the contact form at https://www.qt.io/contact-us.
|
|
**
|
|
** GNU Lesser General Public License Usage
|
|
** Alternatively, this file may be used under the terms of the GNU Lesser
|
|
** General Public License version 3 as published by the Free Software
|
|
** Foundation and appearing in the file LICENSE.LGPL3 included in the
|
|
** packaging of this file. Please review the following information to
|
|
** ensure the GNU Lesser General Public License version 3 requirements
|
|
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
|
|
**
|
|
** GNU General Public License Usage
|
|
** Alternatively, this file may be used under the terms of the GNU
|
|
** General Public License version 2.0 or (at your option) the GNU General
|
|
** Public license version 3 or any later version approved by the KDE Free
|
|
** Qt Foundation. The licenses are as published by the Free Software
|
|
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
|
|
** included in the packaging of this file. Please review the following
|
|
** information to ensure the GNU General Public License requirements will
|
|
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
|
|
** https://www.gnu.org/licenses/gpl-3.0.html.
|
|
**
|
|
** $QT_END_LICENSE$
|
|
**
|
|
****************************************************************************/
|
|
|
|
#ifndef QMEDIAMETADATA_H
|
|
#define QMEDIAMETADATA_H
|
|
|
|
#include <QtCore/qpair.h>
|
|
#include <QtCore/qmetatype.h>
|
|
#include <QtCore/qstring.h>
|
|
|
|
#include <QtMultimedia/qtmultimediaglobal.h>
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
// Class forward declaration required for QDoc bug
|
|
class QString;
|
|
|
|
#define Q_DECLARE_METADATA(key) Q_MULTIMEDIA_EXPORT extern const QString key
|
|
|
|
namespace QMediaMetaData {
|
|
#ifdef Q_QDOC
|
|
// QDoc does not like macros, so try to keep this in sync :)
|
|
QString Title;
|
|
QString SubTitle;
|
|
QString Author;
|
|
QString Comment;
|
|
QString Description;
|
|
QString Category;
|
|
QString Genre;
|
|
QString Year;
|
|
QString Date;
|
|
QString UserRating;
|
|
QString Keywords;
|
|
QString Language;
|
|
QString Publisher;
|
|
QString Copyright;
|
|
QString ParentalRating;
|
|
QString RatingOrganization;
|
|
|
|
// Media
|
|
QString Size;
|
|
QString MediaType;
|
|
QString Duration;
|
|
|
|
// Audio
|
|
QString AudioBitRate;
|
|
QString AudioCodec;
|
|
QString AverageLevel;
|
|
QString ChannelCount;
|
|
QString PeakValue;
|
|
QString SampleRate;
|
|
|
|
// Music
|
|
QString AlbumTitle;
|
|
QString AlbumArtist;
|
|
QString ContributingArtist;
|
|
QString Composer;
|
|
QString Conductor;
|
|
QString Lyrics;
|
|
QString Mood;
|
|
QString TrackNumber;
|
|
QString TrackCount;
|
|
|
|
QString CoverArtUrlSmall;
|
|
QString CoverArtUrlLarge;
|
|
|
|
// Image/Video
|
|
QString Resolution;
|
|
QString PixelAspectRatio;
|
|
|
|
// Video
|
|
QString VideoFrameRate;
|
|
QString VideoBitRate;
|
|
QString VideoCodec;
|
|
|
|
QString PosterUrl;
|
|
|
|
// Movie
|
|
QString ChapterNumber;
|
|
QString Director;
|
|
QString LeadPerformer;
|
|
QString Writer;
|
|
|
|
// Photos
|
|
QString CameraManufacturer;
|
|
QString CameraModel;
|
|
QString Event;
|
|
QString Subject;
|
|
QString Orientation;
|
|
QString ExposureTime;
|
|
QString FNumber;
|
|
QString ExposureProgram;
|
|
QString ISOSpeedRatings;
|
|
QString ExposureBiasValue;
|
|
QString DateTimeOriginal;
|
|
QString DateTimeDigitized;
|
|
QString SubjectDistance;
|
|
QString MeteringMode;
|
|
QString LightSource;
|
|
QString Flash;
|
|
QString FocalLength;
|
|
QString ExposureMode;
|
|
QString WhiteBalance;
|
|
QString DigitalZoomRatio;
|
|
QString FocalLengthIn35mmFilm;
|
|
QString SceneCaptureType;
|
|
QString GainControl;
|
|
QString Contrast;
|
|
QString Saturation;
|
|
QString Sharpness;
|
|
QString DeviceSettingDescription;
|
|
|
|
// Location
|
|
QString GPSLatitude;
|
|
QString GPSLongitude;
|
|
QString GPSAltitude;
|
|
QString GPSTimeStamp;
|
|
QString GPSSatellites;
|
|
QString GPSStatus;
|
|
QString GPSDOP;
|
|
QString GPSSpeed;
|
|
QString GPSTrack;
|
|
QString GPSTrackRef;
|
|
QString GPSImgDirection;
|
|
QString GPSImgDirectionRef;
|
|
QString GPSMapDatum;
|
|
QString GPSProcessingMethod;
|
|
QString GPSAreaInformation;
|
|
|
|
QString PosterImage;
|
|
QString CoverArtImage;
|
|
QString ThumbnailImage;
|
|
#else
|
|
// Common
|
|
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
|
|
Q_DECLARE_METADATA(Size);
|
|
Q_DECLARE_METADATA(MediaType);
|
|
Q_DECLARE_METADATA(Duration);
|
|
|
|
// Audio
|
|
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
|
|
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);
|
|
|
|
Q_DECLARE_METADATA(CoverArtUrlSmall);
|
|
Q_DECLARE_METADATA(CoverArtUrlLarge);
|
|
|
|
// Image/Video
|
|
Q_DECLARE_METADATA(Resolution);
|
|
Q_DECLARE_METADATA(PixelAspectRatio);
|
|
|
|
// Video
|
|
Q_DECLARE_METADATA(VideoFrameRate);
|
|
Q_DECLARE_METADATA(VideoBitRate);
|
|
Q_DECLARE_METADATA(VideoCodec);
|
|
|
|
Q_DECLARE_METADATA(PosterUrl);
|
|
|
|
// Movie
|
|
Q_DECLARE_METADATA(ChapterNumber);
|
|
Q_DECLARE_METADATA(Director);
|
|
Q_DECLARE_METADATA(LeadPerformer);
|
|
Q_DECLARE_METADATA(Writer);
|
|
|
|
// Photos
|
|
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);
|
|
|
|
// Location
|
|
Q_DECLARE_METADATA(GPSLatitude);
|
|
Q_DECLARE_METADATA(GPSLongitude);
|
|
Q_DECLARE_METADATA(GPSAltitude);
|
|
Q_DECLARE_METADATA(GPSTimeStamp);
|
|
Q_DECLARE_METADATA(GPSSatellites);
|
|
Q_DECLARE_METADATA(GPSStatus);
|
|
Q_DECLARE_METADATA(GPSDOP);
|
|
Q_DECLARE_METADATA(GPSSpeed);
|
|
Q_DECLARE_METADATA(GPSTrack);
|
|
Q_DECLARE_METADATA(GPSTrackRef);
|
|
Q_DECLARE_METADATA(GPSImgDirection);
|
|
Q_DECLARE_METADATA(GPSImgDirectionRef);
|
|
Q_DECLARE_METADATA(GPSMapDatum);
|
|
Q_DECLARE_METADATA(GPSProcessingMethod);
|
|
Q_DECLARE_METADATA(GPSAreaInformation);
|
|
|
|
Q_DECLARE_METADATA(PosterImage);
|
|
Q_DECLARE_METADATA(CoverArtImage);
|
|
Q_DECLARE_METADATA(ThumbnailImage);
|
|
#endif
|
|
}
|
|
|
|
#undef Q_DECLARE_METADATA
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
#endif // QMEDIAMETADATA_H
|