glimagesinkelement
A videosink based on OpenGL
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstBaseSink ╰──GstVideoSink ╰──glimagesinkelement
Factory details
Authors: – Julien Isorce
Classification: – Sink/Video
Rank – none
Plugin – gstopengl
Package – GStreamer Base Plug-ins
Pad Templates
sink
video/x-raw(memory:GLMemory):
format: RGBA
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
texture-target: { (string)2D, (string)external-oes }
video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition):
format: RGBA
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
texture-target: { (string)2D, (string)external-oes }
Signals
client-draw
gboolean client_draw_callback (GstElement * object, GstGLContext * context, GstSample * sample, gpointer udata)
def client_draw_callback (object, context, sample, udata):
#python callback for the 'client-draw' signal
function client_draw_callback(object: GstElement * object, context: GstGLContext * context, sample: GstSample * sample, udata: gpointer udata): {
// javascript callback for the 'client-draw' signal
}
Will be emitted before actually drawing the texture. The client should redraw the surface/contents of sample and return TRUE.
Parameters:
object
–
context
–
the GstGLContext
sample
–
the GstSample
udata
–
whether the texture was redrawn by the signal. If not, a default redraw will occur.
Flags: Run Last
client-reshape
gboolean client_reshape_callback (GstElement * object, GstGLContext * context, guint width, guint height, gpointer udata)
def client_reshape_callback (object, context, width, height, udata):
#python callback for the 'client-reshape' signal
function client_reshape_callback(object: GstElement * object, context: GstGLContext * context, width: guint width, height: guint height, udata: gpointer udata): {
// javascript callback for the 'client-reshape' signal
}
The client should resize the surface/window/viewport with the width and height and return TRUE.
Parameters:
object
–
context
–
the GstGLContext
width
–
the guint width of the texture.
height
–
the guint height of the texture.
udata
–
whether the content area was resized by the signal. If not, a default viewport resize will occur.
Flags: Run Last
Properties
blocksize
“blocksize” guint
Size in bytes to pull per buffer (0 = default)
Flags : Read / Write
Default value : 4096
enable-last-sample
“enable-last-sample” gboolean
Enable the last-sample property
Flags : Read / Write
Default value : true
force-aspect-ratio
“force-aspect-ratio” gboolean
When enabled, scaling will respect original aspect ratio
Flags : Read / Write
Default value : true
handle-events
“handle-events” gboolean
When enabled, XEvents will be selected and handled
Flags : Read / Write
Default value : true
ignore-alpha
“ignore-alpha” gboolean
When enabled, alpha will be ignored and converted to black
Flags : Read / Write
Default value : true
max-bitrate
“max-bitrate” guint64
The maximum bits per second to render (0 = disabled)
Flags : Read / Write
Default value : 0
max-lateness
“max-lateness” gint64
Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)
Flags : Read / Write
Default value : 5000000
output-multiview-downmix-mode
“output-multiview-downmix-mode” GstGLStereoDownmix *
Output anaglyph type to generate when downmixing to mono
Flags : Read / Write
Default value : green-magenta-dubois (0)
output-multiview-flags
“output-multiview-flags” GstVideoMultiviewFlags *
Output multiview layout modifier flags
Flags : Read / Write
Default value : none
output-multiview-mode
“output-multiview-mode” GstVideoMultiviewMode *
Choose output mode for multiview/3D video
Flags : Read / Write
Default value : mono (0)
pixel-aspect-ratio
“pixel-aspect-ratio” GstFraction *
The pixel aspect ratio of the device
Flags : Read / Write
Default value : 0/1
processing-deadline
“processing-deadline” guint64
Maximum processing time for a buffer in nanoseconds
Flags : Read / Write
Default value : 15000000
qos
“qos” gboolean
Generate Quality-of-Service events upstream
Flags : Read / Write
Default value : true
render-delay
“render-delay” guint64
Additional render delay of the sink in nanoseconds
Flags : Read / Write
Default value : 0
render-rectangle
“render-rectangle” GstValueArray *
The render rectangle ('<x, y, width, height>')
Flags : Read / Write
rotate-method
“rotate-method” GstGLRotateMethod *
rotate method
Flags : Read / Write
Default value : none (0)
show-preroll-frame
“show-preroll-frame” gboolean
Whether to render video frames during preroll
Flags : Read / Write / Construct
Default value : true
stats
“stats” GstStructure *
Sink Statistics
Flags : Read
Default value :
application/x-gst-base-sink-stats, average-rate=(double)0, dropped=(guint64)0, rendered=(guint64)0;
throttle-time
“throttle-time” guint64
The time to keep between rendered buffers (0 = disabled)
Flags : Read / Write
Default value : 0
Named constants
GstGLRotateMethod
Members
none
(0) – Identity (no rotation)
clockwise
(1) – Rotate clockwise 90 degrees
rotate-180
(2) – Rotate 180 degrees
counterclockwise
(3) – Rotate counter-clockwise 90 degrees
horizontal-flip
(4) – Flip horizontally
vertical-flip
(5) – Flip vertically
upper-left-diagonal
(6) – Flip across upper left/lower right diagonal
upper-right-diagonal
(7) – Flip across upper right/lower left diagonal
automatic
(8) – Select rotate method based on image-orientation tag
The results of the search are