18 #ifndef QGST_DISCOVERER_H 19 #define QGST_DISCOVERER_H 21 #include <QGst/ClockTime> 22 #include <QGst/Fraction> 23 #include <QGst/MiniObject> 24 #include <QGst/Object> 25 #include <QGst/Structure> 26 #include <QGst/TagList> 28 #include <QtCore/QUrl> 34 class QTGSTREAMER_EXPORT DiscovererStreamInfo :
public QGlib::Object 36 QGST_WRAPPER(DiscovererStreamInfo)
39 DiscovererStreamInfoPtr previous() const;
40 DiscovererStreamInfoPtr next() const;
41 QString streamTypeNick() const;
44 Structure misc() const;
47 class QTGSTREAMER_EXPORT DiscovererContainerInfo : public DiscovererStreamInfo
49 QGST_WRAPPER(DiscovererContainerInfo)
52 QList<DiscovererStreamInfoPtr> streams() const;
55 class QTGSTREAMER_EXPORT DiscovererAudioInfo : public DiscovererStreamInfo
57 QGST_WRAPPER(DiscovererAudioInfo)
60 uint channels() const;
61 uint sampleRate() const;
64 uint maxBitrate() const;
65 QString language() const;
68 class QTGSTREAMER_EXPORT DiscovererVideoInfo : public DiscovererStreamInfo
70 QGST_WRAPPER(DiscovererVideoInfo)
76 Fraction framerate() const;
77 Fraction pixelAspectRatio() const;
79 uint maxBitrate() const;
80 bool isInterlaced() const;
84 class QTGSTREAMER_EXPORT DiscovererSubtitleInfo : public DiscovererStreamInfo
86 QGST_WRAPPER(DiscovererSubtitleInfo)
89 QString language() const;
92 class QTGSTREAMER_EXPORT DiscovererInfo : public
QGlib::Object
94 QGST_WRAPPER(DiscovererInfo)
98 DiscovererResult result() const;
100 ClockTime duration() const;
101 bool seekable() const;
102 Structure misc() const;
103 TagList tags() const;
105 DiscovererStreamInfoPtr streamInfo() const;
106 QList<DiscovererStreamInfoPtr> streams() const;
107 QList<DiscovererStreamInfoPtr> streams(
QGlib::Type streamType) const;
108 QList<DiscovererStreamInfoPtr> audioStreams() const;
109 QList<DiscovererStreamInfoPtr> videoStreams() const;
110 QList<DiscovererStreamInfoPtr> subtitleStreams() const;
111 QList<DiscovererStreamInfoPtr> containerStreams() const;
114 class QTGSTREAMER_EXPORT Discoverer : public
QGlib::Object
116 QGST_WRAPPER(Discoverer)
122 static DiscovererPtr create(ClockTime timeout);
141 bool discoverUriAsync(const
char *uri);
144 inline
bool discoverUriAsync(const QUrl &uri);
150 DiscovererInfoPtr discoverUri(const
char *uri);
153 inline DiscovererInfoPtr discoverUri(const QUrl &uri);
156 inline
bool Discoverer::discoverUriAsync(const QUrl &uri)
158 return discoverUriAsync(uri.toEncoded().constData());
161 inline DiscovererInfoPtr Discoverer::discoverUri(
const QUrl &uri)
163 return discoverUri(uri.toEncoded().constData());
166 QTGSTREAMER_EXPORT QDebug operator<<(QDebug debug, DiscovererResult result);
167 QTGSTREAMER_EXPORT QDebug operator<<(QDebug debug,
const DiscovererStreamInfoPtr &info);
168 QTGSTREAMER_EXPORT QDebug operator<<(QDebug debug,
const DiscovererInfoPtr &info);
172 QGST_REGISTER_TYPE(QGst::DiscovererStreamInfo)
173 QGST_REGISTER_TYPE(
QGst::DiscovererContainerInfo)
174 QGST_REGISTER_TYPE(
QGst::DiscovererAudioInfo)
175 QGST_REGISTER_TYPE(
QGst::DiscovererVideoInfo)
176 QGST_REGISTER_TYPE(
QGst::DiscovererSubtitleInfo)
177 QGST_REGISTER_TYPE(
QGst::DiscovererInfo)
178 QGST_REGISTER_TYPE(
QGst::Discoverer)
180 #endif // QGST_DISCOVERER_H Wrappers for Glib and GObject classes.
Wrappers for GStreamer classes.
Wrapper class for GObject.