diff --git a/docs/faq/using.xml b/docs/faq/using.xml index 7abb18c12e..3fa05008ae 100644 --- a/docs/faq/using.xml +++ b/docs/faq/using.xml @@ -53,7 +53,7 @@ GStreamer itself is running correctly. You can test this by trying to play a sine tone. For this, you need to -connect the sinesrc plug-in to an output plug-in that matches your hardware. +link the sinesrc plug-in to an output plug-in that matches your hardware. A (non-complete) list of output plug-ins for audio is osssink for OSS output diff --git a/docs/gst/gstreamer-sections.txt b/docs/gst/gstreamer-sections.txt index 13a509a6c0..5ee591cffe 100644 --- a/docs/gst/gstreamer-sections.txt +++ b/docs/gst/gstreamer-sections.txt @@ -139,8 +139,8 @@ gst_scheduler_unlock_element gst_scheduler_yield gst_scheduler_interrupt gst_scheduler_error -gst_scheduler_pad_connect -gst_scheduler_pad_disconnect +gst_scheduler_pad_link +gst_scheduler_pad_unlink gst_scheduler_pad_select gst_scheduler_add_scheduler gst_scheduler_remove_scheduler @@ -454,14 +454,14 @@ gst_element_get_pad_template gst_element_get_pad_template_list gst_element_class_add_pad_template -gst_element_connect -gst_element_connect_many -gst_element_connect_filtered -gst_element_connect_pads -gst_element_connect_pads_filtered -gst_element_disconnect -gst_element_disconnect_many -gst_element_disconnect_pads +gst_element_link +gst_element_link_many +gst_element_link_filtered +gst_element_link_pads +gst_element_link_pads_filtered +gst_element_unlink +gst_element_unlink_many +gst_element_unlink_pads gst_element_get_compatible_pad gst_element_get_compatible_pad_filtered gst_element_get_compatible_pad_template @@ -835,7 +835,7 @@ GST_PAD_PEER GST_PAD_CAN_PULL GST_PAD_IS_SINK GST_PAD_IS_SRC -GST_PAD_IS_CONNECTED +GST_PAD_IS_LINKED GST_PAD_IS_ACTIVE GST_PAD_IS_USABLE @@ -846,11 +846,11 @@ GstPadBufferPoolFunction GstPadGetCapsFunction GstPadEventFunction -GstPadConnectFunction -GstPadConnectReturn +GstPadLinkFunction +GstPadLinkReturn GstPadConvertFunction GstPadDispatcherFunction -GstPadIntConnFunction +GstPadIntLinkFunction GstPadQueryFunction GstPadEventMaskFunction @@ -872,7 +872,7 @@ gst_pad_get_direction gst_pad_set_chain_function gst_pad_set_get_function gst_pad_set_bufferpool_function -gst_pad_set_connect_function +gst_pad_set_link_function gst_pad_set_getcaps_function gst_pad_try_set_caps gst_pad_get_caps @@ -888,18 +888,18 @@ gst_pad_add_ghost_pad gst_pad_remove_ghost_pad gst_pad_get_ghost_pad_list gst_pad_get_peer -gst_pad_connect -gst_pad_connect_filtered -gst_pad_reconnect_filtered -gst_pad_try_reconnect_filtered -gst_pad_disconnect -gst_pad_can_connect -gst_pad_can_connect_filtered +gst_pad_link +gst_pad_link_filtered +gst_pad_relink_filtered +gst_pad_try_relink_filtered +gst_pad_unlink +gst_pad_can_link +gst_pad_can_link_filtered gst_pad_push gst_pad_pull gst_pad_get_bufferpool -gst_pad_load_and_connect -gst_pad_proxy_connect +gst_pad_load_and_link +gst_pad_proxy_link gst_pad_get_pad_template gst_pad_get_pad_template_caps gst_pad_get_allowed_caps @@ -925,9 +925,9 @@ gst_pad_get_formats gst_pad_get_formats_default gst_pad_set_formats_function -gst_pad_get_internal_connections -gst_pad_get_internal_connections_default -gst_pad_set_internal_connection_function +gst_pad_get_internal_links +gst_pad_get_internal_links_default +gst_pad_set_internal_link_function gst_pad_set_query_function gst_pad_query @@ -957,10 +957,10 @@ GST_RPAD_CHAINHANDLER GST_RPAD_EVENTFUNC GST_RPAD_EVENTHANDLER GST_RPAD_GETHANDLER -GST_RPAD_CONNECTFUNC +GST_RPAD_LINKFUNC GST_RPAD_GETCAPSFUNC GST_RPAD_CONVERTFUNC -GST_RPAD_INTCONNFUNC +GST_RPAD_INTLINKFUNC GST_RPAD_QUERYFUNC GST_RPAD_EVENTMASKFUNC GST_RPAD_FORMATSFUNC @@ -1003,8 +1003,8 @@ GST_IS_GHOST_PAD GST_IS_GHOST_PAD_CLASS GST_IS_GHOST_PAD_FAST gst_ghost_pad_get_type -GST_TYPE_PAD_CONNECT_RETURN -gst_pad_connect_return_get_type +GST_TYPE_PAD_LINK_RETURN +gst_pad_link_return_get_type GST_TYPE_PAD_DIRECTION gst_pad_direction_get_type GST_TYPE_PAD_FLAGS diff --git a/docs/gst/tmpl/cothreads.sgml b/docs/gst/tmpl/cothreads.sgml index 91fb05365a..c69db192ee 100644 --- a/docs/gst/tmpl/cothreads.sgml +++ b/docs/gst/tmpl/cothreads.sgml @@ -20,13 +20,6 @@ of being fed with data. Cothreads are usually used by a #GstScheduler. #GstScheduler - - -Get the current stack frame. - - - - The cothread state structure diff --git a/docs/gst/tmpl/gstautoplug.sgml b/docs/gst/tmpl/gstautoplug.sgml index ee483d3783..6c5bd633a2 100644 --- a/docs/gst/tmpl/gstautoplug.sgml +++ b/docs/gst/tmpl/gstautoplug.sgml @@ -2,13 +2,13 @@ GstAutoplug -Automatically create and connect elements +Automatically create and link elements GstAutoplug is an abstract class that is used for constructing and -connecting elements. Two types of autopluggers exist: renderer ones and non -renderer ones. the renderer autopluggers will not have any src pads while the +linking elements. Two types of autopluggers exist: renderer ones and non +renderer ones. The renderer autopluggers will not have any src pads while the non renderer ones do. @@ -19,8 +19,8 @@ The name of the autoplugger must be one of the registered autopluggers (see #GstStaticAutoplug and #GstStaticAutoplugRender). -If the autoplugger supports the RENDERER API, use gst_autoplug_to_renderers() call to -create a bin that connectes the src caps to the specified rendrer elements. You can +If the autoplugger supports the RENDERER API, use gst_autoplug_to_renderers() to +create a bin that links the src caps to the specified renderer elements. You can then add the bin to a pipeline and run it. @@ -44,13 +44,13 @@ then add the bin to a pipeline and run it. sink, NULL); - /* add the element to a bin and connect the sink pad */ + /* add the element to a bin and link the sink pad */ ... -If the autoplugger supports the CAPS API, use gst_autoplug_to_caps() call to -connect the src caps to the destination caps. The created bin will have src pads +If the autoplugger supports the CAPS API, use gst_autoplug_to_caps() to +link the src caps to the destination caps. The created bin will have src caps compatible with the provided sink caps. @@ -74,7 +74,7 @@ compatible with the provided sink caps. ), NULL); - /* add the element to a bin and connect the src/sink pads */ + /* add the element to a bin and link the src/sink pads */ ... diff --git a/docs/gst/tmpl/gstcaps.sgml b/docs/gst/tmpl/gstcaps.sgml index 09b810b55a..a5b3bd0fe1 100644 --- a/docs/gst/tmpl/gstcaps.sgml +++ b/docs/gst/tmpl/gstcaps.sgml @@ -98,10 +98,10 @@ GST_CAPS_FACTORY() macro as shown below. -If you want to check if a connection between source and destination caps +If you want to check if a link between source and destination caps is always possible, use gst_caps_is_always_compatible(), which returns a boolean. -If you want to check if a connection between source and destination caps +If you want to check if a link between source and destination caps might be possible, use gst_caps_intersect(), which returns an intersection of the capabilities. diff --git a/docs/gst/tmpl/gstelement.sgml b/docs/gst/tmpl/gstelement.sgml index 49f4ff9716..c4b90ee71b 100644 --- a/docs/gst/tmpl/gstelement.sgml +++ b/docs/gst/tmpl/gstelement.sgml @@ -20,8 +20,8 @@ compatibility. -All elements have pads (of the type #GstPad). These pads connect to pads on -other elements. Buffers flow between these connected pads. +All elements have pads (of the type #GstPad). These pads link to pads on +other elements. Buffers flow between these linked pads. A GstElement has a GList of #GstPad structures for all their input (or sink) and output (or source) pads. Core and plug-in writers can add and remove pads with gst_element_add_pad() @@ -33,14 +33,14 @@ A GList of all pads can be retrieved with gst_element_get_pad_list(). -Elements can be connected through their pads. -If the connection is straightforward, use the gst_element_connect() -convenience function to connect two elements, or gst_element_connect_many() +Elements can be linked through their pads. +If the link is straightforward, use the gst_element_link() +convenience function to link two elements, or gst_element_link_many() for more elements in a row. -Use gst_element_connect_filtered() to connect two elements constrained by +Use gst_element_link_filtered() to link two elements constrained by a specified set of #GstCaps. -For finer control, use gst_element_connect_pads() and -gst_element_connect_pads_filtered() to specify the pads to connect on +For finer control, use gst_element_link_pads() and +gst_element_link_pads_filtered() to specify the pads to link on each element by name. @@ -90,7 +90,7 @@ Gets the name of the element. @Returns: the name of the element. - + @@ -232,7 +232,7 @@ Sets the name of the element, getting rid of the old name if there was one. @templ: - + @@ -242,7 +242,7 @@ Sets the name of the element, getting rid of the old name if there was one. @Returns: - + @@ -253,7 +253,7 @@ Sets the name of the element, getting rid of the old name if there was one. @Returns: - + @@ -264,7 +264,7 @@ Sets the name of the element, getting rid of the old name if there was one. @Returns: - + @@ -276,7 +276,7 @@ Sets the name of the element, getting rid of the old name if there was one. @Returns: - + @@ -289,7 +289,7 @@ Sets the name of the element, getting rid of the old name if there was one. @Returns: - + @@ -298,7 +298,7 @@ Sets the name of the element, getting rid of the old name if there was one. @dest: - + @@ -308,7 +308,7 @@ Sets the name of the element, getting rid of the old name if there was one. @Varargs: - + diff --git a/docs/gst/tmpl/gstevent.sgml b/docs/gst/tmpl/gstevent.sgml index bdc07382c0..6ea735de5a 100644 --- a/docs/gst/tmpl/gstevent.sgml +++ b/docs/gst/tmpl/gstevent.sgml @@ -46,6 +46,7 @@ The different major types of events. @GST_EVENT_RATE: adjust the output rate of an element @GST_EVENT_FILLER: a dummy event that should be ignored by plugins @GST_EVENT_TS_OFFSET: an event to set the time offset on buffers +@GST_EVENT_INTERRUPT: diff --git a/docs/gst/tmpl/gstindex.sgml b/docs/gst/tmpl/gstindex.sgml index 549f4a80ca..fcedfd6109 100644 --- a/docs/gst/tmpl/gstindex.sgml +++ b/docs/gst/tmpl/gstindex.sgml @@ -155,10 +155,11 @@ Function to resolve ids to writer descriptions. @index: the index being queried. @writer: The object that wants to write -@writer_id: A pointer to the id that has to be assigned to this writer @writer_string: A description of the writer. @user_data: user_data as registered @Returns: TRUE if an id could be assigned to the writer. + +@writer_id: A pointer to the id that has to be assigned to this writer @@ -358,3 +359,8 @@ Is emited when a new entry is added to the index. @gstindex: the object which received the signal. @arg1: The entry added to the index. + + + + + diff --git a/docs/gst/tmpl/gstpad.sgml b/docs/gst/tmpl/gstpad.sgml index a94945edb0..a376fbe751 100644 --- a/docs/gst/tmpl/gstpad.sgml +++ b/docs/gst/tmpl/gstpad.sgml @@ -2,16 +2,16 @@ GstPad -The connection between Elements +The link between Elements -A #GstElement is connected to other elements via "pads", which are extremely -light-weight generic connections points. +A #GstElement is linked to other elements via "pads", which are extremely +light-weight generic link points. After two pads are retrieved from an element with gst_element_get_pad(), -the pads can be connected with gst_pad_connect(). (For quick connections, -you can also use gst_element_connect(), which will make the obvious -connection for you if it's straightforward). +the pads can be link with gst_pad_link(). (For quick links, +you can also use gst_element_link(), which will make the obvious +link for you if it's straightforward.) Pads are typically created from a #GstPadTemplate with @@ -124,7 +124,7 @@ Gets the capabilities of a pad. Gets the peer pad of this pad. The peer pad is the pad on to which the parent -element is connected through this pad. +element is linked through this pad. @pad: a #GstPad to get the peer pad of. @@ -155,9 +155,9 @@ Checks if the pad is a source pad. @pad: a #GstPad to check. - + -Checks if the pad is connected. +Checks if the pad is linked. @pad: a #GstPad to check. @@ -173,7 +173,7 @@ Checks if the pad is active. -Checks if a pad is usable. A usable pad both connected and active. +Checks if a pad is usable. A usable pad is both linked and active. @pad: a #GstPad to check @@ -234,27 +234,27 @@ Function signature to handle an event for the pad. @Returns: TRUE if the pad could handle the event. - + -Function signature to handle a new connection on the pad. +Function signature to handle a new link on the pad. -@pad: the #GstPad that is connected. +@pad: the #GstPad that is linked. @caps: the peer's #GstCaps. -@Returns: the result of the connection with the specified caps. +@Returns: the result of the link with the specified caps. - + -The result of a pad connection. +The result of a pad link. -@GST_PAD_CONNECT_REFUSED: the connection was refused. -@GST_PAD_CONNECT_DELAYED: the connection was delayed, probably because the - element needs more specific pad capabilitiess. -@GST_PAD_CONNECT_OK: the connection succeeded. -@GST_PAD_CONNECT_DONE: the connection succeeded, - any more attempts are not needed. +@GST_PAD_LINK_REFUSED: the link was refused. +@GST_PAD_LINK_DELAYED: the link was delayed, probably because the + element needs more specific pad capabilitiess. +@GST_PAD_LINK_OK: the link succeeded. +@GST_PAD_LINK_DONE: the link succeeded, + any more attempts are not needed. @@ -271,7 +271,7 @@ The signature of a convert function. -A dispatcher function is called for all internally connected pads, see +A dispatcher function is called for all internally linked pads, see gst_pad_dispatcher(). @@ -280,13 +280,13 @@ gst_pad_dispatcher(). @Returns: TRUE if the dispatching procedure has to be stopped. - + -The signature of the internal pad connection function. +The signature of the internal pad link function. @pad: The #GstPad to query. -@Returns: a newly allocated #GList of pads that are connected to +@Returns: a newly allocated #GList of pads that are linked to the given pad on the inside of the parent element. The caller must call g_list_free() on it after use. @@ -463,13 +463,13 @@ Destroy the pad. @bufpool: - + @pad: -@connect: +@link: @@ -609,7 +609,7 @@ Destroy the pad. @Returns: - + @@ -619,7 +619,7 @@ Destroy the pad. @Returns: - + @@ -630,7 +630,7 @@ Destroy the pad. @Returns: - + @@ -641,7 +641,7 @@ Destroy the pad. @Returns: - + @@ -652,7 +652,7 @@ Destroy the pad. @Returns: - + @@ -661,7 +661,7 @@ Destroy the pad. @sinkpad: - + @@ -671,7 +671,7 @@ Destroy the pad. @Returns: - + @@ -709,7 +709,7 @@ Destroy the pad. @Returns: - + @@ -718,7 +718,7 @@ Destroy the pad. @parent: - + @@ -932,7 +932,7 @@ Destroy the pad. @formats: - + @@ -941,7 +941,7 @@ Destroy the pad. @Returns: - + @@ -950,13 +950,13 @@ Destroy the pad. @Returns: - + @pad: -@intconn: +@intlink: @@ -1075,7 +1075,7 @@ The realpad object @appfilter: @getcapsfunc: @direction: -@connectfunc: +@linkfunc: @peer: @sched_private: @chainfunc: @@ -1090,7 +1090,7 @@ The realpad object @queryfunc: @formatsfunc: @querytypefunc: -@intconnfunc: +@intlinkfunc: @bufferpoolfunc: @probedisp: @@ -1190,9 +1190,9 @@ Get the gethandler function of this real pad. @pad: the real pad to query. - + -Get the connect function of the pad +Get the link function of the pad @pad: the pad to query @@ -1214,9 +1214,9 @@ Get the convert function of this pad @pad: the pad to query - + -Get the internal connection function of this pad +Get the internal link function of this pad @pad: the pad to query diff --git a/docs/gst/tmpl/gstparse.sgml b/docs/gst/tmpl/gstparse.sgml index dce121ba39..416c892ac8 100644 --- a/docs/gst/tmpl/gstparse.sgml +++ b/docs/gst/tmpl/gstparse.sgml @@ -52,7 +52,7 @@ The parsing errors. @GST_PARSE_ERROR_SYNTAX: A syntax error was detected @GST_PARSE_ERROR_NO_SUCH_ELEMENT: The pipeline description contains a non existing element @GST_PARSE_ERROR_NO_SUCH_PROPERTY: The pipeline description contains a non existing element property -@GST_PARSE_ERROR_CONNECT: A pad connection could not be made +@GST_PARSE_ERROR_LINK: A pad link could not be made diff --git a/docs/gst/tmpl/gstreamer-unused.sgml b/docs/gst/tmpl/gstreamer-unused.sgml index 410201ba5d..e58938bbb1 100644 --- a/docs/gst/tmpl/gstreamer-unused.sgml +++ b/docs/gst/tmpl/gstreamer-unused.sgml @@ -276,28 +276,6 @@ GstColorSpace gstconfig - - -A connection is a bas class for a generic connection between -elements. A connection is typically a bas class for queues. - - - - - - - - - - - -Generic connection between elements. - - - -GstConnection - - @@ -565,7 +543,7 @@ GstFileSrc Filters take data in and spit data out. They are the main Element in a filter graph. -Filters have zero or more inputs and zero or more outputs. Filters are connected +Filters have zero or more inputs and zero or more outputs. Filters are linked together to form filter graphs. A GstFilter is the base class and is not very usefull on its own. @@ -645,6 +623,28 @@ Pass data without modification. (identity) GstIdentity + + +A link is a base class for a generic link between +elements. A link is typically a base class for queues. + + + + + + + + + + + +Generic link between elements. + + + +GstLink + + @@ -723,7 +723,7 @@ adding to the list. The trick is dealing with these structs as they pass through a pipeline, since they have potentially different mutability properties. For -instance, if you've got a mp3 decoder connected to a tee, which sends the +instance, if you've got a mp3 decoder linked to a tee, which sends the buffers off to both the decoder and a spectrum analyzer (and then a visualization element). The preferred setup would be where every time a audio/raw metadata comes down the pipe (indicating a potential change in @@ -1238,13 +1238,7 @@ Information about video buffers. videoraw - - - - - - - + @@ -1274,6 +1268,12 @@ The default stack size of a cothread. + + +Get the current stack frame. + + + Use this macro to show debugging info. This is only usefull when developing new @@ -1348,7 +1348,7 @@ g_print messages. @format: @args...: - + @@ -1771,20 +1771,6 @@ Unlock the caps structure @caps: The caps structure to unlock - - - - - -@obj: - - - - - - -@klass: - A flag indicating that MMX instructions are supported. @@ -2197,20 +2183,6 @@ subclass use this to start their flag enumeration @obj: - - - - - -@obj: - - - - - - -@obj: - @@ -2386,6 +2358,20 @@ subclass use this to start their flag enumeration @obj: + + + + + +@obj: + + + + + + +@obj: + @@ -2568,6 +2554,20 @@ subclass use this to start their flag enumeration @obj: + + + + + +@obj: + + + + + + +@klass: + @@ -2668,13 +2668,6 @@ subclasses can use this value to start the enumeration of their flags @klass: - - -Is this pad connected. - - -@pad: the pad to check - Indicate that this pad will always be available. @@ -2715,6 +2708,13 @@ Indicates a srcpad for the padfactory. + + +Is this pad linked. + + +@pad: the pad to check + @@ -2981,18 +2981,18 @@ Fast macro to lock a given element. @sched: The scheduler. @element: The element to lock. - + -Fast macro to connect two pads. +Fast macro to link two pads. @sched: The scheduler. @srcpad: The source pad. @sinkpad: The sink pad. - + -Fast macro to disconnect two pads. +Fast macro to unlink two pads. @sched: The scheduler. @@ -3297,12 +3297,6 @@ This macro unsets the given state on the element. - - - - - - @@ -3429,6 +3423,12 @@ A type that can be used to indicate a filename. + + + + + + @@ -3447,12 +3447,6 @@ A type that can be used to indicate a filename. - - - - - - @@ -3465,6 +3459,12 @@ A type that can be used to indicate a filename. + + + + + + @@ -4398,18 +4398,6 @@ can perform necessary cleanup. - - - - - - - - - - - - Is emited after the buffer has been written to the disk. @@ -5013,6 +5001,18 @@ Specify the location of the file. The location must be a fully qualified URL. + + + + + + + + + + + + @@ -5212,7 +5212,7 @@ The different supported query types. @GST_PARSE_ERROR_CREATING_ELEMENT: @GST_PARSE_ERROR_NOSUCH_ELEMENT: @GST_PARSE_ERROR_INTERNAL: -@GST_PARSE_ERROR_CONNECT: +@GST_PARSE_ERROR_LINK: @@ -5460,7 +5460,7 @@ The volume as a double 0.0 is silent, 1.0 is loudest. - + @@ -5809,6 +5809,12 @@ Query the element for the current mime type @format: @args...: + + + + + + @@ -5963,12 +5969,6 @@ must be defined to activate the tracing functionality. @Domain: @Directory: - - - - - - @@ -6913,8 +6913,8 @@ must be defined to activate the tracing functionality. @parent: @current_bin_type: @elements: -@connections: -@connections_pending: +@links: +@links_pending: @bins: @bin: @@ -7022,7 +7022,7 @@ must be defined to activate the tracing functionality. @src: - + @@ -7031,7 +7031,7 @@ must be defined to activate the tracing functionality. @sink: @Returns: - + @@ -7811,25 +7811,6 @@ must be defined to activate the tracing functionality. @jitter: @Returns: - -======= - - - - - - - -@name: -@Returns: - - - - - - -@connection: - @@ -7890,43 +7871,6 @@ must be defined to activate the tracing functionality. @first_name: @Varargs: - - - - - -@src: -@dest: -@Returns: - - - - - - -@src: -@dest: -@filtercaps: -@Returns: - - - - - - -@element_1: -@element_2: -@Varargs: -@Returns: - - - - - - -@src: -@dest: - @@ -8074,6 +8018,35 @@ must be defined to activate the tracing functionality. @element: @Returns: + + + + + +@src: +@dest: +@Returns: + + + + + + +@src: +@dest: +@filtercaps: +@Returns: + + + + + + +@element_1: +@element_2: +@Varargs: +@Returns: + @@ -8174,6 +8147,14 @@ must be defined to activate the tracing functionality. @Returns: + + + + + +@src: +@dest: + @@ -8445,6 +8426,25 @@ must be defined to activate the tracing functionality. @format: @args...: + +======= + + + + + + + +@name: +@Returns: + + + + + + +@link: + @@ -8607,13 +8607,6 @@ Create new meta data. @pad: @parent: - - - - - -@Returns: - @@ -8728,6 +8721,13 @@ Call the EOS function of the pad @format: @Returns: + + + + + +@Returns: + @@ -8943,7 +8943,7 @@ Call the EOS function of the pad @parent: @Returns: - + @@ -9230,7 +9230,7 @@ Call the EOS function of the pad -@connection: +@link: @@ -9321,16 +9321,7 @@ Call the EOS function of the pad @parent: @Returns: - - - - - -@sched: -@srcpad: -@sinkpad: - - + @@ -9348,6 +9339,15 @@ Call the EOS function of the pad @padlist: @Returns: + + + + + +@sched: +@srcpad: +@sinkpad: + @@ -9907,6 +9907,12 @@ Call the EOS function of the pad @location: @Returns: + + + + + + diff --git a/docs/gst/tmpl/gstscheduler.sgml b/docs/gst/tmpl/gstscheduler.sgml index 4193645318..dad4afb33d 100644 --- a/docs/gst/tmpl/gstscheduler.sgml +++ b/docs/gst/tmpl/gstscheduler.sgml @@ -136,6 +136,7 @@ Destroy the scheduler @sched: @element: +@Returns: @@ -157,7 +158,7 @@ Destroy the scheduler @element: - + @@ -167,7 +168,7 @@ Destroy the scheduler @sinkpad: - + diff --git a/docs/manual/advanced-threads.xml b/docs/manual/advanced-threads.xml index 500a106fe6..04c4fdf4b2 100644 --- a/docs/manual/advanced-threads.xml +++ b/docs/manual/advanced-threads.xml @@ -23,7 +23,7 @@ gst_bin_add (GST_BIN (my_thread), GST_ELEMENT (funky_src)); gst_bin_add (GST_BIN (my_thread), GST_ELEMENT (cool_effect)); - /* connect the elements here... */ + /* link the elements here... */ ... /* start playing */ @@ -41,7 +41,7 @@ Constraints placed on the pipeline by the GstThread Within the pipeline, everything is the same as in any other bin. The - difference lies at the thread boundary, at the connection between the + difference lies at the thread boundary, at the link between the thread and the outside world (containing bin). Since GStreamer is fundamentally buffer-oriented rather than byte-oriented, the natural solution to this problem is an element that can "buffer" the buffers @@ -135,7 +135,7 @@ main (int argc, char *argv[]) /* add objects to the thread */ gst_bin_add_many (GST_BIN (thread), filesrc, decoder, audiosink, NULL); - /* connect them in the logical order */ + /* link them in the logical order */ gst_element_link_many (filesrc, decoder, audiosink, NULL); /* start playing */ diff --git a/docs/manual/appendix-programs.xml b/docs/manual/appendix-programs.xml index 83959f6833..897529a0a9 100644 --- a/docs/manual/appendix-programs.xml +++ b/docs/manual/appendix-programs.xml @@ -100,13 +100,13 @@ main (int argc, char *argv[]) - Connections + Links ... !sink ... An exclamation point, optionally having a qualified pad name (an the name of the pad, - optionally preceded by the name of the element) on both sides, will connect two pads. If + optionally preceded by the name of the element) on both sides, will link two pads. If the source pad is not specified, a source pad from the immediately preceding element will be automatically chosen. If the sink pad is not specified, a sink pad from the next element to be constructed will be chosen. An attempt will be made to find compatible diff --git a/docs/manual/autoplugging.xml b/docs/manual/autoplugging.xml index a846c0fb78..80cc8ead57 100644 --- a/docs/manual/autoplugging.xml +++ b/docs/manual/autoplugging.xml @@ -5,7 +5,7 @@ construct complex pipelines based on source and destination capabilities. This feature is very useful if you want to convert type X to type Y but don't care about the plugins needed to accomplish this task. The - autoplugger will consult the plugin repository, select and connect the + autoplugger will consult the plugin repository, select and link the elements needed for the conversion. @@ -29,7 +29,7 @@ If the autoplugger supports the RENDERER API, use the - gst_autoplug_to_renderers() function to create a bin that connects + gst_autoplug_to_renderers() function to create a bin that links the source caps to the specified render elements. You can then add the bin to a pipeline and run it. @@ -55,13 +55,13 @@ sink, NULL); - /* add the element to a bin and connect the sink pad */ + /* add the element to a bin and link the sink pad */ ... If the autoplugger supports the CAPS API, use the gst_autoplug_to_caps() - function to connect the source caps to the destination caps. The created + function to link the source caps to the destination caps. The created bin will have source and sink pads compatible with the provided caps. @@ -86,7 +86,7 @@ ), NULL); - /* add the element to a bin and connect the src/sink pads */ + /* add the element to a bin and link the src/sink pads */ ... @@ -107,13 +107,13 @@ - Add the autoplugcache element to a bin and connect the sink pad + Add the autoplugcache element to a bin and link the sink pad to the source pad of an element with unknown caps. - Connect the source pad of the autoplugcache to the sink pad of + Link the source pad of the autoplugcache to the sink pad of the typefind element. @@ -137,7 +137,7 @@ In the cache_empty signal callback function, remove the autoplugcache and - reconnect the pads. + relink the pads. diff --git a/docs/manual/basics-elements.xml b/docs/manual/basics-elements.xml index b80d3860cd..a43f5d9c7e 100644 --- a/docs/manual/basics-elements.xml +++ b/docs/manual/basics-elements.xml @@ -16,7 +16,7 @@ Elements, from the perspective of GStreamer, are viewed as "black boxes" with a number of different aspects. One of these aspects is the presence - of "pads", or connection points. This terminology arises from soldering; + of "pads", or link points. This terminology arises from soldering; pads are where wires can be attached. @@ -87,7 +87,7 @@ splitter (demultiplexer). This element will parse the input data and extract the audio and video data. Most of these filters dynamically send out a signal when a new pad is created so that the application - programmer can connect an arbitrary element to the newly created pad. + programmer can link an arbitrary element to the newly created pad. diff --git a/docs/manual/elements.xml b/docs/manual/elements.xml index b80d3860cd..a43f5d9c7e 100644 --- a/docs/manual/elements.xml +++ b/docs/manual/elements.xml @@ -16,7 +16,7 @@ Elements, from the perspective of GStreamer, are viewed as "black boxes" with a number of different aspects. One of these aspects is the presence - of "pads", or connection points. This terminology arises from soldering; + of "pads", or link points. This terminology arises from soldering; pads are where wires can be attached. @@ -87,7 +87,7 @@ splitter (demultiplexer). This element will parse the input data and extract the audio and video data. Most of these filters dynamically send out a signal when a new pad is created so that the application - programmer can connect an arbitrary element to the newly created pad. + programmer can link an arbitrary element to the newly created pad. diff --git a/docs/manual/goals.xml b/docs/manual/goals.xml index 0b6d827be4..859c9d53b4 100644 --- a/docs/manual/goals.xml +++ b/docs/manual/goals.xml @@ -88,7 +88,7 @@ - Extremely light-weight connections between plugins. Data can travel + Extremely light-weight links between plugins. Data can travel the pipeline with minimal overhead. Data passing between plugins only involves a pointer dereference in a typical pipeline. diff --git a/docs/manual/gstreamer-manual.xml b/docs/manual/gstreamer-manual.xml index 479bafac67..14dcd6c715 100644 --- a/docs/manual/gstreamer-manual.xml +++ b/docs/manual/gstreamer-manual.xml @@ -11,7 +11,7 @@ - + @@ -145,7 +145,7 @@ &PADS; - &CONNECTIONS; + &LINKS; &BINS; diff --git a/docs/manual/intro-preface.xml b/docs/manual/intro-preface.xml index a78adff8c3..1b1180007f 100644 --- a/docs/manual/intro-preface.xml +++ b/docs/manual/intro-preface.xml @@ -34,7 +34,7 @@ The framework is based on plugins that will provide the various codec - and other functionality. The plugins can be connected and arranged in + and other functionality. The plugins can be linked and arranged in a pipeline. This pipeline defines the flow of the data. Pipelines can also be edited with a GUI editor and saved as XML so that pipeline libraries can be made with a minimum of effort. diff --git a/docs/manual/intro.xml b/docs/manual/intro.xml index a78adff8c3..1b1180007f 100644 --- a/docs/manual/intro.xml +++ b/docs/manual/intro.xml @@ -34,7 +34,7 @@ The framework is based on plugins that will provide the various codec - and other functionality. The plugins can be connected and arranged in + and other functionality. The plugins can be linked and arranged in a pipeline. This pipeline defines the flow of the data. Pipelines can also be edited with a GUI editor and saved as XML so that pipeline libraries can be made with a minimum of effort. diff --git a/docs/manual/linked-elements.fig b/docs/manual/linked-elements.fig new file mode 100644 index 0000000000..0aff06c9f4 --- /dev/null +++ b/docs/manual/linked-elements.fig @@ -0,0 +1,36 @@ +#FIG 3.2 +Landscape +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 + 3975 3600 4725 3600 4725 4125 3975 4125 3975 3600 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2775 2775 4725 2775 4725 4425 2775 4425 2775 2775 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 5400 2775 7350 2775 7350 4425 5400 4425 5400 2775 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 8025 2775 9975 2775 9975 4425 8025 4425 8025 2775 +2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 + 5400 3600 6150 3600 6150 4125 5400 4125 5400 3600 +2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 + 8025 3600 8775 3600 8775 4125 8025 4125 8025 3600 +2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 + 6600 3600 7350 3600 7350 4125 6600 4125 6600 3600 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 + 1 1 1.00 90.00 120.00 + 4575 3750 5400 3750 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 + 1 1 1.00 90.00 120.00 + 7200 3750 8025 3750 +4 0 0 50 0 16 12 0.0000 4 105 255 4200 3975 src\001 +4 0 0 50 0 16 12 0.0000 4 135 330 5550 3975 sink\001 +4 0 0 50 0 16 12 0.0000 4 135 330 8175 3975 sink\001 +4 0 0 50 0 16 12 0.0000 4 105 255 6825 3975 src\001 +4 0 0 50 0 16 12 0.0000 4 135 750 5625 3075 element2\001 +4 0 0 50 0 16 12 0.0000 4 135 750 8250 3075 element3\001 +4 0 0 50 0 16 12 0.0000 4 135 750 3000 3075 element1\001 diff --git a/docs/manual/links.xml b/docs/manual/links.xml new file mode 100644 index 0000000000..bdb27c0f41 --- /dev/null +++ b/docs/manual/links.xml @@ -0,0 +1,104 @@ + + Linking elements + + You can link the different pads of elements together so that the elements + form a chain. + + + + + By linking these three elements, we have created a very simple + chain. The effect of this will be that the output of the source element + (element1) will be used as input for the filter element (element2). The + filter element will do something with the data and send the result to + the final sink element (element3). + + + Imagine the above graph as a simple MPEG audio decoder. The source + element is a disk source, the filter element is the MPEG decoder and + the sink element is your audiocard. We will use this simple graph to + construct an MPEG player later in this manual. + + + + Making simple links + + You can link two pads with: + + + GstPad *srcpad, *sinkpad; + + srcpad = gst_element_get_pad (element1, "src"); + sinpad = gst_element_get_pad (element2, "sink"); + + // link them + gst_pad_link (srcpad, sinkpad); + .... + // and unlink them + gst_pad_unlink (srcpad, sinkpad); + + + + A convenient shortcut for the above code is done with the gst_element_link_pads () + function: + + + + // link them + gst_element_link_pads (element1, "src", element2, "sink"); + .... + // and unlink them + gst_element_unlink_pads (element1, "src", element2, "sink"); + + + + An even more convenient shortcut for single-source, single-sink elements is the + gst_element_link () function: + + + + // link them + gst_element_link (element1, element2); + .... + // and unlink them + gst_element_unlink (element1, element2); + + + + If you have more than one element to link, the gst_element_link_many () function takes + a NULL-terminated list of elements: + + + + // link them + gst_element_link_many (element1, element2, element3, element4, NULL); + .... + // and unlink them + gst_element_unlink_many (element1, element2, element3, element4, NULL); + + + + You can query if a pad is linked with GST_PAD_IS_LINKED (pad). + + + To query for the GstPad a pad is linked to, use + gst_pad_get_peer (pad). + + + + + Making filtered links + + You can also force a specific media type on the link by using gst_pad_link_filtered () + and gst_element_link_filtered (). FIXME link to caps documentation. + + + + diff --git a/docs/manual/outline.txt b/docs/manual/outline.txt index def2e4720c..1eacb7e571 100644 --- a/docs/manual/outline.txt +++ b/docs/manual/outline.txt @@ -28,7 +28,7 @@ Basic concepts (what is it) (types) sink, src, filter (have pads) - connecting elements + linking elements bin (can contain elements) pipeline (a complete graph) diff --git a/docs/manual/programs.xml b/docs/manual/programs.xml index 83959f6833..897529a0a9 100644 --- a/docs/manual/programs.xml +++ b/docs/manual/programs.xml @@ -100,13 +100,13 @@ main (int argc, char *argv[]) - Connections + Links ... !sink ... An exclamation point, optionally having a qualified pad name (an the name of the pad, - optionally preceded by the name of the element) on both sides, will connect two pads. If + optionally preceded by the name of the element) on both sides, will link two pads. If the source pad is not specified, a source pad from the immediately preceding element will be automatically chosen. If the sink pad is not specified, a sink pad from the next element to be constructed will be chosen. An attempt will be made to find compatible diff --git a/docs/manual/states.xml b/docs/manual/states.xml index 3a2740ee6b..3cda7a935d 100644 --- a/docs/manual/states.xml +++ b/docs/manual/states.xml @@ -46,7 +46,7 @@ GstElement *bin; - // create a bin, put elements in it and connect them + // create a bin, put elements in it and link them ... gst_element_set_state (bin, GST_STATE_PLAYING); ... diff --git a/docs/manual/threads.xml b/docs/manual/threads.xml index 500a106fe6..04c4fdf4b2 100644 --- a/docs/manual/threads.xml +++ b/docs/manual/threads.xml @@ -23,7 +23,7 @@ gst_bin_add (GST_BIN (my_thread), GST_ELEMENT (funky_src)); gst_bin_add (GST_BIN (my_thread), GST_ELEMENT (cool_effect)); - /* connect the elements here... */ + /* link the elements here... */ ... /* start playing */ @@ -41,7 +41,7 @@ Constraints placed on the pipeline by the GstThread Within the pipeline, everything is the same as in any other bin. The - difference lies at the thread boundary, at the connection between the + difference lies at the thread boundary, at the link between the thread and the outside world (containing bin). Since GStreamer is fundamentally buffer-oriented rather than byte-oriented, the natural solution to this problem is an element that can "buffer" the buffers @@ -135,7 +135,7 @@ main (int argc, char *argv[]) /* add objects to the thread */ gst_bin_add_many (GST_BIN (thread), filesrc, decoder, audiosink, NULL); - /* connect them in the logical order */ + /* link them in the logical order */ gst_element_link_many (filesrc, decoder, audiosink, NULL); /* start playing */ diff --git a/docs/manual/typedetection.xml b/docs/manual/typedetection.xml index b163b4398e..b98a044e7e 100644 --- a/docs/manual/typedetection.xml +++ b/docs/manual/typedetection.xml @@ -103,7 +103,7 @@ main(int argc, char *argv[]) We create a very simple pipeline with only a filesrc and the typefind - element in it. The sinkpad of the typefind element has been connected + element in it. The sinkpad of the typefind element has been linked to the source pad of the filesrc. @@ -140,7 +140,7 @@ type_found (GstElement *typefind, GstCaps* caps) A more useful option would be to use the registry to look up an element that can handle this particular caps structure, or we can also use the - autoplugger to connect this caps structure to, for example, a videosink. + autoplugger to link this caps structure to, for example, a videosink. diff --git a/docs/pwg/basics-elements.xml b/docs/pwg/basics-elements.xml index 1caf8d1beb..df33648636 100644 --- a/docs/pwg/basics-elements.xml +++ b/docs/pwg/basics-elements.xml @@ -16,7 +16,7 @@ Elements are at the core of &GStreamer;. Without elements, &GStreamer; is - just a bunch of pipe fittings with nothing to connect. A large number of + just a bunch of pipe fittings with nothing to link. A large number of elements (filters, sources, and sinks) ship with &GStreamer;, but extra elements can also be written. The purpose of this guide is to help you learn to create new elements. diff --git a/docs/pwg/basics-types.xml b/docs/pwg/basics-types.xml index e0e130a596..e28ec40093 100644 --- a/docs/pwg/basics-types.xml +++ b/docs/pwg/basics-types.xml @@ -6,7 +6,7 @@ A type system is used to ensure that the data passed between elements is in a recognised format, and that the various parameters required to fully - specify that format match up correctly. Each connection that is made between + specify that format match up correctly. Each link that is made between elements has a specified type. This is related, but different, to the metadata in buffers which describes the type of data in that particular buffer. See the next chapter of this document for details of the available diff --git a/docs/pwg/building-testapp.xml b/docs/pwg/building-testapp.xml index bfbd66abdd..05df145db6 100644 --- a/docs/pwg/building-testapp.xml +++ b/docs/pwg/building-testapp.xml @@ -11,8 +11,8 @@ - - Connecting the plugins + + Linking the plugins diff --git a/docs/pwg/intro-basics.xml b/docs/pwg/intro-basics.xml index 53a26afe64..3c604e1329 100644 --- a/docs/pwg/intro-basics.xml +++ b/docs/pwg/intro-basics.xml @@ -18,10 +18,10 @@ Elements are at the core of &GStreamer;. In the context of plugin development, an element is an object derived from the GstElement class. Elements provide some sort of - functionality when connected with other elements: For example, a source + functionality when linked with other elements: For example, a source element provides data to a stream, and a filter element acts on the data in a stream. Without elements, &GStreamer; is just a bunch of conceptual - pipe fittings with nothing to connect. A large number of elements ship + pipe fittings with nothing to link. A large number of elements ship with &GStreamer;, but extra elements can also be written. @@ -37,7 +37,7 @@ A filter is an important type of element that processes a stream of data. Producers and consumers of data are called source and sink elements, - respectively. Elements that connect other elements together are called + respectively. Elements that link other elements together are called autoplugger elements, and a bin element contains other elements. Bins are often responsible for scheduling the elements that they contain so that data flows smoothly. @@ -65,27 +65,27 @@ Pads - Pads are used to negotiate connections and data flow + Pads are used to negotiate links and data flow between elements in &GStreamer;. A pad can be viewed as a place or port on an element where - connections may be made with other elements. Pads have specific data + links may be made with other elements. Pads have specific data handling capabilities: A pad only knows how to give or receive certain - types of data. Connections are only allowed when the capabilities of two + types of data. Links are only allowed when the capabilities of two pads are compatible. An analogy may be helpful here. A pad is similar to a plug or jack on a physical device. Consider, for example, a home theater system consisting - of an amplifier, a DVD player, and a (silent) video projector. Connecting + of an amplifier, a DVD player, and a (silent) video projector. Linking the DVD player to the amplifier is allowed because both devices have audio - jacks, and connecting the projector to the DVD player is allowed because - both devices have compatible video jacks. Connections between the + jacks, and linking the projector to the DVD player is allowed because + both devices have compatible video jacks. Links between the projector and the amplifier may not be made because the projector and amplifier have different types of jacks. Pads in &GStreamer; serve the same purpose as the jacks in the home theater system. - For the moment, all data in &GStreamer; flows one way through a connection + For the moment, all data in &GStreamer; flows one way through a link between elements. Data flows out of one element through one or more source pads, and elements accept incoming data through one or more sink pads. Source and sink elements have @@ -107,7 +107,7 @@ passed from a source pad on one element to a sink pad on another element. Buffers are structures used to hold these chunks of data. Buffers can be of any size, theoretically, and they may contain any - sort of data that the two connected pads know how to handle. Normally, a + sort of data that the two linked pads know how to handle. Normally, a buffer contains a chunk of some sort of audio or video data that flows from one element to another. @@ -188,7 +188,7 @@ &GStreamer; uses a type system to ensure that the data passed between elements is in a recognized format. The type system is also important for ensuring that the parameters required to fully specify a format match up - correctly when connecting pads between elements. Each connection that is + correctly when linking pads between elements. Each link that is made between elements has a specified type.