(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISCOVERER_STREAM_INFO))
typedef struct _GstDiscovererStreamInfo GstDiscovererStreamInfo;
typedef GObjectClass GstDiscovererStreamInfoClass;
+
+GST_EXPORT
GType gst_discoverer_stream_info_get_type (void);
/**
#define gst_discoverer_stream_info_ref(info) ((GstDiscovererStreamInfo*) g_object_ref((GObject*) info))
#define gst_discoverer_stream_info_unref(info) (g_object_unref((GObject*) info))
+GST_EXPORT
GstDiscovererStreamInfo* gst_discoverer_stream_info_get_previous(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
GstDiscovererStreamInfo* gst_discoverer_stream_info_get_next(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
GstCaps* gst_discoverer_stream_info_get_caps(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
const GstTagList* gst_discoverer_stream_info_get_tags(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
const GstToc* gst_discoverer_stream_info_get_toc(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
const gchar* gst_discoverer_stream_info_get_stream_id(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
const GstStructure* gst_discoverer_stream_info_get_misc(GstDiscovererStreamInfo* info);
+
+GST_EXPORT
const gchar * gst_discoverer_stream_info_get_stream_type_nick(GstDiscovererStreamInfo* info);
/**
typedef struct _GstDiscovererContainerInfo GstDiscovererContainerInfo;
typedef GObjectClass GstDiscovererContainerInfoClass;
+GST_EXPORT
GType gst_discoverer_container_info_get_type (void);
+GST_EXPORT
GList *gst_discoverer_container_info_get_streams(GstDiscovererContainerInfo *info);
typedef struct _GstDiscovererAudioInfo GstDiscovererAudioInfo;
typedef GObjectClass GstDiscovererAudioInfoClass;
+GST_EXPORT
GType gst_discoverer_audio_info_get_type (void);
+GST_EXPORT
guint gst_discoverer_audio_info_get_channels(const GstDiscovererAudioInfo* info);
+
+GST_EXPORT
+guint64 gst_discoverer_audio_info_get_channel_mask(const GstDiscovererAudioInfo* info);
+
+GST_EXPORT
guint gst_discoverer_audio_info_get_sample_rate(const GstDiscovererAudioInfo* info);
+
+GST_EXPORT
guint gst_discoverer_audio_info_get_depth(const GstDiscovererAudioInfo* info);
+
+GST_EXPORT
guint gst_discoverer_audio_info_get_bitrate(const GstDiscovererAudioInfo* info);
+
+GST_EXPORT
guint gst_discoverer_audio_info_get_max_bitrate(const GstDiscovererAudioInfo* info);
+
+GST_EXPORT
const gchar * gst_discoverer_audio_info_get_language(const GstDiscovererAudioInfo* info);
/**
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISCOVERER_VIDEO_INFO))
typedef struct _GstDiscovererVideoInfo GstDiscovererVideoInfo;
typedef GObjectClass GstDiscovererVideoInfoClass;
+
+GST_EXPORT
GType gst_discoverer_video_info_get_type (void);
+GST_EXPORT
guint gst_discoverer_video_info_get_width(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_height(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_depth(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_framerate_num(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_framerate_denom(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_par_num(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_par_denom(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
gboolean gst_discoverer_video_info_is_interlaced(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_bitrate(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
guint gst_discoverer_video_info_get_max_bitrate(const GstDiscovererVideoInfo* info);
+
+GST_EXPORT
gboolean gst_discoverer_video_info_is_image(const GstDiscovererVideoInfo* info);
/**
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISCOVERER_SUBTITLE_INFO))
typedef struct _GstDiscovererSubtitleInfo GstDiscovererSubtitleInfo;
typedef GObjectClass GstDiscovererSubtitleInfoClass;
+
+GST_EXPORT
GType gst_discoverer_subtitle_info_get_type (void);
+GST_EXPORT
const gchar * gst_discoverer_subtitle_info_get_language(const GstDiscovererSubtitleInfo* info);
/**
GST_DISCOVERER_MISSING_PLUGINS = 5
} GstDiscovererResult;
+/**
+ * GstDiscovererSerializeFlags:
+ * @GST_DISCOVERER_SERIALIZE_BASIC: Serialize only basic information, excluding
+ * caps, tags and miscellaneous information
+ * @GST_DISCOVERER_SERIALIZE_CAPS: Serialize the caps for each stream
+ * @GST_DISCOVERER_SERIALIZE_TAGS: Serialize the tags for each stream
+ * @GST_DISCOVERER_SERIALIZE_MISC: Serialize miscellaneous information for each stream
+ * @GST_DISCOVERER_SERIALIZE_ALL: Serialize all the available info, including
+ * caps, tags and miscellaneous information
+ *
+ * You can use these flags to control what is serialized by
+ * gst_discoverer_info_to_variant()
+ *
+ * Since: 1.6
+ */
+
+typedef enum {
+ GST_DISCOVERER_SERIALIZE_BASIC = 0,
+ GST_DISCOVERER_SERIALIZE_CAPS = 1 << 0,
+ GST_DISCOVERER_SERIALIZE_TAGS = 1 << 1,
+ GST_DISCOVERER_SERIALIZE_MISC = 1 << 2,
+ GST_DISCOVERER_SERIALIZE_ALL = GST_DISCOVERER_SERIALIZE_CAPS | GST_DISCOVERER_SERIALIZE_TAGS | GST_DISCOVERER_SERIALIZE_MISC
+} GstDiscovererSerializeFlags;
/**
* GstDiscovererInfo:
#define GST_IS_DISCOVERER_INFO(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISCOVERER_INFO))
typedef GObjectClass GstDiscovererInfoClass;
+
+GST_EXPORT
GType gst_discoverer_info_get_type (void);
#define gst_discoverer_info_unref(info) (g_object_unref((GObject*)info))
#define gst_discoverer_info_ref(info) (g_object_ref((GObject*)info))
+GST_EXPORT
GstDiscovererInfo* gst_discoverer_info_copy (GstDiscovererInfo * ptr);
+GST_EXPORT
const gchar* gst_discoverer_info_get_uri(const GstDiscovererInfo* info);
+
+GST_EXPORT
GstDiscovererResult gst_discoverer_info_get_result(const GstDiscovererInfo* info);
+
+GST_EXPORT
GstDiscovererStreamInfo* gst_discoverer_info_get_stream_info(GstDiscovererInfo* info);
+
+GST_EXPORT
GList* gst_discoverer_info_get_stream_list(GstDiscovererInfo* info);
+
+GST_EXPORT
GstClockTime gst_discoverer_info_get_duration(const GstDiscovererInfo* info);
+
+GST_EXPORT
gboolean gst_discoverer_info_get_seekable(const GstDiscovererInfo* info);
+
+GST_EXPORT
+gboolean gst_discoverer_info_get_live(const GstDiscovererInfo* info);
+
+GST_EXPORT
const GstStructure* gst_discoverer_info_get_misc(const GstDiscovererInfo* info);
+
+GST_EXPORT
const GstTagList* gst_discoverer_info_get_tags(const GstDiscovererInfo* info);
+GST_EXPORT
const GstToc* gst_discoverer_info_get_toc(const GstDiscovererInfo* info);
+
+GST_EXPORT
const gchar** gst_discoverer_info_get_missing_elements_installer_details(const GstDiscovererInfo* info);
+GST_EXPORT
GList * gst_discoverer_info_get_streams (GstDiscovererInfo *info,
GType streamtype);
+
+GST_EXPORT
GList * gst_discoverer_info_get_audio_streams (GstDiscovererInfo *info);
+
+GST_EXPORT
GList * gst_discoverer_info_get_video_streams (GstDiscovererInfo *info);
+
+GST_EXPORT
GList * gst_discoverer_info_get_subtitle_streams (GstDiscovererInfo *info);
+
+GST_EXPORT
GList * gst_discoverer_info_get_container_streams (GstDiscovererInfo *info);
+GST_EXPORT
+GVariant * gst_discoverer_info_to_variant (GstDiscovererInfo *info,
+ GstDiscovererSerializeFlags flags);
+
+GST_EXPORT
+GstDiscovererInfo * gst_discoverer_info_from_variant (GVariant *variant);
+
+GST_EXPORT
void gst_discoverer_stream_info_list_free (GList *infos);
#define GST_TYPE_DISCOVERER \
gpointer _reserved[GST_PADDING];
};
+GST_EXPORT
GType gst_discoverer_get_type (void);
+
+GST_EXPORT
GstDiscoverer *gst_discoverer_new (GstClockTime timeout, GError **err);
/* Asynchronous API */
+
+GST_EXPORT
void gst_discoverer_start (GstDiscoverer *discoverer);
+
+GST_EXPORT
void gst_discoverer_stop (GstDiscoverer *discoverer);
+
+GST_EXPORT
gboolean gst_discoverer_discover_uri_async (GstDiscoverer *discoverer,
const gchar *uri);
/* Synchronous API */
+
+GST_EXPORT
GstDiscovererInfo *
gst_discoverer_discover_uri (GstDiscoverer * discoverer,
const gchar * uri,
GError ** err);
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscoverer, gst_object_unref)
+#endif
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscovererAudioInfo, gst_object_unref)
+#endif
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscovererContainerInfo, gst_object_unref)
+#endif
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscovererInfo, gst_object_unref)
+#endif
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscovererStreamInfo, gst_object_unref)
+#endif
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscovererSubtitleInfo, gst_object_unref)
+#endif
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstDiscovererVideoInfo, gst_object_unref)
+#endif
+
G_END_DECLS
#endif /* _GST_DISCOVERER_H */