Matthew Waters
ee0c102ac5
gl/upload: add support for the bt709 color matrix
2017-12-09 19:31:35 +00:00
Matthew Waters
16a30a12aa
gl/upload: remove the legacy GL 1.x upload path
...
uploading requires shaders and fbos available in GL2.
2017-12-09 19:31:35 +00:00
Matthew Waters
e225af3e0d
gl: silence all the compiler warnings
2017-12-09 19:31:34 +00:00
Matthew Waters
6c594a0b15
[881/906] upload: restore default values for unpack_length
...
fixes elements that upload a supplementary texture (glbumber,
gldifferencematte, etc)
2017-12-09 19:31:33 +00:00
Matthew Waters
d233bb66a9
[876/906] glmem: use GstVideoInfo for format configuration
...
Allows use of strides
2017-12-09 19:31:33 +00:00
Matthew Waters
d84bb0b3b2
[875/906] upload: support for arbitrary strides
...
Using GL_UNPACK_ALIGNMENT for GLES2 and GL_UNPACK_ROW_LENGTH for everything else
2017-12-09 19:31:33 +00:00
Matthew Waters
2eb7938db9
[873/906] upload: use GstVideoInfo for choosing the format
2017-12-09 19:31:33 +00:00
Matthew Waters
a9f6679e90
[872/906] upload: consolidate data _fill
2017-12-09 19:31:33 +00:00
Matthew Waters
bc8b4085b5
[871/906] upload: fix texture scaling for YUY2/UYVY with GLES2
...
Another artifact from the transition to GL_TEXTURE_2D
2017-12-09 19:31:33 +00:00
Matthew Waters
1f4d041d5b
[870/906] upload: remove superflous g_mutex_init
2017-12-09 19:31:33 +00:00
Matthew Waters
970fbacf96
[869/906] tests: add some upload tests
2017-12-09 19:31:33 +00:00
Matthew Waters
8d67249633
[868/906] upload: fix compilation for GLES2
2017-12-09 19:31:33 +00:00
Wang Xin-yu (王昕宇)
5168d86d9e
[867/906] glupload: Add GRAY8/GRAY16LE/BE upload support to glimagesink
...
the 16bit data is uploaded as LUMINANCE_ALPHA, then expanded, composed
in shader. value weight is a little complicate, high byte weight is
255*256/65535 (denormalize to [0~255] ,shift to high byte,then normalize
to [0~1]), low byte weight is 255/65535(similar)
https://bugzilla.gnome.org/show_bug.cgi?id=722670
2017-12-09 19:31:33 +00:00
Matthew Waters
95833db905
[866/906] upload: update some docs
2017-12-09 19:31:33 +00:00
Matthew Waters
1e02438715
[855/906] upload: add support for GstVideoGLTextureUploadMeta
2017-12-09 19:31:32 +00:00
Matthew Waters
f15206082a
[850/906] glupload: Remove texture scaling artifacts from the TEXTURE_RECTANGLE -> TEXTURE_2D transition
...
fixes the funky colours in some of the yuv formats
https://bugzilla.gnome.org/show_bug.cgi?id=721155
2017-12-09 19:31:32 +00:00
Matthew Waters
efa22442a9
[838/906] gl: Use GL_TEXTURE_2D instead of GL_TEXTURE_RECTANGLE
...
We create our textures (in Desktop GL) with GL_TEXTURE_RECTANGLE,
vaapi attempts to bind our texture to GL_TEXTURE_2D which throws a
GL_INVALID_OPERATION error and as thus, no video.
Also, by moving exclusively to GL_TEXTURE_2D and the npot extension
we also remove a difference between the Desktop GL and GLES2 code.
https://bugzilla.gnome.org/show_bug.cgi?id=712287
2017-12-09 19:31:32 +00:00
Matthew Waters
bf610e210a
[826/906] upload: free our mutex
2017-12-09 19:31:32 +00:00
Matthew Waters
711ad485b2
[812/906] move the GL vtable from GstGLDisplay to GstGLContext
...
Conflicts:
tests/check/libs/gstglcontext.c
2017-12-09 19:31:31 +00:00
Tonu Jaansoo
c304635ecf
[787/906] gl: The GLSL rectangle resampler does not always work with int tex coords
...
Use floats instead.
2017-12-09 19:31:30 +00:00
Matthew Waters
1f19143837
[778/906] upload: remove _thread variants of the API
2017-12-09 19:31:30 +00:00
Matthew Waters
d009a216e6
[777/906] upload: overhaul and addition of new video formats
...
use the shaders from eglglessink (adapted for Desktop GL)
error out properly
2017-12-09 19:31:30 +00:00
Sebastian Dröge
15438d5b7f
[750/906] glupload: Add support for RGB reordering when using GLES2
2017-12-09 19:31:29 +00:00
Sebastian Dröge
6c5ce0ee99
[747/906] gl: Constify YUV conversion shaders
2017-12-09 19:31:29 +00:00
Sebastian Dröge
d0293d9f0c
[745/906] gl: Simplify and optimize YUV conversion shaders a bit
2017-12-09 19:31:29 +00:00
Julien Isorce
d17a4381b1
[732/906] build: fix repeated typedefs
...
Write forward declarations in another way to avoid
repeated typedefs "error: redefinition of typedef".
Raised when using i686-apple-darwin11-llvm-gcc-4.2
It seems that C apple compiler does not support
C11 feature.
https://bugzilla.gnome.org/show_bug.cgi?id=703885
2017-12-09 19:31:29 +00:00
Matthew Waters
761bc0156a
[704/906] Use gst_object_[un]ref so we can get refcounts in the log
2017-12-09 19:31:28 +00:00
Matthew Waters
c6988cb064
[701/906] display: move context creation into window
2017-12-09 19:31:28 +00:00
Matthew Waters
9c633e658a
[700/906] display: move most of the code into utils for sorting later
...
This contains a hack that essentially requires one GstGLDisplay
per process.
2017-12-09 19:31:28 +00:00
Matthew Waters
38e0434d95
[699/906] display: remove list of upload and download objects
...
and only create an up/download object when needed.
2017-12-09 19:31:28 +00:00
Matthew Waters
72ac429e57
[675/906] upload: provide nicer debugging
2017-12-09 19:31:27 +00:00
Matthew Waters
847e6540fb
[651/906] up/download: fix some typos when removing GLEW
2017-12-09 19:31:27 +00:00
Matthew Waters
6bee9b9c93
[647/906] remove dependecy on glew
2017-12-09 19:31:27 +00:00
Matthew Waters
e983f02e87
[642/906] add gstglconfig.h for apps to find out what our capabilites are
...
ie libgstgl can be compiled with any combination of opengl/gles2
2017-12-09 19:31:26 +00:00
Matthew Waters
344253e860
[624/906] OPENGL_ES2 => HAVE_GLES2 and add HAVE_OPENGL
...
use GstGLAPI to determine which code paths to execute.
perform some cleanups
2017-12-09 19:31:26 +00:00
Matthew Waters
4c35d682c9
[603/906] update FSF address
2017-12-09 19:31:25 +00:00
Matthew Waters
9267372466
[601/906] fix typo causing shader compilation failure for uploading I420
2017-12-09 19:31:25 +00:00
Matthew Waters
d55bbf7f55
[600/906] docs: add docs for new objects and expand on some existing ones
2017-12-09 19:31:25 +00:00
Matthew Waters
7baddfbcbe
[599/906] GL|ES2: fix typos from recent changes and make downloading RGB formats work again
2017-12-09 19:31:25 +00:00
Matthew Waters
39866ea830
[590/906] up/download: fix scaling on transfer
...
i.e. uploading from a 10x10 video frame to a 20x20 texture into another 30x30 videoframe
2017-12-09 19:31:25 +00:00
Matthew Waters
75734e663c
[578/906] {up,down}load: add variants that can be called in the gl thread
2017-12-09 19:31:25 +00:00
Matthew Waters
3ee54d3135
[573/906] add upload and download library objects
...
allows multiple upload pipelines that previously wasn't possible
(i.e. upload RGB and I420 and ... on the same GstGLDisplay)
2017-12-09 19:31:25 +00:00