|
Packit |
971217 |
|
|
Packit |
971217 |
<html>
|
|
Packit |
971217 |
<head>
|
|
Packit |
971217 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
Packit |
971217 |
<title>glimagesink: GStreamer Base Plugins 1.0 Plugins Reference Manual</title>
|
|
Packit |
971217 |
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
|
|
Packit |
971217 |
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual">
|
|
Packit |
971217 |
<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
|
|
Packit |
971217 |
<link rel="prev" href="gst-plugins-base-plugins-glimagesinkelement.html" title="glimagesinkelement">
|
|
Packit |
971217 |
<link rel="next" href="gst-plugins-base-plugins-gloverlay.html" title="gloverlay">
|
|
Packit |
971217 |
<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
|
|
Packit |
971217 |
<link rel="stylesheet" href="style.css" type="text/css">
|
|
Packit |
971217 |
</head>
|
|
Packit |
971217 |
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Top |
|
|
Packit |
971217 |
Description
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
glimagesink
|
|
Packit |
971217 |
glimagesink
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Description
|
|
Packit |
971217 |
glimagesink renders video frames to a drawable on a local or remote
|
|
Packit |
971217 |
display using OpenGL. This element can receive a Window ID from the
|
|
Packit |
971217 |
application through the VideoOverlay interface and will then render video
|
|
Packit |
971217 |
frames in this drawable.
|
|
Packit |
971217 |
If no Window ID was provided by the application, the element will
|
|
Packit |
971217 |
create its own internal window and render into it.
|
|
Packit |
971217 |
See the GstGLDisplay documentation for a list of environment variables that
|
|
Packit |
971217 |
can override window/platform detection.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Scaling
|
|
Packit |
971217 |
Depends on the driver, OpenGL handles hardware accelerated
|
|
Packit |
971217 |
scaling of video frames. This means that the element will just accept
|
|
Packit |
971217 |
incoming video frames no matter their geometry and will then put them to the
|
|
Packit |
971217 |
drawable scaling them on the fly. Using the “force-aspect-ratio”
|
|
Packit |
971217 |
property it is possible to enforce scaling with a constant aspect ratio,
|
|
Packit |
971217 |
which means drawing black borders around the video frame.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Events
|
|
Packit |
971217 |
Through the gl thread, glimagesink handle some events coming from the drawable
|
|
Packit |
971217 |
to manage its appearance even when the data is not flowing (GST_STATE_PAUSED).
|
|
Packit |
971217 |
That means that even when the element is paused, it will receive expose events
|
|
Packit |
971217 |
from the drawable and draw the latest frame with correct borders/aspect-ratio.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Examples
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
1
|
|
Packit |
971217 |
gst-launch-1.0 -v videotestsrc ! video/x-raw ! glimagesink
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
A pipeline to test hardware scaling.
|
|
Packit |
971217 |
No special opengl extension is used in this pipeline, that's why it should work
|
|
Packit |
971217 |
with OpenGL >= 1.1. That's the case if you are using the MESA3D driver v1.3.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
1
|
|
Packit |
971217 |
gst-launch-1.0 -v videotestsrc ! video/x-raw,format=I420 ! glimagesink
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
A pipeline to test hardware scaling and hardware colorspace conversion.
|
|
Packit |
971217 |
When your driver supports GLSL (OpenGL Shading Language needs OpenGL >= 2.1),
|
|
Packit |
971217 |
the 4 following format YUY2, UYVY, I420, YV12 and AYUV are converted to RGB32
|
|
Packit |
971217 |
through some fragment shaders and using one framebuffer (FBO extension OpenGL >= 1.4).
|
|
Packit |
971217 |
If your driver does not support GLSL but supports MESA_YCbCr extension then
|
|
Packit |
971217 |
the you can use YUY2 and UYVY. In this case the colorspace conversion is automatically
|
|
Packit |
971217 |
made when loading the texture and therefore no framebuffer is used.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
1
|
|
Packit |
971217 |
gst-launch-1.0 -v gltestsrc ! glimagesink
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
A pipeline 100% OpenGL.
|
|
Packit |
971217 |
No special opengl extension is used in this pipeline, that's why it should work
|
|
Packit |
971217 |
with OpenGL >= 1.1. That's the case if you are using the MESA3D driver v1.3.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
1
|
|
Packit |
971217 |
gst-plugins-bas/tests/examples/gl/generic/cube
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
The graphic FPS scene can be greater than the input video FPS.
|
|
Packit |
971217 |
The graphic scene can be written from a client code through the
|
|
Packit |
971217 |
two glfilterapp properties.
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Synopsis
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Element Information
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
plugin
|
|
Packit |
971217 |
|
|
Packit |
971217 |
opengl
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
author
|
|
Packit |
971217 |
Matthew Waters <matthew@centricular.com>
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
class
|
|
Packit |
971217 |
Sink/Video
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Element Pads
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
name
|
|
Packit |
971217 |
sink
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
direction
|
|
Packit |
971217 |
sink
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
presence
|
|
Packit |
971217 |
always
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
details
|
|
Packit |
971217 |
video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw(memory:DMABuf, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw(memory:DMABuf), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Functions
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Types and Values
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
|
|
Packit |
971217 |
Generated by GTK-Doc V1.27
|
|
Packit |
971217 |
</body>
|
|
Packit |
971217 |
</html>
|