Top |
Properties
guint | current-level-buffers | Read |
guint | current-level-bytes | Read |
guint64 | current-level-time | Read |
gint | high-percent | Read / Write |
gint | low-percent | Read / Write |
guint | max-size-buffers | Read / Write |
guint | max-size-bytes | Read / Write |
guint64 | max-size-time | Read / Write |
guint64 | ring-buffer-max-size | Read / Write |
gchar * | temp-location | Read |
gboolean | temp-remove | Read / Write |
gchar * | temp-template | Read / Write |
gboolean | use-buffering | Read / Write |
gboolean | use-rate-estimate | Read / Write |
gint64 | avg-in-rate | Read |
gboolean | use-tags-bitrate | Read / Write |
gdouble | high-watermark | Read / Write |
gdouble | low-watermark | Read / Write |
Description
Data is queued until one of the limits specified by the “max-size-buffers”, “max-size-bytes” and/or “max-size-time” properties has been reached. Any attempt to push more buffers into the queue will block the pushing thread until more space becomes available.
The queue will create a new thread on the source pad to decouple the processing on sink and source pad.
You can query how many buffers are queued by reading the “current-level-buffers” property.
The default queue size limits are 100 buffers, 2MB of data, or two seconds worth of data, whichever is reached first.
If you set temp-template to a value such as /tmp/gstreamer-XXXXXX, the element will allocate a random free filename and buffer data in the file. By using this, it will buffer the entire stream data on the file independently of the queue size limits, they will only be used for buffering statistics.
The temp-location property will be used to notify the application of the allocated filename.
Synopsis
Element Information
plugin |
coreelements |
author |
Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim.taymans@gmail.com> |
class |
Generic |
Property Details
The “current-level-buffers”
property
“current-level-buffers” guint
Current number of buffers in the queue.
Flags: Read
Default value: 0
The “current-level-bytes”
property
“current-level-bytes” guint
Current amount of data in the queue (bytes).
Flags: Read
Default value: 0
The “current-level-time”
property
“current-level-time” guint64
Current amount of data in the queue (in ns).
Flags: Read
Default value: 0
The “high-percent”
property
“high-percent” gint
High threshold for buffering to finish. Only used if use-buffering is True (Deprecated: use high-watermark instead).
Flags: Read / Write
Allowed values: [0,100]
Default value: 99
The “low-percent”
property
“low-percent” gint
Low threshold for buffering to start. Only used if use-buffering is True (Deprecated: use low-watermark instead).
Flags: Read / Write
Allowed values: [0,100]
Default value: 1
The “max-size-buffers”
property
“max-size-buffers” guint
Max. number of buffers in the queue (0=disable).
Flags: Read / Write
Default value: 100
The “max-size-bytes”
property
“max-size-bytes” guint
Max. amount of data in the queue (bytes, 0=disable).
Flags: Read / Write
Default value: 2097152
The “max-size-time”
property
“max-size-time” guint64
Max. amount of data in the queue (in ns, 0=disable).
Flags: Read / Write
Default value: 2000000000
The “ring-buffer-max-size”
property
“ring-buffer-max-size” guint64
The maximum size of the ring buffer in bytes. If set to 0, the ring buffer is disabled. Default 0.
Flags: Read / Write
Default value: 0
The “temp-location”
property
“temp-location” gchar *
Location to store temporary files in (Only read this property, use temp-template to configure the name template).
Flags: Read
Default value: NULL
The “temp-remove”
property
“temp-remove” gboolean
When temp-template is set, remove the temporary file when going to READY.
Flags: Read / Write
Default value: TRUE
The “temp-template”
property
“temp-template” gchar *
File template to store temporary files in, should contain directory and XXXXXX. (NULL == disabled).
Flags: Read / Write
Default value: NULL
The “use-buffering”
property
“use-buffering” gboolean
Emit GST_MESSAGE_BUFFERING based on low-/high-percent thresholds.
Flags: Read / Write
Default value: FALSE
The “use-rate-estimate”
property
“use-rate-estimate” gboolean
Estimate the bitrate of the stream to calculate time level.
Flags: Read / Write
Default value: TRUE
The “avg-in-rate”
property
“avg-in-rate” gint64
The average input data rate.
Flags: Read
Allowed values: >= 0
Default value: 0
The “use-tags-bitrate”
property
“use-tags-bitrate” gboolean
Use a bitrate from upstream tags to estimate buffer duration if not provided.
Flags: Read / Write
Default value: FALSE
The “high-watermark”
property
“high-watermark” gdouble
High threshold for buffering to finish. Only used if use-buffering is True.
Flags: Read / Write
Allowed values: [0,1]
Default value: 0.99
The “low-watermark”
property
“low-watermark” gdouble
Low threshold for buffering to start. Only used if use-buffering is True.
Flags: Read / Write
Allowed values: [0,1]
Default value: 0.01