mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-03 15:06:34 +00:00
ext/dvdnav/dvdnavsrc.c: Add DVD-nav URI (dvdnav://) for Totem testing purposes.
Original commit message from CVS: * ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_get_type), (dvdnavsrc_uri_get_type), (dvdnavsrc_uri_get_protocols), (dvdnavsrc_uri_get_uri), (dvdnavsrc_uri_set_uri), (dvdnavsrc_uri_handler_init): Add DVD-nav URI (dvdnav://) for Totem testing purposes. * gst/playback/gstplaybasebin.c: (gen_source_element): Add MMS to streaming URIs.
This commit is contained in:
parent
0719acf488
commit
c1380eeeec
2 changed files with 65 additions and 0 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
|||
2005-01-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_get_type),
|
||||
(dvdnavsrc_uri_get_type), (dvdnavsrc_uri_get_protocols),
|
||||
(dvdnavsrc_uri_get_uri), (dvdnavsrc_uri_set_uri),
|
||||
(dvdnavsrc_uri_handler_init):
|
||||
Add DVD-nav URI (dvdnav://) for Totem testing purposes.
|
||||
* gst/playback/gstplaybasebin.c: (gen_source_element):
|
||||
Add MMS to streaming URIs.
|
||||
|
||||
2005-01-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* sys/ximage/ximagesink.c: (gst_ximagesink_navigation_send_event):
|
||||
|
|
|
@ -252,6 +252,7 @@ static void dvdnavsrc_update_highlight (DVDNavSrc * src);
|
|||
static void dvdnavsrc_user_op (DVDNavSrc * src, int op);
|
||||
static GstElementStateReturn dvdnavsrc_change_state (GstElement * element);
|
||||
|
||||
static void dvdnavsrc_uri_handler_init (gpointer g_iface, gpointer iface_data);
|
||||
|
||||
static GstElementClass *parent_class = NULL;
|
||||
static guint dvdnavsrc_signals[LAST_SIGNAL] = { 0 };
|
||||
|
@ -278,9 +279,16 @@ dvdnavsrc_get_type (void)
|
|||
0,
|
||||
(GInstanceInitFunc) dvdnavsrc_init,
|
||||
};
|
||||
static const GInterfaceInfo urihandler_info = {
|
||||
dvdnavsrc_uri_handler_init,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
dvdnavsrc_type = g_type_register_static (GST_TYPE_ELEMENT,
|
||||
"DVDNavSrc", &dvdnavsrc_info, 0);
|
||||
g_type_add_interface_static (dvdnavsrc_type,
|
||||
GST_TYPE_URI_HANDLER, &urihandler_info);
|
||||
|
||||
sector_format = gst_format_register ("sector", "DVD sector");
|
||||
title_format = gst_format_register ("title", "DVD title");
|
||||
|
@ -1981,6 +1989,53 @@ dvdnavsrc_query (GstPad * pad, GstQueryType type,
|
|||
return res;
|
||||
}
|
||||
|
||||
/*
|
||||
* URI interface.
|
||||
*/
|
||||
|
||||
static guint
|
||||
dvdnavsrc_uri_get_type (void)
|
||||
{
|
||||
return GST_URI_SRC;
|
||||
}
|
||||
|
||||
static gchar **
|
||||
dvdnavsrc_uri_get_protocols (void)
|
||||
{
|
||||
static gchar *protocols[] = { "dvdnav", NULL };
|
||||
|
||||
return protocols;
|
||||
}
|
||||
|
||||
static const gchar *
|
||||
dvdnavsrc_uri_get_uri (GstURIHandler * handler)
|
||||
{
|
||||
return "dvdnav://";
|
||||
}
|
||||
|
||||
static gboolean
|
||||
dvdnavsrc_uri_set_uri (GstURIHandler * handler, const gchar * uri)
|
||||
{
|
||||
gboolean ret;
|
||||
gchar *protocol = gst_uri_get_protocol (uri);
|
||||
|
||||
ret = (protocol && !strcmp (protocol, "dvdnav")) ? TRUE : FALSE;
|
||||
g_free (protocol);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
dvdnavsrc_uri_handler_init (gpointer g_iface, gpointer iface_data)
|
||||
{
|
||||
GstURIHandlerInterface *iface = (GstURIHandlerInterface *) g_iface;
|
||||
|
||||
iface->get_type = dvdnavsrc_uri_get_type;
|
||||
iface->get_protocols = dvdnavsrc_uri_get_protocols;
|
||||
iface->get_uri = dvdnavsrc_uri_get_uri;
|
||||
iface->set_uri = dvdnavsrc_uri_set_uri;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
plugin_init (GstPlugin * plugin)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue