API docs updates

Original commit message from CVS:
API docs updates
This commit is contained in:
Wim Taymans 2002-07-12 23:21:20 +00:00
parent efafdb2aa6
commit b5c170f42a
18 changed files with 783 additions and 253 deletions

View file

@ -104,7 +104,6 @@ with some more specialized elements.</para>
&GstUtils;
&GstXML;
&cothreads;
</chapter>
<chapter id="element-types">

View file

@ -37,6 +37,8 @@ gst_init_with_popt_table
gst_version
gst_main
gst_main_quit
gst_has_threads
gst_use_threads
g_log_domain_gstreamer
GST_VERSION_MAJOR
GST_VERSION_MINOR
@ -102,6 +104,7 @@ GstSchedulerState
GstSchedulerFlags
gst_scheduler_destroy
gst_scheduler_setup
gst_scheduler_get_preferred_stack
gst_scheduler_reset
gst_scheduler_add_element
gst_scheduler_remove_element
@ -212,7 +215,32 @@ GST_ARCH_PRESETJMP
<SECTION>
<FILE>gstdata</FILE>
<TITLE>GstData</TITLE>
GST_DATA
GST_DATA_TYPE
GST_DATA_FLAGS
GST_DATA_FLAG_SHIFT
GST_DATA_FLAG_IS_SET
GST_DATA_FLAG_SET
GST_DATA_FLAG_UNSET
GstData
GstDataFreeFunction
GstDataCopyFunction
GstDataFlags
GST_DATA_IS_READONLY
GST_DATA_REFCOUNT
GST_DATA_REFCOUNT_VALUE
GST_DATA_REFCOUNT_READ
GST_DATA_COPY_FUNC
GST_DATA_FREE_FUNC
gst_data_init
gst_data_dispose
gst_data_copy_into
gst_data_copy
gst_data_copy_on_write
gst_data_free
gst_data_ref
gst_data_ref_by_count
gst_data_unref
<SUBSECTION Standard>
GST_DATA
GST_DATA_TYPE
@ -221,41 +249,41 @@ GST_DATA_TYPE
<SECTION>
<FILE>gstbuffer</FILE>
<TITLE>GstBuffer</TITLE>
GST_IS_BUFFER
GST_BUFFER
GST_IS_BUFFER
GST_BUFFER_REFCOUNT
GST_BUFFER_REFCOUNT_VALUE
GST_BUFFER_COPY_FUNC
GST_BUFFER_FREE_FUNC
GST_BUFFER_FLAGS
GST_BUFFER_FLAG_IS_SET
GST_BUFFER_FLAG_SET
GST_BUFFER_FLAG_UNSET
GST_BUFFER_DATA
GST_BUFFER_SIZE
GST_BUFFER_OFFSET
GST_BUFFER_MAXSIZE
GST_BUFFER_TIMESTAMP
GST_BUFFER_OFFSET
GST_BUFFER_BUFFERPOOL
GST_BUFFER_POOL_PRIVATE
GST_BUFFER_LOCK
GST_BUFFER_TRYLOCK
GST_BUFFER_UNLOCK
GST_BUFFER_PARENT
GST_BUFFER_MAXAGE
GST_BUFFER_COPY_FUNC
GST_BUFFER_FREE_FUNC
GstBufferCopyFunc
GstBufferFreeFunc
GstBufferFlag
GstBuffer
gst_buffer_new
gst_buffer_new_and_alloc
gst_buffer_new_from_pool
gst_buffer_copy
gst_buffer_create_sub
gst_buffer_append
gst_buffer_default_free
gst_buffer_default_copy
gst_buffer_ref
gst_buffer_ref_by_count
gst_buffer_unref
gst_buffer_destroy
gst_buffer_is_span_fast
gst_buffer_copy
gst_buffer_copy_on_write
gst_buffer_free
gst_buffer_create_sub
gst_buffer_merge
gst_buffer_is_span_fast
gst_buffer_span
gst_buffer_print_stats
<SUBSECTION Standard>
@ -265,25 +293,25 @@ GST_TYPE_BUFFER
<SECTION>
<FILE>gstbufferpool</FILE>
<TITLE>GstBufferPool</TITLE>
GST_BUFFER_POOL
GST_IS_BUFFER_POOL
GstBufferPool
GstBufferPoolBufferNewFunction
GstBufferPoolDestroyHook
GST_BUFFER_POOL_UNLOCK
GST_BUFFER_POOL_LOCK
GstBufferPoolBufferCopyFunction
GstBufferPoolBufferFreeFunction
gst_buffer_pool_new
gst_buffer_pool_is_active
gst_buffer_pool_set_active
gst_buffer_pool_ref
gst_buffer_pool_ref_by_count
gst_buffer_pool_unref
gst_buffer_pool_destroy
gst_buffer_pool_get_default
gst_buffer_pool_copy
gst_buffer_pool_copy_on_write
gst_buffer_pool_free
gst_buffer_pool_set_user_data
gst_buffer_pool_get_user_data
gst_buffer_pool_set_buffer_copy_function
gst_buffer_pool_set_buffer_free_function
gst_buffer_pool_set_buffer_new_function
gst_buffer_pool_set_destroy_hook
gst_buffer_pool_get_default
<SUBSECTION Standard>
GST_BUFFER_POOL
</SECTION>
<SECTION>
@ -310,15 +338,24 @@ GST_SEEK_METHOD_SHIFT
GST_EVENT_DISCONT_NEW_MEDIA
GST_EVENT_DISCONT_OFFSET
GST_EVENT_DISCONT_OFFSET_LEN
GST_EVENT_RATE_VALUE
GST_EVENT_SEEK_ENDOFFSET
GST_EVENT_SIZE_FORMAT
GST_EVENT_SIZE_VALUE
GstEvent
gst_event_new
gst_event_copy
gst_event_free
gst_event_ref
gst_event_ref_by_count
gst_event_unref
gst_event_new_seek
gst_event_new_segment_seek
gst_event_new_size
gst_event_new_discontinuous
gst_event_discont_get_value
gst_event_new_filler
gst_event_new_flush
gst_event_print_stats
<SUBSECTION Standard>
GST_EVENT
GST_IS_EVENT
@ -551,6 +588,7 @@ GST_IS_CLOCK_CLASS
GstRegistryReturn
GstRegistryFlags
<TITLE>GstRegistry</TITLE>
GstRegistry
gst_registry_load
gst_registry_is_loaded
gst_registry_save
@ -599,6 +637,7 @@ GST_IS_REGISTRY_CLASS
<TITLE>GstSystemClock</TITLE>
gst_system_clock_obtain
<SUBSECTION Standard>
GstSystemClock
GST_SYSTEM_CLOCK
GST_IS_SYSTEM_CLOCK
GST_TYPE_SYSTEM_CLOCK
@ -685,7 +724,7 @@ GstPadEventFunction
GstPadConnectFunction
GstPadConnectReturn
GstPadConvertFunction
GstPadDispatcherFunc
GstPadDispatcherFunction
GstPadIntConnFunction
GstPadQueryType
@ -987,6 +1026,8 @@ GstTypeFindFunc
gst_type_factory_new
gst_type_factory_find
<SUBSECTION Standard>
GstTypeFind
GstTypeFindClass
GST_TYPE_FACTORY
GST_IS_TYPE_FACTORY
GST_TYPE_TYPE_FACTORY

View file

@ -9,8 +9,8 @@ Media library supporting arbitrary formats and filter graphs.
GStreamer is a framework for constructing graphs of various filters
(termed elements here) that will handle streaming media. Any discreet
(packetizable) media type is supported, with provisions for automatically
determining source type. Metadata can be passed with all data to provide
formatting/framing information. Plugins are heavily used to provide for
determining source type. Formatting/framing information is provided with
a powerful negotiation framework. Plugins are heavily used to provide for
all elements, allowing one to construct plugins outside of the GST
library, even released binary-only if license require (please don't).
</para>
@ -19,9 +19,8 @@ library, even released binary-only if license require (please don't).
GStreamer borrows heavily from both the <ulink
url="http://www.cse.ogi.edu/sysl/">OGI media pipeline</ulink> and
Microsoft's DirectShow, hopefully taking the best of both and leaving the
cruft behind. Its interface is still very fluid (I've redesigned the
metadata handling twice already), and thus can be changed to increase the
sanity/noise ratio.
cruft behind. Its interface is still very fluid and thus can be changed
to increase the sanity/noise ratio.
</para>
<para>
@ -39,6 +38,10 @@ process its own command line options, as shown in the following example.
}
</programlisting>
</para>
<para>
It's allowed to pass two NULL pointers to gst_init() in case you don't want to pass the command
line args to GStreamer.
</para>
<para>
You can also use a popt table to initialize your own parameters as shown in the next code
@ -68,7 +71,7 @@ fragment:
to find the version at compile time.
</para>
<para>
gst_main() and gst_main_quit() enter and exit the main loop.
gst_main() and gst_main_quit() enter and exit the main loop.
</para>
<!-- ##### SECTION See_Also ##### -->
@ -120,6 +123,22 @@ pipeline</ulink> and Microsoft's DirectShow for some background.
<!-- ##### FUNCTION gst_has_threads ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gst_use_threads ##### -->
<para>
</para>
@use_threads:
<!-- ##### VARIABLE g_log_domain_gstreamer ##### -->
<para>

View file

@ -55,10 +55,10 @@ get the current clock of the bin and gst_bin_use_clock() to specify a clock expl
Flags for a bin.
</para>
@GST_BIN_FLAG_MANAGER:
@GST_BIN_SELF_SCHEDULABLE:
@GST_BIN_FLAG_PREFER_COTHREADS:
@GST_BIN_FLAG_FIXED_CLOCK:
@GST_BIN_FLAG_MANAGER: This bin has a scheduler and can be used as a toplevel bin.
@GST_BIN_SELF_SCHEDULABLE: This bin iterates itself, so no calls to gst_bin_iterate() should be made.
@GST_BIN_FLAG_PREFER_COTHREADS: This bin preferes to have its elements scheduled with cothreads
@GST_BIN_FLAG_FIXED_CLOCK: This bin uses a fixed clock, possibly the one set with gst_bin_use_clock().
@GST_BIN_FLAG_LAST:
<!-- ##### STRUCT GstBin ##### -->

View file

@ -2,7 +2,7 @@
GstBuffer
<!-- ##### SECTION Short_Description ##### -->
Data-passing buffer type, supporting sub-buffers and metadata
Data-passing buffer type, supporting sub-buffers.
<!-- ##### SECTION Long_Description ##### -->
<para>
@ -10,8 +10,7 @@ Buffers are the basic unit of data transfer in GStreamer. The GstBuffer type
provides all the state necessary to define a region of memory as part of a
stream. Sub-buffers are also supported, allowing a smaller region of a
buffer to become its own buffer, with mechanisms in place to ensure that
neither memory space goes away. Metadata is supported as a list of
pointers to arbitrary metadata.
neither memory space goes away.
</para>
<para>
Buffers are usually created with gst_buffer_new(). After a buffer has been
@ -30,7 +29,11 @@ buffer data.
</programlisting>
</para>
<para>
GstBuffers can also be created from a GstBufferPool with
Alternatively, use gst_buffer_new_and_alloc() to create a buffer with preallocated
data of a given size.
</para>
<para>
GstBuffers can also be created from a #GstBufferPool with
gst_buffer_new_from_pool(). The bufferpool can be obtained from a
peer element with gst_pad_get_bufferpool().
</para>
@ -49,8 +52,12 @@ and GST_BUFFER_FLAG_UNSET() macros. Use GST_BUFFER_FLAG_IS_SET() to test it
a certain flag is set.
</para>
<para>
Buffers can be efficiently merged into a larger buffer with gst_buffer_merge() and
gst_buffer_span() if the gst_buffer_is_span_fast() function returns TRUE.
</para>
<para>
Buffers usually are freed by unreffing them with gst_buffer_unref().
gst_buffer_destroy() can also be used to effectively destroy the buffer
gst_buffer_free() can also be used to effectively free the buffer
regardless of the refcount (dangerous).
</para>
@ -59,14 +66,6 @@ regardless of the refcount (dangerous).
#GstBufferPool, #GstPad, #GstData
</para>
<!-- ##### MACRO GST_IS_BUFFER ##### -->
<para>
Checks if the object is a buffer.
</para>
@buf: object to check
<!-- ##### MACRO GST_BUFFER ##### -->
<para>
Casts an object to a GstBuffer.
@ -75,6 +74,46 @@ Casts an object to a GstBuffer.
@buf: object to cast
<!-- ##### MACRO GST_IS_BUFFER ##### -->
<para>
Checks if the pointer is a GstBuffer
</para>
@buf: The buffer to query
<!-- ##### MACRO GST_BUFFER_REFCOUNT ##### -->
<para>
Get a handle to the refcount structure of the buffer
</para>
@buf: The buffer to query
<!-- ##### MACRO GST_BUFFER_REFCOUNT_VALUE ##### -->
<para>
Get the current refcount value of the buffer
</para>
@buf: The buffer to query
<!-- ##### MACRO GST_BUFFER_COPY_FUNC ##### -->
<para>
Calls the buffer-specific copy function on the given buffer.
</para>
@buf: a #GstBuffer to copy
<!-- ##### MACRO GST_BUFFER_FREE_FUNC ##### -->
<para>
Calls the buffer-specific free function on the given buffer.
</para>
@buf: a #GstBuffer to free
<!-- ##### MACRO GST_BUFFER_FLAGS ##### -->
<para>
Gets the flags from this buffer.
@ -126,14 +165,6 @@ Gets the size of the data in this buffer.
@buf: a #GstBuffer to get data size of
<!-- ##### MACRO GST_BUFFER_OFFSET ##### -->
<para>
Gets the offset in the source file of this buffer.
</para>
@buf: a #GstBuffer to get offset of
<!-- ##### MACRO GST_BUFFER_MAXSIZE ##### -->
<para>
Gets the maximum size of this buffer.
@ -150,6 +181,14 @@ Gets the timestamp for this buffer.
@buf: a #GstBuffer to get timestamp of
<!-- ##### MACRO GST_BUFFER_OFFSET ##### -->
<para>
Gets the offset in the source file of this buffer.
</para>
@buf: a #GstBuffer to get offset of
<!-- ##### MACRO GST_BUFFER_BUFFERPOOL ##### -->
<para>
Gets the bufferpool for this buffer.
@ -166,25 +205,31 @@ Gets the bufferpool private data.
@buf: a #GstBuffer to get bufferpool's private data of
<!-- ##### MACRO GST_BUFFER_COPY_FUNC ##### -->
<<<<<<< gstbuffer.sgml
<!-- ##### ENUM GstBufferFlag ##### -->
<para>
Calls the buffer-specific copy function on the given buffer.
This enumeration type describes the flags that can be used for a buffer.
</para>
@buf: a #GstBuffer to copy
<!-- ##### MACRO GST_BUFFER_FREE_FUNC ##### -->
<para>
Calls the buffer-specific free function on the given buffer.
</para>
@buf: a #GstBuffer to free
@GST_BUFFER_READONLY: buffer is read-only
@GST_BUFFER_SUBBUFFER: This buffer is a subbuffer, the parent buffer can be found with the
GST_BUFFER_POOL_PRIVATE() macro.
@GST_BUFFER_ORIGINAL: buffer is not a copy of another buffer
@GST_BUFFER_DONTFREE: do not try to free the data when this buffer is unreferenced
@GST_BUFFER_DISCONTINOUS: This buffer is the first one after a discontinuity in the stream
@GST_BUFFER_KEY_UNIT: This buffer holds a key unit, a unit that can be decoded independently
of other buffers
@GST_BUFFER_PREROLL: This buffer should be decoded but not rendered, it is mainly used
to resynchronise the stream
@GST_BUFFER_FLAG_LAST: Additional flags can be added starting from this flag.
=======
<!-- ##### STRUCT GstBuffer ##### -->
<para>
The basic structure of a buffer
</para>
@data_type:
@ -204,6 +249,15 @@ Calls the buffer-specific free function on the given buffer.
@Returns:
<!-- ##### FUNCTION gst_buffer_new_and_alloc ##### -->
<para>
</para>
@size:
@Returns:
<!-- ##### FUNCTION gst_buffer_new_from_pool ##### -->
<para>
@ -213,11 +267,17 @@ Calls the buffer-specific free function on the given buffer.
@offset:
@size:
@Returns:
<!-- # Unused Parameters # -->
@location:
<!-- ##### MACRO gst_buffer_copy ##### -->
<!-- ##### FUNCTION gst_buffer_default_free ##### -->
<para>
</para>
@buffer:
<!-- ##### FUNCTION gst_buffer_default_copy ##### -->
<para>
</para>
@ -226,6 +286,59 @@ Calls the buffer-specific free function on the given buffer.
@Returns:
<!-- ##### MACRO gst_buffer_ref ##### -->
<para>
Increase the refcount of the given buffer
</para>
@buf: The buffer to refcount
<!-- ##### MACRO gst_buffer_ref_by_count ##### -->
<para>
Increase the refcount of the buffer with the given value.
</para>
@buf: The buffer to refcount
@c: The value to add to the refcount.
<!-- ##### MACRO gst_buffer_unref ##### -->
<para>
Decrease the refcount of the buffer. If the refcount reaches 0, the buffer
will be freed.
</para>
@buf: The buffer to unref
<!-- ##### MACRO gst_buffer_copy ##### -->
<para>
Copy the given buffer using the copy function of the parent GstData structure.
</para>
@buffer: The buffer to copy
@Returns: A new copy of the buffer
<!-- ##### MACRO gst_buffer_copy_on_write ##### -->
<para>
Copy the buffer if the refcount > 1 so that the newly created buffer can be safely
written to. If the refcount is 1, this function just returns the original buffer.
</para>
@buffer: The buffer to copy.
<!-- ##### MACRO gst_buffer_free ##### -->
<para>
Free the given buffer. It is dangerous to use this function, use gst_buffer_unref()
instead.
</para>
@buffer: The buffer to free.
<!-- ##### FUNCTION gst_buffer_create_sub ##### -->
<para>
@ -237,39 +350,7 @@ Calls the buffer-specific free function on the given buffer.
@Returns:
<!-- ##### MACRO gst_buffer_ref ##### -->
<para>
</para>
@buf:
<!-- # Unused Parameters # -->
@buffer:
<!-- ##### MACRO gst_buffer_ref_by_count ##### -->
<para>
</para>
@buf:
@c:
<!-- # Unused Parameters # -->
@buffer:
@count:
<!-- ##### MACRO gst_buffer_unref ##### -->
<para>
</para>
@buf:
<!-- # Unused Parameters # -->
@buffer:
<!-- ##### FUNCTION gst_buffer_is_span_fast ##### -->
<!-- ##### FUNCTION gst_buffer_merge ##### -->
<para>
</para>
@ -279,7 +360,7 @@ Calls the buffer-specific free function on the given buffer.
@Returns:
<!-- ##### FUNCTION gst_buffer_merge ##### -->
<!-- ##### FUNCTION gst_buffer_is_span_fast ##### -->
<para>
</para>

View file

@ -6,9 +6,9 @@ Create buffers from a pool
<!-- ##### SECTION Long_Description ##### -->
<para>
A bufferpool is used to create buffers in an efficient way. En element
can maintain a bufferpool with a fixed number of buffers. This will reduce
the g_malloc and g_free overhead.
A bufferpool is used to create buffers in an efficient way. An element
can, for example, maintain a bufferpool with a fixed number of buffers.
This will reduce the g_malloc and g_free overhead.
</para>
<para>
A bufferpool can also be used to implement direct access. A bufferpool can be
@ -17,21 +17,19 @@ the memory of the element that maintains the bufferpool. This can greatly reduce
the number of memcpy operations.
</para>
<para>
A bufferpool is created with gst_buffer_pool_new(). You'll have to set the
buffer new and free function afterwards with gst_buffer_pool_set_buffer_new_function() and
gst_buffer_pool_set_buffer_free_function() so that all buffers created
from this pool will be allocated/freed with these functions.
</para>
<para>
Optionally the default buffer copy function of the buffers allocated from this pool
can be overridden with gst_buffer_pool_set_buffer_copy_function().
A bufferpool is created with gst_buffer_pool_new(). You'll have to provide a
free and copy function to handle the refcounting of the bufferpool as well as
functions to create, free and copy buffers created from this pool. All buffer
functions will receive the user_data you provide in the constructor.
When no free and copy function is provided for the pool, a default implementation
will be used.
</para>
<para>
To create a buffer from the bufferpool use gst_buffer_new_from_pool().
</para>
<para>
When the buffer is unreffed and has reached a refcount of 0, the bufferpools free
function is called with the buffer as an argument.
function is called with the pool, the buffer and the user_data as arguments.
</para>
<para>
A bufferpool can store private data in the buffer it creates with the GST_BUFFER_POOL_PRIVATE()
@ -39,13 +37,8 @@ macro. To check it a buffer was made by a specific bufferpool, use the GST_BUFFE
macro to get its bufferpool.
</para>
<para>
Destroy the bufferpool with gst_buffer_pool_destroy(), optional cleanup of the bufferpool can
be triggered in the GstBufferPoolDestroyHook which you can install with
gst_buffer_pool_set_destroy_hook().
</para>
<para>
The owner of the bufferpool can add user data to the pool with
gst_buffer_pool_set_user_data() and gst_buffer_pool_get_user_data().
All plugins should unref the bufferpool if it is no longer required. When the bufferpool
reaches a refcount of 0, the free function will be called.
</para>
<para>
If your plugin is going to need a lot of equally sized memory areas you can use
@ -57,6 +50,7 @@ quite efficient since it reduces the number of memory allocations.
<para>
A bufferpool can be requested from a pad with the gst_pad_get_bufferpool() function. This function
is typically used when a plugin wants to write into a memory area provided by another plugin.
Use gst_buffer_pool_unref() is you no longer require the bufferpool.
</para>
<!-- ##### SECTION See_Also ##### -->
@ -64,6 +58,22 @@ is typically used when a plugin wants to write into a memory area provided by an
#GstBuffer, #GstPad
</para>
<!-- ##### MACRO GST_BUFFER_POOL ##### -->
<para>
Cast a pointer to a GstBufferPool
</para>
@pool: The pointer to cast
<!-- ##### MACRO GST_IS_BUFFER_POOL ##### -->
<para>
Check if the given pointer is a bufferpool
</para>
@buf: The pointer to check
<!-- ##### STRUCT GstBufferPool ##### -->
<para>
@ -82,12 +92,34 @@ The function will be called when a buffer must be allocated from the pool.
</para>
@pool: The pool allocating the buffer
@offset:
@offset: An offset for the requested buffer, this can be a TIMESTAMP for example
so that the bufferpool owner can implement double buffering or return
a suitable position in a DMA buffer.
@size: The size of the allocated buffer
@user_data: user data as set on the bufferpool
@Returns: A new buffer with the given parameters.
<!-- # Unused Parameters # -->
@location: the location (offset) of the buffer to allocate
<!-- ##### USER_FUNCTION GstBufferPoolBufferCopyFunction ##### -->
<para>
The function that will be called when a buffer from the given pool is copied.
</para>
@pool: The pool that owns the buffer
@buffer: The buffer to copy
@user_data: any user data associated with the pool
@Returns: A new buffer that is a copy of the original
<!-- ##### USER_FUNCTION GstBufferPoolBufferFreeFunction ##### -->
<para>
The function that will be called when a buffer is to be freed into the
pool.
</para>
@pool: The pool that owns the buffer
@buffer: The buffer to free
@user_data: Any user data associated with the pool
<!-- ##### FUNCTION gst_buffer_pool_new ##### -->
@ -97,44 +129,97 @@ The function will be called when a buffer must be allocated from the pool.
@free:
@copy:
@buffer_create:
@buffer_new:
@buffer_copy:
@buffer_free:
@user_data:
@Returns:
<!-- ##### MACRO gst_buffer_pool_ref ##### -->
<!-- ##### FUNCTION gst_buffer_pool_is_active ##### -->
<para>
</para>
@buf:
<!-- # Unused Parameters # -->
@pool:
@Returns:
<!-- ##### FUNCTION gst_buffer_pool_set_active ##### -->
<para>
</para>
@pool:
@active:
<!-- ##### MACRO gst_buffer_pool_ref ##### -->
<para>
Increase the refcount of the given pool
</para>
@pool: The pool to refcount
<!-- ##### MACRO gst_buffer_pool_ref_by_count ##### -->
<para>
Increase the refcount of the given pool by c
</para>
@buf:
@c:
<!-- # Unused Parameters # -->
@pool:
@count:
@pool: The pool to refcount
@c: The value to add to the refcount
<!-- ##### MACRO gst_buffer_pool_unref ##### -->
<para>
Decrease the refcount of the given pool. If the refcount reaches
0, the free function of the pool will be called.
</para>
@buf:
<!-- # Unused Parameters # -->
@pool:
@buffer:
@pool: The pool to unref.
<!-- ##### MACRO gst_buffer_pool_copy ##### -->
<para>
Copy the pool
</para>
@pool: The pool to copy.
<!-- ##### MACRO gst_buffer_pool_copy_on_write ##### -->
<para>
Copy the pool if the refcount > 1
</para>
@pool: A copy of the pool or the pool itself if the refcount is 1
<!-- ##### MACRO gst_buffer_pool_free ##### -->
<para>
Free the given pool. This is dangerous, use gst_buffer_pool_unref() instead.
</para>
@pool: The pool to free
<!-- ##### FUNCTION gst_buffer_pool_set_user_data ##### -->
<para>
Set the specified user data to the bufferpool.
</para>
@pool: The pool to set the user_data of
@user_data: The user data to set on the pool
<!-- ##### FUNCTION gst_buffer_pool_get_user_data ##### -->
<para>
Get the user_data of the pool
</para>
@pool: The pool to get the user data of
@Returns: The user data of the pool
<!-- ##### FUNCTION gst_buffer_pool_get_default ##### -->
@ -145,29 +230,5 @@ The function will be called when a buffer must be allocated from the pool.
@size:
@numbuffers:
@Returns:
<!-- # Unused Parameters # -->
@buffer_size:
@pool_size:
@oldpool:
<!-- ##### FUNCTION gst_buffer_pool_set_user_data ##### -->
<para>
</para>
@pool:
@user_data:
<!-- ##### FUNCTION gst_buffer_pool_get_user_data ##### -->
<para>
</para>
@pool:
@Returns:
<!-- # Unused Parameters # -->
@user_data:

View file

@ -2,27 +2,245 @@
GstData
<!-- ##### SECTION Short_Description ##### -->
Common structure for GstBuffer and GstEvent
Common structure for GstBuffer, GstBufferPool, and GstEvent
<!-- ##### SECTION Long_Description ##### -->
<para>
This structure provides a common base for #GstBuffer and #GstEvent. It is the
main data type that is passed along in a pipeline.
This abstract structure provides a common base for #GstBuffer, #GstBufferPool
and #GstEvent. It is the main data type that is passed along in a pipeline.
GstData provides refcounting, freeing and copying for its child classes.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
#GstBuffer, #GstEvent
#GstBuffer, #GstBufferPool, #GstEvent
</para>
<!-- ##### MACRO GST_DATA ##### -->
<para>
Cast a pointer to a GstData
</para>
@data: The pointer to cast
<!-- ##### MACRO GST_DATA_TYPE ##### -->
<para>
Get the type of the GstData
</para>
@data: The data to get the type of
<!-- ##### MACRO GST_DATA_FLAGS ##### -->
<para>
Get the flags of this GstData
</para>
@data: The data to get the flags of
<!-- ##### MACRO GST_DATA_FLAG_SHIFT ##### -->
<para>
Shift a given flag so that it can be used in an or operation
</para>
@flag: The flag to shift
<!-- ##### MACRO GST_DATA_FLAG_IS_SET ##### -->
<para>
Check if a given flag is set on the data
</para>
@data: The data to check
@flag: The flag to check for
<!-- ##### MACRO GST_DATA_FLAG_SET ##### -->
<para>
Set the flag on the data
</para>
@data: The data to set the flag on
@flag: The flag to set
<!-- ##### MACRO GST_DATA_FLAG_UNSET ##### -->
<para>
Unset the given flag
</para>
@data: The data to unset the flag of
@flag: The flag to unset
<!-- ##### STRUCT GstData ##### -->
<para>
The base structure
</para>
@type: The type of this data.
@refcount:
@refcount: A refcount
@flags: The flags of this GstData
@free: A pointer to a custom free function
@copy: A pointer to a custom copy function
<!-- ##### USER_FUNCTION GstDataFreeFunction ##### -->
<para>
The signature of the free function. Subclasses should provide a free function
with this signature and pass it in the gst_data_init() function.
</para>
@data: The GstData to free
<!-- ##### USER_FUNCTION GstDataCopyFunction ##### -->
<para>
The signature of the copy function. Subclasses should provide a copy function
with this signature and pass it in the gst_data_init() function.
</para>
@data: The GstData to copy
@Returns: A new GstData that is a copy of data
<!-- ##### ENUM GstDataFlags ##### -->
<para>
Various flags that can be set on a GstData
</para>
@GST_DATA_READONLY: The data is readonly
@GST_DATA_FLAG_LAST: Subclasses can add additional flags starting from this offset
<!-- ##### MACRO GST_DATA_IS_READONLY ##### -->
<para>
Query if the GstData is READONLY
</para>
@data: The data to query
<!-- ##### MACRO GST_DATA_REFCOUNT ##### -->
<para>
Get access to the refcount field of the GstData
</para>
@data: The GstData to get the refcount field of
<!-- ##### MACRO GST_DATA_REFCOUNT_VALUE ##### -->
<para>
Get the current refcount value
</para>
@data: The GstData to query
<!-- ##### MACRO GST_DATA_REFCOUNT_READ ##### -->
<para>
Read the current refcount value into the specified value
</para>
@data: The GstData to get the refcount value of
@value: A pointer to a gint to hold the refcount value
<!-- ##### MACRO GST_DATA_COPY_FUNC ##### -->
<para>
Get access to the copy function of the data
</para>
@data: The data to query
<!-- ##### MACRO GST_DATA_FREE_FUNC ##### -->
<para>
Get access to the free function of the data
</para>
@data: The data to query
<!-- ##### FUNCTION gst_data_init ##### -->
<para>
</para>
@data:
@type:
@flags:
@free:
@copy:
<!-- ##### FUNCTION gst_data_dispose ##### -->
<para>
</para>
@data:
<!-- ##### FUNCTION gst_data_copy_into ##### -->
<para>
</para>
@data:
@target:
<!-- ##### FUNCTION gst_data_copy ##### -->
<para>
</para>
@data:
@Returns:
<!-- ##### FUNCTION gst_data_copy_on_write ##### -->
<para>
</para>
@data:
@Returns:
<!-- ##### FUNCTION gst_data_free ##### -->
<para>
</para>
@data:
<!-- ##### FUNCTION gst_data_ref ##### -->
<para>
</para>
@data:
@Returns:
<!-- ##### FUNCTION gst_data_ref_by_count ##### -->
<para>
</para>
@data:
@count:
@Returns:
<!-- ##### FUNCTION gst_data_unref ##### -->
<para>
</para>
@data:

View file

@ -49,9 +49,7 @@ Each element has a state (see #GstElementState). You can get and set the state
of an element with gst_element_get_state() and gst_element_set_state().
You can wait for an element to change it's state with gst_element_wait_state_change().
To get a string representation of a #GstElementState, use
gst_element_statename(), which is a really bad name for what it does
and should probably be renamed
to gst_element_state_get_name if we can be bothered to do that.
gst_element_state_get_name().
</para>
<para>
@ -558,18 +556,20 @@ circumstances.
<!-- ##### USER_FUNCTION GstElementPostRunFunction ##### -->
<para>
The signature of the function to execute before this element
is scheduled.
</para>
@element:
@element: The element
<!-- ##### USER_FUNCTION GstElementPreRunFunction ##### -->
<para>
The signature of the function to execute after this element
is scheduled.
</para>
@element:
@element: The element
<!-- ##### FUNCTION gst_element_disable_threadsafe_properties ##### -->

View file

@ -24,7 +24,7 @@ to create element instances or use gst_element_factory_make() as a convenient
shortcut.
</para>
<para>
The following code example shows you how to create a GstDiskSrc element.
The following code example shows you how to create a GstFileSrc element.
</para>
<para>
@ -147,28 +147,29 @@ describes the element, mostly for the benefit of editors.
<!-- ##### MACRO GST_ELEMENT_RANK_MARGINAL ##### -->
<para>
The element is only marginally usefull for autoplugging
</para>
<!-- ##### MACRO GST_ELEMENT_RANK_NONE ##### -->
<para>
The plugin may not be used in autoplugging
</para>
<!-- ##### MACRO GST_ELEMENT_RANK_PRIMARY ##### -->
<para>
The plugin is well suited for autoplugging
</para>
<!-- ##### MACRO GST_ELEMENT_RANK_SECONDARY ##### -->
<para>
The plugin is suited for autoplugging but only as a second
candidate.
</para>

View file

@ -40,8 +40,11 @@ The different major types of events.
@GST_EVENT_NEW_MEDIA: a new media stream is started
@GST_EVENT_QOS: a quality of service event
@GST_EVENT_SEEK: a seek event.
@GST_EVENT_SEEK_SEGMENT: a segment seek with start and stop position
@GST_EVENT_SEGMENT_DONE: the event that will be emited when the segment seek has ended
@GST_EVENT_SIZE: a size suggestion for a peer element
@GST_EVENT_RATE: adjust the output rate of an element
@GST_EVENT_FILLER: a dummy element that should be ignored by plugins
@GST_EVENT_SIZE:
<!-- ##### MACRO GST_EVENT_TYPE ##### -->
<para>
@ -78,6 +81,7 @@ The different types of seek events.
@GST_SEEK_FLAG_FLUSH: Flush any pending data while seeking
@GST_SEEK_FLAG_ACCURATE: Seek as accuratly as possible
@GST_SEEK_FLAG_KEY_UNIT: Seek to a nearby key unit
@GST_SEEK_FLAG_SEGMENT_LOOP: Loop between start and stop in a segmented seek
<!-- ##### ENUM GstSeekAccuracy ##### -->
<para>
@ -85,8 +89,8 @@ The seekaccuracy gives more information of how the seek was performed,
if the seek was accurate or fuzzy.
</para>
@GST_SEEK_CERTAIN:
@GST_SEEK_FUZZY:
@GST_SEEK_CERTAIN: The seek was exact
@GST_SEEK_FUZZY: The seek was fuzzy, exact position can not be guaranteed
<!-- ##### MACRO GST_EVENT_SEEK_TYPE ##### -->
<para>
@ -138,42 +142,42 @@ Indicates how accurate the event was performed.
<!-- ##### MACRO GST_SEEK_FLAGS_MASK ##### -->
<para>
Mask for the flags in the GstSeekType
</para>
<!-- ##### MACRO GST_SEEK_FLAGS_SHIFT ##### -->
<para>
Shift for the flags in the GstSeekType
</para>
<!-- ##### MACRO GST_SEEK_FORMAT_MASK ##### -->
<para>
Mask for the format in the GstSeekType
</para>
<!-- ##### MACRO GST_SEEK_FORMAT_SHIFT ##### -->
<para>
Shift for the format in the GstSeekType
</para>
<!-- ##### MACRO GST_SEEK_METHOD_MASK ##### -->
<para>
Mask for the method in the GstSeekType
</para>
<!-- ##### MACRO GST_SEEK_METHOD_SHIFT ##### -->
<para>
Shift for the method in the GstSeekType
</para>
@ -205,6 +209,38 @@ Get the number of offset/value pairs this event has.
@event: The event to query.
<!-- ##### MACRO GST_EVENT_RATE_VALUE ##### -->
<para>
Get access to the rate vale field
</para>
@event: The event to query
<!-- ##### MACRO GST_EVENT_SEEK_ENDOFFSET ##### -->
<para>
The event stop position for a segment seek
</para>
@event: The event to query
<!-- ##### MACRO GST_EVENT_SIZE_FORMAT ##### -->
<para>
The format of the size event.
</para>
@event: The event to query
<!-- ##### MACRO GST_EVENT_SIZE_VALUE ##### -->
<para>
The value of the size event
</para>
@event: The event to query
<!-- ##### STRUCT GstEvent ##### -->
<para>
The event data structure.
@ -226,13 +262,36 @@ The event data structure.
<!-- ##### MACRO gst_event_copy ##### -->
<para>
Copy the event using the event specific copy function
</para>
@ev:
@Returns:
<!-- # Unused Parameters # -->
@event:
@ev: The event to copy
@Returns: A new event that is a copy of the given input event
<!-- ##### MACRO gst_event_ref ##### -->
<para>
Increase the refcount of this event
</para>
@ev: The event to refcount
<!-- ##### MACRO gst_event_ref_by_count ##### -->
<para>
Increase the refcount of the event with the given value
</para>
@ev: The event to refcount
@c: The value to add to the refcount
<!-- ##### MACRO gst_event_unref ##### -->
<para>
Decrease the refcount of an event, freeing it if the refcount reaches 0
</para>
@ev: The event to unref
<!-- ##### FUNCTION gst_event_new_seek ##### -->
@ -245,6 +304,27 @@ The event data structure.
@Returns:
<!-- ##### FUNCTION gst_event_new_segment_seek ##### -->
<para>
</para>
@type:
@start:
@stop:
@Returns:
<!-- ##### FUNCTION gst_event_new_size ##### -->
<para>
</para>
@format:
@value:
@Returns:
<!-- ##### FUNCTION gst_event_new_discontinuous ##### -->
<para>
@ -281,3 +361,10 @@ Create a new flush event.
<!-- ##### FUNCTION gst_event_print_stats ##### -->
<para>
</para>

View file

@ -8,8 +8,7 @@ Basis for the GST object hierarchy.
<para>
GstObject provides a root for the object hierarchy tree filed in by the
GST library. It is currently a thin wrapper on top of
<classname>GObject</classname> but it can be compiled against GTK+ with
a shim provided by the GStreamer library. It is an abstract class that is not
<classname>GObject</classname>. It is an abstract class that is not
very usable on its own.
</para>
@ -31,9 +30,9 @@ object.
</para>
@GST_DESTROYED:
@GST_FLOATING:
@GST_OBJECT_FLAG_LAST:
@GST_DESTROYED: The object is flagged for destruction
@GST_FLOATING: The object is created but has no parent yet to manage it
@GST_OBJECT_FLAG_LAST: subclasses can add additional flags starting from this flag
<!-- ##### STRUCT GstObject ##### -->
<para>
@ -300,6 +299,6 @@ this signal to insert custom XML tags into the core XML.
<!-- ##### ARG GstObject:name ##### -->
<para>
The name of the object
</para>

View file

@ -232,6 +232,17 @@ The signature of a convert function.
@Returns: TRUE if the conversion could be performed.
<!-- ##### USER_FUNCTION GstPadDispatcherFunction ##### -->
<para>
The dispatcher function is called for all internally connected pads, see
gst_pad_dispatcher().
</para>
@pad: The pad that is dispatched
@data: User data
@Returns: TRUE if the dispatching procedure has to be stopped.
<!-- ##### USER_FUNCTION GstPadIntConnFunction ##### -->
<para>
The signature of the internal pad connection function
@ -250,7 +261,9 @@ The different supported query types
@GST_PAD_QUERY_TOTAL: Query the total stream time
@GST_PAD_QUERY_POSITION: Query the current stream position
@GST_PAD_QUERY_LATENCY: Query the latency on the pad
@GST_PAD_QUERY_JITTER:
@GST_PAD_QUERY_JITTER: Query the average jitter beteen optimal processing and current
processing.
@GST_PAD_QUERY_SEGMENT_END: Query the end position of the currently executing segment
<!-- ##### USER_FUNCTION GstPadQueryFunction ##### -->
<para>

View file

@ -56,17 +56,17 @@ can be made with <option>{}</option>.
<!-- ##### MACRO GST_PARSE_ERROR ##### -->
<para>
The error querk
</para>
<!-- ##### FUNCTION gst_parse_error_quark ##### -->
<para>
Get the error quark passed in the GError messages.
</para>
@Returns:
@Returns: The parse error quark
<!-- ##### FUNCTION gst_parse_launch ##### -->

View file

@ -36,17 +36,17 @@ to bring the plugin into memory.
<!-- ##### MACRO GST_PLUGIN_ERROR ##### -->
<para>
The error quark
</para>
<!-- ##### FUNCTION gst_plugin_error_quark ##### -->
<para>
Get the error quark
</para>
@Returns:
@Returns: The error quark used in GError messages
<!-- ##### ENUM GstPluginError ##### -->

View file

@ -14,7 +14,7 @@ The queue is typically used in conjunction with a thread.
You can query how many buffers are queued with the level argument.
</para>
<para>
The default queue length is set to 10.
The default queue length is set to 100.
</para>
<para>
The queue blocks by default.

View file

@ -467,7 +467,8 @@ GstIdentity
<!-- ##### SECTION ./tmpl/gstmd5sink.sgml:Long_Description ##### -->
<para>
MD5 Sink can be used to automate regression tests on media pipelines by
computing a hash on the resulting buffers.
</para>
@ -478,7 +479,7 @@ GstIdentity
<!-- ##### SECTION ./tmpl/gstmd5sink.sgml:Short_Description ##### -->
Compute a hash on buffer data.
<!-- ##### SECTION ./tmpl/gstmd5sink.sgml:Title ##### -->
@ -649,7 +650,7 @@ The queue is typically used in conjunction with a thread.
You can query how many buffers are queued with the level argument.
</para>
<para>
The default queue length is set to 10.
The default queue length is set to 100.
</para>
<para>
The queue blocks by default.
@ -1051,13 +1052,6 @@ Gets the parent of this buffer. The parent is set on sub-buffers.
@buf: a #GstBuffer to get parent of
<!-- ##### MACRO GST_BUFFER_POOL ##### -->
<para>
</para>
@buf:
<!-- ##### MACRO GST_BUFFER_POOL_LOCK ##### -->
<para>
Unlock the given bufferpool.
@ -1142,20 +1136,6 @@ A flag indicating that SSE instructions are supported.
</para>
<!-- ##### MACRO GST_DATA ##### -->
<para>
</para>
@data:
<!-- ##### MACRO GST_DATA_TYPE ##### -->
<para>
</para>
@data:
<!-- ##### MACRO GST_DEBUG_CHAR_MODE ##### -->
<para>
@ -3014,6 +2994,9 @@ The frequency.
</para>
<<<<<<< gstreamer-unused.sgml
<!-- ##### USER_FUNCTION GstBufferCopyFunc ##### -->
<para>
This supplied function is used to copy the buffer contents.
@ -3022,20 +3005,6 @@ This supplied function is used to copy the buffer contents.
@srcbuf: a #GstBuffer to copy from
@Returns: a newly allocated #GstBuffer copy of srcbuf
<!-- ##### ENUM GstBufferFlag ##### -->
<para>
This enumeration type describes the flags that can be used for a buffer.
</para>
@GST_BUFFER_READONLY: buffer is read-only
@GST_BUFFER_ORIGINAL: buffer is not a copy of another buffer
@GST_BUFFER_DONTFREE: do not try to free the data when this buffer is unreferenced
@GST_BUFFER_DISCONTINOUS: This buffer is the first one after a discontinuity in the stream
@GST_BUFFER_KEY_UNIT: This buffer holds a key unit, a unit that can be decoded independently
of other buffers
@GST_BUFFER_PREROLL: This buffer should be decoded but not rendered, it is mainly used
to resynchronise the stream
<!-- ##### USER_FUNCTION GstBufferFreeFunc ##### -->
<para>
This supplied function is called when the buffer data has to be freed.
@ -3043,6 +3012,8 @@ This supplied function is called when the buffer data has to be freed.
@buf: a #GstBuffer to clear the buffer data of
>>>>>>> 1.63
<!-- ##### USER_FUNCTION GstBufferPoolCreateFunction ##### -->
<para>
The function called when a buffer has to be created for this pool.
@ -5553,6 +5524,21 @@ must be defined to activate the tracing functionality.
@connection:
<!-- ##### FUNCTION gst_data_default_copy ##### -->
<para>
</para>
@data:
@Returns:
<!-- ##### FUNCTION gst_data_default_free ##### -->
<para>
</para>
@data:
<!-- ##### FUNCTION gst_debug_print_stack_trace ##### -->
<para>

View file

@ -35,6 +35,20 @@ The registry holds the available plugins in the system.
@GST_REGISTRY_REMOTE:
@GST_REGISTRY_DELAYED_LOADING:
<!-- ##### STRUCT GstRegistry ##### -->
<para>
</para>
@object:
@priority:
@flags:
@name:
@details:
@loaded:
@plugins:
@paths:
<!-- ##### FUNCTION gst_registry_load ##### -->
<para>

View file

@ -64,6 +64,17 @@ Destroy the scheduler
@sched:
<!-- ##### FUNCTION gst_scheduler_get_preferred_stack ##### -->
<para>
</para>
@sched:
@stack:
@size:
@Returns:
<!-- ##### FUNCTION gst_scheduler_reset ##### -->
<para>