Matthew Waters
1c84c0fb96
[714/906] Add GstGLFramebuffer to replace _display_gen_fbo and friends
...
This version is simply API compatible with _display_gen_fbo.
The next version will likely revamp the API
2017-12-09 19:31:28 +00:00
Matthew Waters
d7f5cac7ce
[713/906] shader: make it possible to create the object in a non-GL thread
2017-12-09 19:31:28 +00:00
Matthew Waters
ef6b1ca760
[712/906] wayland: shutdown properly
...
We cannot use _finalize as this will be called before GstGLWindow's
_finalize. This causes us to try and perform operations with the
wayland server when the connection has been severed.
2017-12-09 19:31:28 +00:00
Matthew Waters
380f918802
[711/906] wayland: support choosing Desktop GL as the api
2017-12-09 19:31:28 +00:00
Matthew Waters
951daee416
[710/906] window: fail if the user specifies an GL api that we cannot work with
...
It would've been caught later in an g_assert anyway.
2017-12-09 19:31:28 +00:00
Matthew Waters
2ae5b50fa4
[709/906] display: some more cleanups
2017-12-09 19:31:28 +00:00
Matthew Waters
6e86d0e920
[708/906] display: a cleanup and removal of old code
2017-12-09 19:31:28 +00:00
Matthew Waters
bdf5b5be0f
[707/906] display: move error_message to utils
2017-12-09 19:31:28 +00:00
Matthew Waters
5bc069a5d5
[706/906] display: move activate_context into utils
2017-12-09 19:31:28 +00:00
Matthew Waters
4f117323b8
[705/906] x11: don't shutdown in _finalize
...
The window's loop could be still running when _finalize is called
and if we destroy the display connection it will never be closed.
Add _open and _close vfuncs to GstGLWindow so that subclasses can
start up and shutdown at the right time.
2017-12-09 19:31:28 +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
9e7af77dc8
[703/906] x11: don't segfault if destroy_cb is NULL
2017-12-09 19:31:28 +00:00
Matthew Waters
5818b015d6
[702/906] x11: fix segfault if the x11 backend is instantiated but not used
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
81334a1af0
[698/906] move sink-specific stuff from GstGLDisplay into glimagesink
2017-12-09 19:31:28 +00:00
Matthew Waters
ad31c9f8e2
[697/906] display: allow the user to try and choose the GL api we use via env variable
...
GST_GL_API=opengl,opengl3,gles2,gles3
2017-12-09 19:31:28 +00:00
Matthew Waters
f5472457bf
[696/906] glapi: fix memory leak from not freeing a string
2017-12-09 19:31:28 +00:00
Matthew Waters
06eb6f4965
[695/906] build: remove libtool warning about -version-info not used in convenience libraries
2017-12-09 19:31:28 +00:00
Matthew Waters
696477bbf6
[693/906] x11_glx: ask for a 3.0 GL Context
...
(falling back if needed)
2017-12-09 19:31:27 +00:00
Matthew Waters
957b4cf08b
[692/906] window_x11: add XError trapping
...
some functions in GLX can fail if the implementation does not support
certain features we ask for (i.e. GL 3) bringing down the entire
application
2017-12-09 19:31:27 +00:00
Matthew Waters
d88a9c0044
[691/906] feature: make gst_gl_check_extension public
...
prevents duplication of code of extension string parsing in GstGLWindow's
2017-12-09 19:31:27 +00:00
Matthew Waters
df675e7335
[690/906] windowx11glx: use fbconfigs if supported
2017-12-09 19:31:27 +00:00
Matthew Waters
d71ab51c9f
[688/906] display: properly shutdown if we error after context creation
...
The _finalize() code checks to see if the context was created before
attempting to destroy it. We never did say that we had created the context.
2017-12-09 19:31:27 +00:00
Matthew Waters
01518880fa
[685/906] filter: improve error handling
2017-12-09 19:31:27 +00:00
Matthew Waters
a9b5bfe9d7
[684/906] display: lack of format-string causing a compiler warning
2017-12-09 19:31:27 +00:00
Matthew Waters
94d1326a7f
[683/906] feature: remove double free
2017-12-09 19:31:27 +00:00
Matthew Waters
1a04002052
[681/906] win32: fix gl api calls on 32-bit
...
win has the bright idea of having 5 different calling conventions.
we should probably use the right one so we don't crash from stack
corruption.
2017-12-09 19:31:27 +00:00
Matthew Waters
31a5beb3f3
[680/906] overlay: tentative port to new GstGLFuncs API
2017-12-09 19:31:27 +00:00
Matthew Waters
b9a10f8e15
[678/906] window_win32_wgl: implement wglGetProcAddress for extension functions
2017-12-09 19:31:27 +00:00
Matthew Waters
ed98971953
[677/906] memory: fix GSIZE printf format on win32
2017-12-09 19:31:27 +00:00
Matthew Waters
8d07dcbd5e
[676/906] windwo_win32: port to new API
2017-12-09 19:31:27 +00:00
Matthew Waters
72ac429e57
[675/906] upload: provide nicer debugging
2017-12-09 19:31:27 +00:00
Matthew Waters
6e8099fa20
[674/906] feature: try and catch more GL extension functions
...
if we don't find the extension in core GL, try the extension version anyway
2017-12-09 19:31:27 +00:00
Matthew Waters
1198b27830
[673/906] feature: add gstreamer license
2017-12-09 19:31:27 +00:00
Matthew Waters
792f055db4
[672/906] display: constify GstGLFuncs *gl
2017-12-09 19:31:27 +00:00
Matthew Waters
267bf848de
[671/906] win32: #include GL/glext.h on windows
...
also add some GL default variables if some GL types are not defined
2017-12-09 19:31:27 +00:00
Matthew Waters
dba83ebbd3
[670/906] display: replace glib deprecated api
2017-12-09 19:31:27 +00:00
Matthew Waters
7d4d1f50d4
[669/906] window: seperate object creation and context creation
2017-12-09 19:31:27 +00:00
Matthew Waters
63a5d9e981
[668/906] shader: fix gles2 segfault
2017-12-09 19:31:27 +00:00
Matthew Waters
0cc3150e37
[658/906] mixer: fix eos timestamp check
2017-12-09 19:31:27 +00:00
Matthew Waters
535074cc87
[655/906] download: remove erronous ReadBuffer call
...
- it was causing segfaults in mesa
- we didn't set the readbuffer so we shouldn't reset it
2017-12-09 19:31:27 +00:00
Matthew Waters
ccfa7d674a
[652/906] bumper: port to non-GLEW + arrays
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
173467e48a
[650/906] filter: fix _draw_texture()'s wrong vertices
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
17fdb480d0
[646/906] some gl header fixes/additions
2017-12-09 19:31:27 +00:00
Matthew Waters
2f2916dd50
[645/906] fix gles2 compilation
2017-12-09 19:31:27 +00:00
Matthew Waters
57e209a423
[644/906] update .gitignore for some new files
2017-12-09 19:31:27 +00:00
Matthew Waters
c692a610de
[643/906] display: privatise most of the struct
2017-12-09 19:31:26 +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
8375116c4b
[641/906] display: feature check for GL extension functions
2017-12-09 19:31:26 +00:00
Matthew Waters
a87b070abb
[640/906] build: add missing file to built sources
2017-12-09 19:31:26 +00:00
Matthew Waters
4a886e91e4
[639/906] add get_proc_address implementations for egl and glx
2017-12-09 19:31:26 +00:00
Matthew Waters
4a024734da
[638/906] window: add get_proc_address + stub for retrieving gl functions
2017-12-09 19:31:26 +00:00
Matthew Waters
87e5cd6777
[637/906] x11_egl: add prelim support for choosing opengl or gles
2017-12-09 19:31:26 +00:00
Matthew Waters
59cb56fa4d
[636/906] window_x11: compact debug info
2017-12-09 19:31:26 +00:00
Matthew Waters
17e6d70dba
[635/906] fixup compile errors
2017-12-09 19:31:26 +00:00
Matthew Waters
68b4ddff12
[634/906] wayland egl: deactivate context before we destroy it
...
avoids a segfault with dri drivers
2017-12-09 19:31:26 +00:00
Matthew Waters
db236c510f
[633/906] display: fail properly in context creation in order to minimize a race condition
...
previously, on context creation, when we failed to get a valid context
we would still atempt to run the window mainloop as well as setting an error
on the display. This would cause the calling element to finalize the display
and therefore attempt to quit the window mainloop. However the mainloop
may not have started running. Thus when the window mainloop ran it would
never a get a quit message and never end.
2017-12-09 19:31:26 +00:00
Matthew Waters
12b045af81
[631/906] remove redefinition warnings in compiling tests
2017-12-09 19:31:26 +00:00
Matthew Waters
1ec4ffc824
[630/906] display: add gl api checking
...
i.e. check for cases where the window wants a different API than
what the library was compiled with
2017-12-09 19:31:26 +00:00
Matthew Waters
c3526080aa
[629/906] window: add GError for error handling of context creation
2017-12-09 19:31:26 +00:00
Matthew Waters
6c0e32864a
[627/906] shader: check for invalid objects
2017-12-09 19:31:26 +00:00
Matthew Waters
fd06db00b0
[625/906] add vtable for opengl functions
...
The vtable provides the ability for one to compile (but not link)
against both OpenGL and GL|ES and starts the move away from GLEW
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
ee992ec531
[623/906] move GL includes into a single file
2017-12-09 19:31:26 +00:00
Matthew Waters
4e46ef4a3f
[622/906] add missing GL_STENCIL_ATTACHMENT for gles2 compatability
2017-12-09 19:31:26 +00:00
Matthew Waters
0be301af24
[621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window
2017-12-09 19:31:26 +00:00
Matthew Waters
e1ec48b6cf
[620/906] wayland_egl: attempt at resizing the video
2017-12-09 19:31:26 +00:00
Matthew Waters
62e6b36cd0
[619/906] fix typo for win32 debug variables
2017-12-09 19:31:26 +00:00
Matthew Waters
ccabf4545a
[618/906] add wayland-egl window backend
2017-12-09 19:31:26 +00:00
Matthew Waters
d169907472
[617/906] fix 'set but not used' compiler warnings
2017-12-09 19:31:26 +00:00
Matthew Waters
80fdf4c30c
[616/906] move window-specific code into seperate subfolders
2017-12-09 19:31:26 +00:00
Matthew Waters
cc1f734857
[615/906] preliminary support for Win32 EGL
2017-12-09 19:31:26 +00:00
Matthew Waters
d378a9d1d9
[614/906] try GLX first when using ANY | OPENGL | OPENGL3
2017-12-09 19:31:26 +00:00
Matthew Waters
fc4619f8a9
[613/906] window_cocoa: fix segfault with gst-launch-1.0 -e ... and sending SIGINT (Ctrl-C)
...
GNUstep has a signal handler for SIGINT which runs in the main thread.
However that thread has never been 'registered' with GNUstep so
the autorelease magic of objective-c causes a segfault from accessing
a null NSThread object somewhere deep in GNUstep.
2017-12-09 19:31:26 +00:00
Matthew Waters
517db226fe
[612/906] remove GNUstep makefiles
2017-12-09 19:31:26 +00:00
Matthew Waters
b36b9f4a4a
[611/906] cocoa port of determining gl platform at runtime
2017-12-09 19:31:25 +00:00
Matthew Waters
22aa2e093d
[610/906] WindowX11EGL: remove get_platform call
2017-12-09 19:31:25 +00:00
Matthew Waters
d857c58015
[609/906] win32 port of determining GL platform at runtime
...
- add GstGLWindowWin32 and GstGLWindowWin32WGL along the same lines as the
X11 variants
2017-12-09 19:31:25 +00:00
Matthew Waters
4d88e9977e
[608/906] add GST_GL_PLATFORM_ANY for choosing any platform
2017-12-09 19:31:25 +00:00
Matthew Waters
af658df918
[607/906] remove get_platform and get_window_handle vfuncs
...
- rename choose_visual() to choose_format() for later incorporating
win32 changes and new GstGLPlatform for WGL, EGL, GLX, etc.
2017-12-09 19:31:25 +00:00
Matthew Waters
538643e3c0
[606/906] determine the GL platform to use at runtime
...
- Make GstGLWindow subclassablerather than specified at compile time.
- Add GstGLWindowX11 for x11 windows and two subclasses, GstGLWindowX11GLX
and GstGLWindwX11EGL for GLX and EGL repectively. (win32 and cocoa
ports to come)
- Also cleanup GL library detection in configure.ac
2017-12-09 19:31:25 +00:00
Matthew Waters
9dd6570ca9
[605/906] shader: move to gst debugging
2017-12-09 19:31:25 +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
2a8de21658
[594/906] filter: update for up/download API changes and scaling fixes
2017-12-09 19:31:25 +00:00
Matthew Waters
09b60b563c
[592/906] memory: update for up/download API changes
2017-12-09 19:31:25 +00:00
Matthew Waters
776a5e536f
[591/906] mixer: save the upload object instead of querying for it every frame
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
89569276c5
[587/906] mixer: mirror the changes done for filter
2017-12-09 19:31:25 +00:00
Matthew Waters
67f5b303c8
[586/906] fix up some debug statements to get them into the right categories
2017-12-09 19:31:25 +00:00
Matthew Waters
c7f49800e3
[583/906] deinterlace: change for new API
...
also allow elements to call the _filter_texture vfunc if they want
2017-12-09 19:31:25 +00:00
Matthew Waters
eed7e15ed2
[581/906] filter: add seperate filter function for operating on textures instead of buffers
2017-12-09 19:31:25 +00:00
Matthew Waters
fa5d1efaa3
[580/906] bufferpool: remove obselete gl meta buffer pool options
2017-12-09 19:31:25 +00:00
Matthew Waters
9306c201f8
[579/906] download: fix YV12 format
...
same as I420 but plane 1+2 swapped
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
574612f129
[576/906] remove uneeded GstGLMeta (use GstVideoMeta)
2017-12-09 19:31:25 +00:00
Matthew Waters
2de5a925c1
[575/906] filter: port to new upload/download
2017-12-09 19:31:25 +00:00
Matthew Waters
84ec07072d
[574/906] memory: implement transperent upload/download for data
...
(not async yet)
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
Matthew Waters
3283e9e7de
[571/906] mixer: fix deadlock on shutdown
...
didn't reiterate over the sinkpad's displays and reactivate them causing a deadlock
2017-12-09 19:31:25 +00:00
Matthew
2dff52334c
[568/906] window: fix public definitions
2017-12-09 19:31:25 +00:00
Matthew
4a424d6d2c
[567/906] fix OpenGL|ES2 ifdef'ed code
2017-12-09 19:31:25 +00:00
Matthew Waters
6e6ee999a9
[564/906] glmemory: remove unused typedef
2017-12-09 19:31:24 +00:00
Matthew Waters
c4332505a9
[563/906] readd support for hanging GL pipelines e.g. ... ! gleffects ! fakesink
2017-12-09 19:31:24 +00:00
Matthew Waters
a1a653c8ed
[562/906] gldisplay: fix download of YUV formats
2017-12-09 19:31:24 +00:00
Matthew Waters
c0235ddafa
[561/906] gldisplay: fix endianess issues on RGB download
2017-12-09 19:31:24 +00:00
Matthew Waters
23ec206053
[559/906] glmixer: pass the mixpad's display to the querying element
2017-12-09 19:31:24 +00:00
Matthew Waters
9761f2cfa1
[555/906] Make the query for a GstGLDisplay a pad peer query
...
Allows the query to pass through bin boundaries and makes it possible for
arbitrary gl elements to be placed in bins.
2017-12-09 19:31:24 +00:00
Matthew Waters
c7ddead74b
[554/906] GstGLMemory: update for GstAllocator API changes
2017-12-09 19:31:24 +00:00
Matthew Waters
56bf6e2fb3
[544/906] fix memory leaks from not g_free()ing string returned by gst_element_get_name
2017-12-09 19:31:24 +00:00
Matthew Waters
7a79d684e2
[543/906] GstGLDisplay: fix segfault from GST_PTR_FORMAT trying to expand the object
2017-12-09 19:31:24 +00:00
Matthew Waters
83401761eb
[542/906] GstGLMixer: add allocation and bufferpool methods
...
based off GstBaseTransform
2017-12-09 19:31:24 +00:00
Matthew Waters
3f174671ec
[532/906] GstGLFilter: implement allocation vfuncs
2017-12-09 19:31:24 +00:00
Matthew Waters
e02e620055
[528/906] GstGLMeta: seperate upload/download/normal GL caps video formats
...
differentiate between upload, download and GL caps
2017-12-09 19:31:24 +00:00
Matthew Waters
38b6bdfa8b
[527/906] GstGLDisplay: add some trace debugging
2017-12-09 19:31:24 +00:00
Matthew Waters
0d5b8bbc38
[524/906] GstGLDisplay: rework the download code
...
data paramaters now take GstVideoFrame
remove redundant parameters
2017-12-09 19:31:24 +00:00
Matthew Waters
be177b01b7
[522/906] GstGLDisplay: add forgotten function definition
2017-12-09 19:31:24 +00:00
Matthew Waters
fe216ac6b2
[521/906] GstGLMemory: update for GstAllocator changes
2017-12-09 19:31:24 +00:00
Matthew Waters
590cf80c31
[520/906] GstGLMixer: fix for GstChildProxy changes
2017-12-09 19:31:24 +00:00
Matthew Waters
a8b1853755
[517/906] add GstGLBufferPool
...
which adds GstGLMeta to buffers
2017-12-09 19:31:24 +00:00
Matthew Waters
8527e1cd66
[516/906] add skeleton GstGLMeta
...
the GstVideoMeta _map/unmap functions still need implementing
2017-12-09 19:31:24 +00:00
Matthew Waters
6528aba8c9
[515/906] GstGLDisplay: rework gen_texture and upload
...
rename functions so that other code can create textures in the GL thread
change upload functions to take a GstVideoFrame
default to GLSL for upload conversion
2017-12-09 19:31:24 +00:00
Matthew Waters
ffdc6d496e
[514/906] add GstGLMemory and allocator
...
implement custom GstMemory for GL textures
currently map/unmap returns NULL although it might be favourable to upload/download/cache the image data
2017-12-09 19:31:24 +00:00
Matthew Waters
eb362969f1
[513/906] Remove GstGLBuffer (to be replaced by GstGLMeta)
2017-12-09 19:31:24 +00:00
Matthew Waters
25aa8a4042
[512/906] GstGLMixer: update for 1.0 based on the videomixer2 element in -good
2017-12-09 19:31:24 +00:00
Matthew Waters
3e18471e8e
[509/906] GstGLDisplay: update for 1.0
2017-12-09 19:31:24 +00:00
Matthew Waters
683c001f91
[504/906] GstGLFilter: update for 1.0
...
-fix up function definitions
-remove _prepare_output_buffer (functionality taken over by GstBufferPool).
2017-12-09 19:31:24 +00:00
Matthew Waters
f7bc5dcf83
[503/906] Rename GST_BOILERPLATE_* to G_DEFINE_TYPE_* and move _base_init into _class_init
2017-12-09 19:31:24 +00:00
Matthew Waters
1a034ba18d
[502/906] Update versioning for gstreamer 1.0
...
Renames GST_MAJORMINOR to GST_API_VERSION in build files
removes -lgstinterfaces from _LDADD flags
2017-12-09 19:31:24 +00:00
Raimo Järvi
563f0f2e57
[501/906] Fix building on 64 bit mingw-w64
...
https://bugzilla.gnome.org/show_bug.cgi?id=676428
2017-12-09 19:31:24 +00:00
Julien Isorce
20c429684e
[500/906] gldisplay: do not call glCheckFramebufferStatus if 0 is bound
...
Indeed it may return GL_FRAMEBUFFER_UNDEFINED if there is no
default framebuffer.
It seems to be the case on MacOSX
2017-12-09 19:31:24 +00:00
Julien Isorce
67bc74ec3f
[498/906] gldisplay: don't pass non-constant strings as printf format strings
...
Fixes 'format not a string literal and no format arguments' on darwin
2017-12-09 19:31:23 +00:00
Julien Isorce
e25b142e24
[497/906] filtershader: fix format compiler warnings
2017-12-09 19:31:23 +00:00
Julien Isorce
83b2f12c12
[495/906] glES2.0: properly use glDeleteShader
2017-12-09 19:31:23 +00:00
Julien Isorce
46eea6f943
[494/906] cmake build: use config.h from win32/common and add some guidelines
2017-12-09 19:31:23 +00:00
Julien Isorce
bd0982d057
[492/906] glwindow: properly fails if resource not found
2017-12-09 19:31:23 +00:00
Julien Isorce
badaaaec34
[491/906] glES2.0: properly fails if driver/kernel inconsistency
2017-12-09 19:31:23 +00:00
Julien Isorce
07df6a220d
[490/906] gldisplay: error out instead of g_assert
2017-12-09 19:31:23 +00:00
Julien Isorce
ef87b0e70d
[488/906] libvisual-gl: full compatibility with projectM-libvisual if libprojectM >= 2.0.1
...
Fix bug #310775
2017-12-09 19:31:23 +00:00
Julien Isorce
74526865c6
[486/906] libvisual-gl: add minimal support to libvisual plugins that uses Framebuffer objects
...
Fix bug #310775
gst-launch audiotestsrc ! libvisual_gl_projectM ! glimagesink is working
but for now you cannot append any other opengl filters between
libvisual_gl_projectM and glimagesink because our FBO is turned OFF.
It would require that libvisual allows to split rendering between
pass1,2,3... and final rendering. In order to unbind our FBO before
the passN, and then rebind it just before the final libvisual rendering.
2017-12-09 19:31:23 +00:00
Julien Isorce
0f54271129
[485/906] gstgldisplay: turn off texture binding and read buffer when downloading rgb is done
...
It fixes: (black image before)
gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! ximagesink
and
gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! glimagesink
2017-12-09 19:31:23 +00:00
Julien Isorce
96cce45c38
[483/906] glelements: do not leak parent when using gst_pad_get_parent
2017-12-09 19:31:23 +00:00
Julien Isorce
7c79cc5c41
[481/906] feature checking: error out instead of doing nothing if an OpenGL feature is not present
...
Fix bug #572767
2017-12-09 19:31:23 +00:00
Julien Isorce
b30da1699a
[480/906] win32 builds: add glshader filter sources to vs9 and codeblocks
...
Also fix some warnings from msvc9 and mingw-3.4.5
2017-12-09 19:31:23 +00:00
Руслан Ижбулатов
c0ebeccb8c
[479/906] gstglshadervariables: strtok_r is not multiplatform
...
Fix bug #664367
2017-12-09 19:31:23 +00:00
Wei Feng
aefca52574
[478/906] OpenGL ES 2.0: include glib.h to use G_BEGIN_DECLS in gstgles2.h
...
Fix bug #631019
2017-12-09 19:31:23 +00:00
Julien Isorce
ccaa9e883f
[477/906] OpenGL ES 2.0: fix build since glfiltershader changes
2017-12-09 19:31:23 +00:00
Antoni Silvestre
4ea2bf2087
[476/906] OpenGL ES 2.0: fix build and disable some examples
...
Fix bug #631019
2017-12-09 19:31:23 +00:00
Luc Deschenaux
500210b354
[471/906] glshader: add dynamic fragment shader filter
...
Also add fragment shader parser
Fix bug #600195
2017-12-09 19:31:23 +00:00
Julien Isorce
f008fa71ab
[467/906] tests: various build fixes
...
- cmake could not find glib
- put gtk variables at the beginning to avoid GL conflicts
- update examples to clutter-1.8
- use const instead of deprecated G_CONST_RETURN
- set max pending events to 0 to make cube example works again
2017-12-09 19:31:23 +00:00
Tim-Philipp Müller
4f09396824
[463/906] Add some more G_{BEGIN,END}_DECLS to public headers
...
https://bugzilla.gnome.org/show_bug.cgi?id=637260
2017-12-09 19:31:23 +00:00
Stefan Kost
df480f3530
[462/906] various: add missing G_PARAM_STATIC_STRINGS flags
...
Canonicalize property names as needed. Includes some gst-indent changes as well :/
2017-12-09 19:31:23 +00:00
Jan Schmidt
e013586f46
[459/906] Fix distcheck.
2017-12-09 19:31:23 +00:00
Julien Isorce
769e43a2e0
[456/906] glfilter/glmixer/gltestsrc/glupload: throw an element error if no parent bin
...
Fixes bug #602153
2017-12-09 19:31:23 +00:00
Julien Isorce
ade2526b8f
[455/906] glimagesink: handle pixel-aspect-ratio
2017-12-09 19:31:23 +00:00
Filippo Argiolas
306526a19f
[443/906] sobel: move some highly duplicated code into glfilter
...
Add a new convenience function in GstGLFilter that just draws an input
texture to a target texture using a simple shader with just a "tex"
uniform sampler.
Move draw_texture from glfiltersobel to glfilter. Still need to update
other plugins to this.
2017-12-09 19:31:23 +00:00
Julien Isorce
c390c30aac
[432/906] GstGLDisplay: this is GL_DEPTH24_STENCIL8_EXT, not GL_DEPTH24_STENCIL8_EXT
2017-12-09 19:31:23 +00:00
Pierre Pouzol
c9dfa9c111
[431/906] GstGLDisplay: enable stencil buffer when using framebuffer objects.
...
Fixes Bug #612159
2017-12-09 19:31:23 +00:00
Nicholas Panayis
dfc2d42b7a
[415/906] gstglwindow_win32: share opengl context in correct order
...
Allow to use the opengl context sharing feature if the original
context has been used already.
This is only possible on win32 with wglShareLists because on other
backends, the sharing is made when a context is created.
This new feature is only usefull when using external context
because gst-gl internally makes sure that the orginal context is not
already used when sharing it.
Fix bug #611067
2017-12-09 19:31:23 +00:00
Julien Isorce
b36b45e437
[412/906] Cocoa backend: improve support on GNUStep
2017-12-09 19:31:23 +00:00
Julien Isorce
0b6112c4a0
[411/906] gstglmixer: copy/past recent changes from gstvideomixer
2017-12-09 19:31:23 +00:00
Julien Isorce
4874b35304
[410/906] gstglmixer: inactivate shared gl context before to release ours
...
First, inactivate shared gl contexts known by each sink pad.
Then, destroy the gl context known by the glmixer.
Finally, re-activate shared gl contexts.
This is to satisfy the fact that no shared gl context must be current
when an opengl context is destroyed.
Moreover the application may hang or crash without those steps.
2017-12-09 19:31:23 +00:00
Julien Isorce
727191d7b6
[407/906] winCE backend: fix build
2017-12-09 19:31:22 +00:00
Julien Isorce
36a51c6e02
[406/906] glimagesink: add a client-data property
...
Also add it to glfilterapp.
Fixes #559131
2017-12-09 19:31:22 +00:00
Julien Isorce
32203f94ea
[405/906] glfilter: add external-opengl-context property
...
It repairs the cluttershare and sdlshare example
2017-12-09 19:31:22 +00:00
Jan Schmidt
3672b5922f
[403/906] gstglmixer: Initialise the debug category
...
Initialise the gstglmixer debug category before using it.
2017-12-09 19:31:22 +00:00
Julien Isorce
e70ed87aa8
[400/906] gstgldisplay: no need the I420 work around if ATI Mobility
...
fix #588653
2017-12-09 19:31:22 +00:00
Julien Isorce
f23b6144d5
[399/906] glmixer: fix when no more gl elements after it
...
For example:
videotestsrc ! glupload ! ... ! glfiter ! ... ! glmosaic ! fakesink
Usefull when using glmixer inside cluttershare or sdlshare cases.
2017-12-09 19:31:22 +00:00
Pratheesh Gangadhar
f93bb87e77
[394/906] gstgldisplay: use of GL_DEPTH_COMPONENT16 if OpenGL ES 2.0
...
glRenderbufferStorage does not accept GL_DEPTH_COMPONENT in
OpenGL ES 2.0.
Fix bug #593786
2017-12-09 19:31:22 +00:00
Julien Isorce
8fdf415fb7
[393/906] glmosaic: for now it's a cube mosaic
...
Also use GPtrArray instead of GArray in glmixer.
And add a pipeline to tests/pieplines
2017-12-09 19:31:22 +00:00
Julien Isorce
9e9b114010
[391/906] Cocoa: fix backend since recent changes
...
Before, the window size was given at its creation. Now, it's done at
the drawing step because it's only relevant when there is a glimagesink
element in the pipeline.
2017-12-09 19:31:22 +00:00
Julien Isorce
9741435b21
[389/906] fix codeblocks build on win32
2017-12-09 19:31:22 +00:00
Julien Isorce
525701cfca
[388/906] just fix builds and indent
2017-12-09 19:31:22 +00:00
Julien Isorce
b85ffef956
[387/906] glmixer: add a glmixer base element
...
glmixer can be seen as a glfilter except it handles N requested
sink pads.
Each sink pad and the src pad are video/x-raw-gl.
glmixer is responsible for managing different framerates from inputs.
It uses OpenGL context sharing. It means that each input is in its
own OpenGL context shared together and shared with the OpenGL context
of the ouput gl chain.
Also add a glmosaic which is an example of implementation of glmixer.
For now glmosaic is a cube but it will be fixed in the next commits.
For now the glmixer has some weird behaviours in some configurations
but it will be improved in the next commits.
The autotools builds is temporarly broken since those changes
have been made on win32.
2017-12-09 19:31:22 +00:00
Julien Isorce
8c33ba0ba6
[385/906] rewrite the way a gstgldisplay is transmited to the gl elements
...
Before, a gstgldisplay was instancied by the gl src in terms of gl chain.
And then the next element got it through the first gstglbuffer.
Now, this is done though queries.
All glelements get their ref on a gstgldisplay in READY state.
This rewrite is mainly a first step to be able to share OpenGL context hold
by the gstgldisplay using more complex glelements.
For example, with a glvideomixer. The associated gstgldisplay of each gl chain
of the sink pads will share their OpenGL context.
2017-12-09 19:31:22 +00:00
Stefan Kost
2b9ff50feb
[384/906] build: use <stdio.h> / "stdio.h"
2017-12-09 19:31:22 +00:00
Stefan Kost
c218748bc2
[383/906] build: include <stdio.h> when using printf & co.
2017-12-09 19:31:22 +00:00
Julien Isorce
8f6927c70a
[382/906] ES2.0: remove warnings
...
Partially fix #593786
2017-12-09 19:31:22 +00:00
Julien Isorce
b639781471
[381/906] EGL and GLX:: set a minimum depth size
2017-12-09 19:31:22 +00:00
Julien Isorce
95dbe51fef
[378/906] gldisplay: avoid to request gl thread when deleting a texture
...
A texture is not destroyed when when we are done with it.
This texture is just added to the texture pool in order to be
re-used. In this case no OpenGL code is executed so we do not need to
request gl thread.
2017-12-09 19:31:22 +00:00
Julien Isorce
fa41020ee4
[377/906] gldisplay: avoid to request gl thread when generating a texture
...
Thanks to the texture pool the gl textures are re-used.
When re-using one, no opengl code is executed so do not need
to request gl thread.
2017-12-09 19:31:22 +00:00
Stefan Kost
fa9177d037
[376/906] build: support openGLES on linux via autofoo. Partialy fixes #593786
...
Add a pkg-config check for opengl and if not found assume opengl-es. If user has
none of both one still get build error later on (there is no pkg-config for
opengl-es).
Add more files to EXTRA dist and build the opengles variant if selected.
Simmilar changes could be done for the winCE backend.
2017-12-09 19:31:22 +00:00
Julien Isorce
8bed6a5e85
[369/906] define missing glew macro on older versions
2017-12-09 19:31:22 +00:00
Julien Isorce
2e22bb4560
[368/906] Cocoa backend: fix crash when resizing
...
Default implementation of NSOpenglView::update is not safe because it
just calls update on the opengl context whereas we are not in the gl thread.
Also fix the white flickering when resizing, because now we need to call
the draw callback manually when resizing.
2017-12-09 19:31:22 +00:00
Julien Isorce
e467ea29e9
[365/906] Cocoa backend: make sure that nsapp is initialized
...
gst-launch-0.10 videotestsrc ! tee name=t ! queue ! glimagesink t. ! queue ! glimagesink
now works properly on MacOSX
2017-12-09 19:31:22 +00:00
Julien Isorce
8d6e91838a
[364/906] make the cmake build work on MacOSX
...
We can now generate a Xcode project (or Unix Makfiles),
see INSTALL file
2017-12-09 19:31:22 +00:00
Julien Isorce
54ba5bccf5
[363/906] Cocoa backend: fix crash when closing
...
- All gstglwindow members are now modified only in the gl thread
to avoid thread concurrency
- OpenGL context is now properly clean
- fix a couple of things in implementation of xoverlay interface
2017-12-09 19:31:22 +00:00
Julien Isorce
b7162375a3
[362/906] make cocoa backend work on MacOSX
...
It works with both gst-launch and a cocoa app (non-embedded and embedded)
But there is still some problems:
- sometimes crash when closing
- flickering when resizing
- embedded mode not perfect
I will first make the CMake build work with cocoa backend
in order to generate a XCode project.
Then it should be easier to fix those issues.
2017-12-09 19:31:22 +00:00
Jan Schmidt
8884cfefa8
[358/906] gstgldisplay: Close a small race starting the display thread
...
Take the display lock before signalling the create-context cond
to ensure the caller has dropped the lock and is therefore listening
for the signal.
2017-12-09 19:31:22 +00:00
Jan Schmidt
4ddbded3a8
[357/906] x11: Don't crash when the X11 display is not available.
...
Error out cleanly instead of crashing when the X11 display can't
be contacted.
2017-12-09 19:31:22 +00:00
Jan Schmidt
3fbe0f0a98
[352/906] fix typo
...
Change GST_GL_DISPLAY_PROJECTION_PERSPECIVE to
GST_GL_DISPLAY_PROJECTION_PERSPECTIVE.
Re-indent a couple of files that needed it.
2017-12-09 19:31:22 +00:00
Julien Isorce
f3fef483ec
[350/906] fix window position when using xoverlay
...
x, y are the coordinates of the position inside
the new parent window.
Fixes #584877
2017-12-09 19:31:22 +00:00
Julien Isorce
ca1a2d33ca
[349/906] can switch xoverlays while playing
...
Fixes bug #584877
Before this commit calling "gst_x_overlay_set_xwindow_id" more
than one time, had no effect.
It mainly affects the glimagesink implementation.
But on win32 (and CE), some stuff has to be done to
release the old parent.
And add a switchxoverlay example where the user
can click on left/right part of the main window to
switch the xoverlay.
2017-12-09 19:31:21 +00:00
LRN
389982df17
[347/906] fix miscast of a pointer in SetWindowLongPtr
...
GCC 4.4.0 complains error: cast from pointer to integer of different size
Fixes #584678 .
2017-12-09 19:31:21 +00:00
Sebastian Dröge
3b0dacd8d6
[346/906] Fix linking by providing libtool the correct --tag parameter
2017-12-09 19:31:21 +00:00
Julien Isorce
de9f763bff
[337/906] Improve cluttershare example
...
Use clutter_threads_API.
When just using glupload from rgb, we have to be sure that
the upload texture is not in use in our gst gl context.
2017-12-09 19:31:21 +00:00
Julien Isorce
9f8473cce0
[336/906] [x11/x11ES] fix some pointer cast warnings
2017-12-09 19:31:21 +00:00
Julien Isorce
0a649b133d
[335/906] [cocoa] update since interface changed
2017-12-09 19:31:21 +00:00
Julien Isorce
f631cf4976
[334/906] [win32/winCE] fix some pointer cast warnings with mingw
...
And turn off deprecated Wp64 msvc compiler option.
2017-12-09 19:31:21 +00:00
Julien Isorce
d43fdd3daf
[333/906] add force-aspect-ratio support
2017-12-09 19:31:21 +00:00
Julien Isorce
d1bd71e82b
[331/906] indent and fix some compiler warnings
2017-12-09 19:31:21 +00:00
Julien Isorce
2eb9cb551c
[330/906] Can now share textures with an external gl context
...
The external opengl context must be specify when creating
our OpenGL context (glx) or just after (wgl).
When calling glXCreateContext or wglShareLists, the
external opengl context must not be current.
Then our gl context can be current in the gl thread while
the external gl context is current in an other thread.
See tests/examples/clutter/cluttershare.c
2017-12-09 19:31:21 +00:00
David Schleef
09704b9e70
[329/906] Build for Cocoa on darwin, with various fixes
2017-12-09 19:31:21 +00:00
Julien
095be23366
[327/906] fix init FBO's texture attachment on ES 2.0
2017-12-09 19:31:21 +00:00
Julien
fd2028d109
[326/906] add X backend for OpenGL ES 2.0
2017-12-09 19:31:21 +00:00
Julien Isorce
ad8b227ff7
[322/906] [download YUY2/UYVY] fix a regression
...
The call to glLoadIdentity was removed by mistake during
OpenGL ES 2.0 integration.
2017-12-09 19:31:21 +00:00
Julien Isorce
61a8f34442
[321/906] add OpenGL ES 2.x support.
...
In OpenGL 2.x for Embedded System, a lot of basic scene/draw functions
have been removed. It means that everything is made using vertex and
fragment shaders.
I have also added a gstglwindow backend for winCE that uses EGL
(Native Platform Graphics Intercace) (which is a full part of
OpenGL ES specification). It remove the use of wgl/glx functions.
2017-12-09 19:31:21 +00:00
Julien Isorce
3c92a741a4
[320/906] fix position and content rect
2017-12-09 19:31:21 +00:00
Julien Isorce
8a77e2d859
[319/906] [win32 backend] fix transmition message to the parent.
...
The Qt mouvexoverlay example shows how to rotate the cube
by moving (+click) the mouve over a qwidget using xoverlay
interface.
2017-12-09 19:31:21 +00:00
Julien Isorce
dbdc0fb9eb
[318/906] rename GNUmakefile(s) to GNUmakefile(s).gnustep
2017-12-09 19:31:21 +00:00
Julien Isorce
4ccd32c444
[317/906] implement gstglwindow for Cocoa (MacOS and GNUstep)
2017-12-09 19:31:21 +00:00
Julien Isorce
573f54433c
[315/906] add GNUstep build
2017-12-09 19:31:21 +00:00
David Schleef
2e2213fbd7
[310/906] Global reindent
...
Indent parameters:
INDENT_PARAMETERS="--braces-on-if-line \
--case-brace-indentation0 \
--case-indentation2 \
--braces-after-struct-decl-line \
--line-length80 \
--no-tabs \
--cuddle-else \
--dont-line-up-parentheses \
--honour-newlines \
--continuation-indentation4 \
--tab-size8 \
--indent-level2"
2017-12-09 19:31:21 +00:00
Sebastian Dröge
10494006b8
[309/906] Replay: Fix callbacks passed over XEvents on 64 bit architectures
...
Althought the XEvent's xclient.data.l array is an array of
longs they will be constrained to 32 bit by the X11 protocol.
On 64 bit architectures use two elements of the array to store
one pointer.
This fixes segfaults that happen at least for every example
on startup.
2017-12-09 19:31:21 +00:00
Julien Isorce
c83cbcd398
[306/906] fix CMake build and frozen CodeBlocks build
2017-12-09 19:31:21 +00:00
Julien Isorce
3b8429c2df
[304/906] only load RGBA files.png
2017-12-09 19:31:21 +00:00
Julien Isorce
c060a8896d
[301/906] depends on libpng instead of gdk_pixbuf
2017-12-09 19:31:21 +00:00
David Schleef
f0b62d760f
[298/906] Revert "Fix indention"
...
This reverts commit 96e4ab18c2cf9876f6c031b9aba6282d0bd45a93.
You should have asked first. And you would have been told "no",
because it causes people on development branches to do a huge
amount of extra work.
2017-12-09 19:31:21 +00:00
David Schleef
2f0e5b1dc4
[297/906] Revert "Fix callbacks passed over XEvents on 64 bit architectures"
...
This reverts commit 280771d09b58617b27201027de0e1194da376e72.
2017-12-09 19:31:21 +00:00
Sebastian Dröge
babd51c58f
[296/906] Fix callbacks passed over XEvents on 64 bit architectures
...
Althought the XEvent's xclient.data.l array is an array of
longs they will be constrained to 32 bit by the X11 protocol.
On 64 bit architectures use two elements of the array to store
one pointer.
This fixes segfaults that happen at least for every example
on startup.
2017-12-09 19:31:21 +00:00
Sebastian Dröge
809c2ec04c
[295/906] Fix indention
2017-12-09 19:31:21 +00:00
Sebastian Dröge
0068125ec8
[294/906] Fix format string compiler warnings by using G_GUINT64_FORMAT
2017-12-09 19:31:20 +00:00
David Schleef
71db1285d8
[291/906] Add check for GLEW_EXT_framebuffer_object
2017-12-09 19:31:20 +00:00
David Schleef
d98d188ad7
[290/906] Set GL_LIBS correctly in configure.ac
...
This doesn't detect the existence of libraries, which needs to
be fixed.
2017-12-09 19:31:20 +00:00
David Schleef
978ded841c
[289/906] build fixes for Windows libraries
2017-12-09 19:31:20 +00:00
Julien Isorce
e184ad8a58
[288/906] add more debug ouputs about GLSL and mesa
2017-12-09 19:31:20 +00:00
julien
20298ee810
[287/906] fix a regression about glXChooseVisual which failed when using mesa, so attributes must be less restrictives.
2017-12-09 19:31:20 +00:00
Julien Isorce
76b6fcab5b
[286/906] [win32] Register window class in gst_gl_window_class_init
2017-12-09 19:31:20 +00:00
Julien Isorce
6d2b8da3da
[285/906] fix gl framerate in gst caps. Consider position in xoverlay. Fix inversion bettween COLS and ROWS, and move windows.
2017-12-09 19:31:20 +00:00
Julien Isorce
0867343017
[284/906] workaround about the ATI shader compiler on linux (setlocale)
2017-12-09 19:31:20 +00:00
Julien Isorce
1087da7753
[283/906] better result in cube and doublecube example. And some clean up debug and comments
2017-12-09 19:31:20 +00:00
Julien Isorce
121153fd21
[282/906] update CMake build
2017-12-09 19:31:20 +00:00
Julien Isorce
a50b222367
[281/906] Make cube example work on x11. Finish TODO task 9.
2017-12-09 19:31:20 +00:00
Julien Isorce
e1fd4232ad
[280/906] Remove set_visible, because it's now automatically done when the first post redisplay comes.
2017-12-09 19:31:20 +00:00
Julien Isorce
7e3bc563e1
[279/906] finish set_xwindow_id (gst_gl_window_set_external_win_id): child is resized at the same time as the parent is.
2017-12-09 19:31:20 +00:00
Julien Isorce
1daf54222f
[278/906] Implement set_xwindow_id (gst_gl_window_set_external_window_id).
2017-12-09 19:31:20 +00:00
Julien Isorce
aab706c46c
[277/906] open x client connection for sender only at start up
2017-12-09 19:31:20 +00:00
Julien Isorce
312d0f588a
[276/906] better deal with last pending custom cb and destroy_context_cb
2017-12-09 19:31:20 +00:00
Julien Isorce
128315ae60
[275/906] Make sure the gl ressoures are destroyed before to destroy gl window
2017-12-09 19:31:20 +00:00
Julien Isorce
b19684bbd0
[274/906] add some other debug outputs and checks
2017-12-09 19:31:20 +00:00
Julien Isorce
158f30bab1
[273/906] add some debug outputs about Visual and XVisualInfo
2017-12-09 19:31:20 +00:00
Julien Isorce
8840d306c4
[272/906] add a visible member to deal better with the first expose events
2017-12-09 19:31:20 +00:00
Julien Isorce
f878b84f90
[271/906] revert last commit because the crash comes from libselinux
2017-12-09 19:31:20 +00:00
Julien Isorce
daa5e24b41
[270/906] fix use of different Display structures which point on the same display name
2017-12-09 19:31:20 +00:00
Julien Isorce
c487389cfe
[269/906] Better deal with XNextEvent and XSendEvent
2017-12-09 19:31:20 +00:00
Julien Isorce
57488b1a32
[268/906] Better deal with Atoms
2017-12-09 19:31:20 +00:00
Julien Isorce
51231595c7
[267/906] Get ride of calling sleep in gl thread X loop
2017-12-09 19:31:20 +00:00
Julien Isorce
80efa96e52
[266/906] secure close when clicking on the cross
2017-12-09 19:31:20 +00:00
Julien Isorce
3f54cd9d94
[264/906] Rewrite gstglwindow_x11.c because X API is not thread safe.
2017-12-09 19:31:20 +00:00
Julien Isorce
14d3d10e07
[263/906] discard x custom messages which are of date
2017-12-09 19:31:20 +00:00
Julien Isorce
745e20a2e1
[262/906] Works on linux but still some bugs. Fix autotools build.
2017-12-09 19:31:20 +00:00
Julien Isorce
5ec4972d3d
[261/906] implement quit x message loop
2017-12-09 19:31:20 +00:00
Julien Isorce
baedf3a65b
[260/906] try to make XSendEvent blocker (as win32 SendMessage is)
2017-12-09 19:31:19 +00:00
Julien Isorce
cb83e88c0c
[259/906] continue x implementation (but still not tested)
2017-12-09 19:31:19 +00:00
Julien Isorce
bbc1c6b14f
[258/906] setup x message loop
2017-12-09 19:31:19 +00:00
Julien Isorce
da3c0fd570
[257/906] begin gstglwindow_x11.c implementation
2017-12-09 19:31:19 +00:00
Julien Isorce
c4200fe1a0
[256/906] fix CMake an CodeBlocks builds
2017-12-09 19:31:19 +00:00
Julien Isorce
85fa075eae
[255/906] fix window closure when using gst xoverlay interface
2017-12-09 19:31:19 +00:00
Julien Isorce
9169b822e7
[254/906] Better handle when the parent window is resizing, and cleanup some code
2017-12-09 19:31:19 +00:00
Julien Isorce
c7ca0d5c2f
[253/906] win32: re-implement supports for gst xoverlay interface, on this branch
2017-12-09 19:31:19 +00:00
Julien Isorce
f9756b85d2
[252/906] avoid a dead lock on window closure
2017-12-09 19:31:19 +00:00
Julien Isorce
fc9479d289
[251/906] Properly clean OpenGL contexts
2017-12-09 19:31:19 +00:00
Julien Isorce
a6fdb20154
[250/906] win32: basic stuffs are working now on this branch with this new deep design (gstglwindow)
2017-12-09 19:31:19 +00:00
Julien Isorce
c4c9897f16
[249/906] begin GstGLWindow in order to totally remove gstfreeglut
2017-12-09 19:31:19 +00:00
Filippo Argiolas
32de0e6e91
[243/906] Support for missing videoformats in glupload
...
Add support for missing alpha channeled videoformats (RGBA, BGRA,
ARGB, ABGR) in gst_gl_display_do_upload_fill.
2017-12-09 19:31:19 +00:00
Julien Isorce
3d54d22894
[242/906] Fix crash in filters when going to NULL with no display
2017-12-09 19:31:19 +00:00
Filippo Argiolas
f18ba293cb
[233/906] no need to explicit set the debug category if default one is used
2017-12-09 19:31:19 +00:00
Filippo Argiolas
6c04333f11
[230/906] explicit check g_getenv return value to be not NULL
2017-12-09 19:31:19 +00:00
Julien Isorce
ec8aa615e5
[229/906] update authors from the CVS repository
2017-12-09 19:31:19 +00:00
Filippo Argiolas
34663eccd9
[228/906] output shaders info log only if GST_GL_SHADER_DEBUG env variable is set. Should fix TODO task 18
2017-12-09 19:31:19 +00:00
Julien Isorce
cd20053491
[226/906] check on win32 that every tests/pipelines and tests/examples (generic, gtk, qt) still work
2017-12-09 19:31:19 +00:00
Julien Isorce
40cd0281a4
[225/906] fix a regression that made the gltestsrc element not working
2017-12-09 19:31:19 +00:00
Julien Isorce
a125004d82
[224/906] fix a regression about MESA YCbCr colorspace conversion
2017-12-09 19:31:19 +00:00
Julien Isorce
ff87048836
[223/906] fix a regression (sometimes a FBO is needed even if the video source is rgb)
2017-12-09 19:31:19 +00:00
Julien Isorce
69159fa0af
[222/906] Finish TODO task 17
2017-12-09 19:31:19 +00:00
Julien
5759b60ba3
[221/906] fix g_int_hash -> g_direct_hash
2017-12-09 19:31:19 +00:00
Julien Isorce
bb8ba84647
[220/906] Use a better key for the pool of textures
2017-12-09 19:31:19 +00:00
Julien Isorce
cdffac5606
[219/906] Use a gst debug category for GstGLDisplay instead of g_print, gst-launch-0.10 --gst-debug=gldisplay:3 videotestsrc ! glimagesink
2017-12-09 19:31:19 +00:00
Julien
88b6f0a3cf
[218/906] The CMake build now works on my Kubuntu-KDE4.1.1
2017-12-09 19:31:19 +00:00
Julien Isorce
3d6116ee45
[217/906] Add cmake build http://www.cmake.org . See CMake install instructions in the INSTALL file. (I have not correctly configured yet the CMake build for unix, BE patient)
2017-12-09 19:31:19 +00:00
Julien Isorce
0d6c956cfb
[212/906] add a glbumper (bump mapping filter through GLSL) that exposes how to use both vertex and fragment shaders
2017-12-09 19:31:19 +00:00
Julien Isorce
b4c0527eff
[211/906] Fix upload AYUV and YV12 (a regression in last commits)
2017-12-09 19:31:18 +00:00
julien User
97a78f8580
[210/906] get ride of a wrong color on nvidia/linux when converting yv12 to rgb through GLSL
2017-12-09 19:31:18 +00:00
julien User
5d93e53f47
[209/906] fix warnings
2017-12-09 19:31:18 +00:00
Julien Isorce
a0cd1d279f
[208/906] fix upload AYUV, regression during the 2 last commits
2017-12-09 19:31:18 +00:00
Julien Isorce
ddf4cdd2df
[207/906] oups, fix my mistake on last commit
2017-12-09 19:31:18 +00:00
unknown
1b8b53fb1c
[206/906] Do not use frame buffer object when "input video is RGB" or when "GLSL is not available and YCbCr is available". So frame buffer object is not a plugin requirement anymore. So I decreased the OpengGL version from 1.4 to 1.2 (maybe less?)
2017-12-09 19:31:18 +00:00
Julien Isorce
35d1c73109
[205/906] use a GHash table instead of a GData for the texture pool
2017-12-09 19:31:18 +00:00
Julien Isorce
2f01ea128f
[204/906] get ride of a bug on ATI related to YV12 to rgb conversion through GLSL and add an example
2017-12-09 19:31:18 +00:00
Filippo Argiolas
0adee75dce
[201/906] fix a signedness warning
2017-12-09 19:31:18 +00:00
Julien Isorce
3ae1ec7c00
[200/906] get ride of a ATI bug related to GLSL colorspace conversion for I420 and YV12 to rgb
2017-12-09 19:31:18 +00:00
Filippo Argiolas
4440a3cfed
[171/906] import fxtest (little gtk app to easily test effects) from cvs branch, fixed rgbtocurve.
2017-12-09 19:31:18 +00:00
Julien Isorce
91870f6d34
[157/906] move thread_do_upload_make from thread_do_upload to thread_init_upload
2017-12-09 19:31:18 +00:00
Julien Isorce
e6db0628e8
[156/906] fix a crash that could happens when using at least 2 gl context and when closing a window on linux
2017-12-09 19:31:18 +00:00
Filippo Argiolas
52a646f240
[153/906] Try to genereate textures within gstglfilterblur to see if the new thread_use_fbo works both with textures from the pool and custom ones
2017-12-09 19:31:18 +00:00
Filippo Argiolas
dbcb82d8b2
[152/906] remove an unneeded (really?) glTexImage
2017-12-09 19:31:18 +00:00
Julien Isorce
712e7626b7
[151/906] ISO C90
2017-12-09 19:31:18 +00:00
Julien Isorce
1a7a34b5c0
[150/906] glTexImage2D(w, h, NULL) is now called only one time (mem alloc)
2017-12-09 19:31:18 +00:00
Filippo Argiolas
46812f8be9
[149/906] same as previous commit
2017-12-09 19:31:18 +00:00
Filippo Argiolas
6a9d6de71f
[148/906] Fix rgb issue. Current program should always be set to 0 when a new texture is attached to a fbo.
2017-12-09 19:31:18 +00:00
Julien Isorce
4629bf1bc5
[146/906] remove filteredge
2017-12-09 19:31:18 +00:00
Filippo Argiolas
ce17f1a2db
[143/906] Add init and reset callbacks in GstGLFilter to run arbitrary gl code at start and stop. Useful to init and cleanup custom gl resources.
2017-12-09 19:31:18 +00:00
Filippo Argiolas
a54a462705
[142/906] Add a generic action to be able to execute arbitrary gl code within the gl thread with less pain
2017-12-09 19:31:18 +00:00
Filippo Argiolas
4eb4c0beea
[141/906] some steps towards simplification. added a convenience function to gstglfilter and some comment here and there
2017-12-09 19:31:18 +00:00
Filippo Argiolas
7ea58ac050
[140/906] Fix GL_STACK_OVERFLOW
2017-12-09 19:31:18 +00:00
Julien Isorce
e0f1cfeac5
[139/906] fix warnings when compiling upload/download shaders
2017-12-09 19:31:18 +00:00
Filippo Argiolas
b384525a55
[138/906] is that videoformat pointer really needed?
2017-12-09 19:31:18 +00:00
Filippo Argiolas
14849d65ea
[137/906] Don't reallocate texture memory every time in upload_* functions.
2017-12-09 19:31:18 +00:00
Filippo Argiolas
395ea4fa2a
[136/906] reindent gstgldisplay with gstreamer-c-mode
2017-12-09 19:31:18 +00:00
Julien Isorce
db7490cd72
[133/906] finish todo task 4
2017-12-09 19:31:18 +00:00
Julien Isorce
d0e63e68ac
[132/906] make the plugin properly shutdown when one of the check requirements failed
2017-12-09 19:31:18 +00:00
Filippo Argiolas
9b45dcae3e
[131/906] fix warnings (unused vars)
2017-12-09 19:31:18 +00:00
Julien Isorce
ffbc182446
[130/906] use GstGLShader in the GLSL colorspace conversion
2017-12-09 19:31:17 +00:00
Julien Isorce
de6eb8677e
[128/906] add GstGLShader stuffs in the vs8 project, fix laplacian fragment code to make it compile on ATI, and fix check function about Opengl and Glew version
2017-12-09 19:31:17 +00:00
Filippo Argiolas
c47fa4dc62
[127/906] Imported GstGLShader from cvs branch. Added a demo laplacian convolution filter to demonstrate how this can be integrated with minimum effort.
2017-12-09 19:31:17 +00:00
David Schleef
4f39df0532
[126/906] Change some guints to GLuints because of warnings on OS/X.
2017-12-09 19:31:17 +00:00
David Schleef
9f305eecb8
[125/906] Add libraries as appropriate to fix compilation
2017-12-09 19:31:17 +00:00
Julien Isorce
69abbdd760
[123/906] X Specific: better implementation of the gst_gl_set_window_id
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@584 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
a5bf134265
[122/906] better implementation of gst_gl_display_set_window_id for win32. (change the window of the current wglcontext instead of reinit everything, and so avoid some problems about opengl objects that could be init in the previous wglcontext and so no usable in the newer wglcontext, it what the case for the first texture) This newer implementation has not been made yet on linux
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@582 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
ed46d70150
[121/906] avoid use of GLSL functions when fragment_shader is not available
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@581 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
cbd66b24c8
[120/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@580 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
8b14eea6ec
[119/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@579 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
f4b54bd934
[118/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@573 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
7a063dd47f
[116/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@563 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
908e74de67
[115/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@556 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
a192d39638
[114/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@555 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
a903f96e15
[113/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@554 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
8807e62119
[112/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@552 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
edda6cc72d
[111/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@548 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
886bd3ee7d
[109/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@543 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
49e944778e
[108/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@540 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
18177e6c46
[107/906] fix opengl version checker
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@534 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
49970b27aa
[105/906] up Sobel filter and gl/glew version checker
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@518 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
8685e547b4
[104/906] start to add a glfilteredge that proceeds edge detection using GLSL
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@517 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
e9f924910c
[096/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@508 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
e74175e328
[095/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@507 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
e34a278e35
[094/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@506 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
b63a97c50c
[092/906] Finish to revive the gltestsrc. Next step is to do some refactoring.
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@504 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
bca92ed962
[091/906] start to revive the gltestsrc
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@503 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
f5f2e51a31
[088/906] fix some caps negociations those pipelines works fine : gst-launch-0.10 -v videotestsrc ! video/x-raw-yuv, width=320, height=240 ! glgraphicmaker ! video/x-raw-gl, width=720 , height=576 ! glfiltercube ! glimagesink and gst-launch-0.10 -v videotestsrc ! video/x-raw-yuv, width=320, height=240 ! glgraphicmaker ! video/x-raw-gl, width=720 , height=576 ! glimagesink
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@500 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
1e2ca1dfde
[087/906] glfilter can accept to have an input size different than the out put size : video/x-raw-gl, width=w1, height=w1 ! glfilter ! video/x-raw-gl, width=w2, height=w2 ! (fix every examples)
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@499 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
2c12b6f41e
[086/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@498 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:17 +00:00
Julien Isorce
4fb5b5bde1
[085/906] fix regressions about glvideomaker.
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@497 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
7973568f07
[084/906] add a glfilterapp which holds the client draw and reshape callbacks (some "wanted" regressions about the glvideomaker, have been done with this version. Will be fix in next commits)
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@496 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
dc4119eafe
[083/906] finish to implement the glfilter: example : gst-launch-0.10 videotestsrc num_buffers = 100 ! glgraphicmaker ! glfiltercube ! glimagesink
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@495 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
f580bb77f4
[082/906] glfilter can request, use and reject a FBO (step 1)
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@494 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
d01ae3ed0b
[081/906] start to add a glfilter
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@493 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
392ab37b94
[080/906] fix gstfreeglut linux implementation to correctly handle the gstxoverlay interface
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@486 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
89cd65d3ae
[079/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@478 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
74a71c67c2
[077/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@475 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
0c83068521
[076/906] check OpenGL and Glew versions
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@474 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
890ca473e1
[075/906] indent
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@451 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
60498e3370
[074/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@446 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
a32ff29e64
[073/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@445 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
d7d5b16051
[072/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@438 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
a9686159a3
[071/906] remove all warnings
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@437 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
7ce0cbad40
[070/906] implement and fix onClose: when a user click on the cross of an internal window (there is not this issue when using the gstxoverlay interface)
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@436 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
ee488f6e6f
[069/906] add gstreamer license
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@435 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
708918b3ec
[066/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@430 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
f386219271
[065/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@428 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
124521e2de
[063/906] up
...
git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@423 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
Julien Isorce
f0e8c70845
[062/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@421 93df14bb-0f41-7a43-8087-d3e2a2f0e464
2017-12-09 19:31:16 +00:00
David Schleef
98e2942fed
[061/906] First SVN commit. This commit is a hack to make git-rebase work
2017-12-09 19:31:16 +00:00
Tim-Philipp Müller
01d6f2818c
[060/906] * gst-libs/gst/gl/gstglbuffer.c: (gst_gl_buffer_format_from_video_format): Fix compiler warning if there are video format enums gstglbuffer doesn't know about yet. * gst-libs/gst/gl/gstgldisplay.c: (gst_gl_display_upload_texture_rectangle), (gst_gl_display_draw_texture): Fix printf format for 64-bit integers.
2017-12-09 19:31:16 +00:00
Tim-Philipp Müller
71e5427e06
[058/906] * gst-libs/gst/gl/Makefile.am: The library needs to link against libgstvideo-0.10. * gst/gl/Makefile.am: The plugin does not (I think) need to link against GL or libgstvideo, since our new gstreamer GL library already does that, but it does need to link against our brand-new libgstgl-0.10.
2017-12-09 19:31:16 +00:00
David Schleef
894db7a964
[056/906] * configure.ac: Readd pre-pkgconfig OpenGL detection, since pkgconfig requires Mesa from git master. * gst/gl/glimagesink.c: * gst/gl/gstopengl.c: Move debug category initialization to element. * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: Move glfilter to library. * pkgconfig/gstreamer-plugins-gl.pc.in: Add gstreamer-base-0.10 as a requirement. * po/en.po: Update.
2017-12-09 19:31:16 +00:00
Tim-Philipp Müller
2134ce8c9c
[055/906] * configure.ac: * docs/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: * tests/Makefile.am: Fix compilation in uninstalled setup and some distcheck-y bits (not all though).
2017-12-09 19:31:16 +00:00
David Schleef
e0f6fa8e62
[054/906] Fixes to make project compile. Probably still doesn't work. * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/Makefile.am: * gst/gl/Makefile.am: * gst/gl/gstgltestsrc.c: * po/LINGUAS: * win32/MANIFEST:
2017-12-09 19:31:16 +00:00
David Schleef
d2dd3ef923
[053/906] Add project infrastructure. Not complete, doesn't work. * .cvsignore: * AUTHORS: * COPYING: * COPYING.LIB: * INSTALL: * Makefile.am: * NEWS: * README: * RELEASE: * REQUIREMENTS: * autogen.sh: * configure.ac: * docs/.cvsignore: * docs/Makefile.am: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: * docs/version.entities.in: * ext/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-plugins-gl.doap: * gst-plugins-gl.spec.in: * gst/Makefile.am: * m4/.cvsignore: * m4/Makefile.am: * pkgconfig/.cvsignore: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-gl-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-gl.pc.in: * sys/Makefile.am: * tests/Makefile.am: * tests/check/Makefile.am: * tests/examples/Makefile.am: * tests/icles/Makefile.am: * tools/Makefile.am: * win32/common/config.h.in:
2017-12-09 19:31:16 +00:00
David Schleef
e0fc0cebe6
[052/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstglupload.c: Handle xoverlay exposes correctly. This means glimagesink works correctly most of the time in totem (fullscreening being an execption). Doesn't handle expose events directly to the GL window.
2017-12-09 19:31:16 +00:00
David Schleef
45d3247a68
[051/906] * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstopengl.c: Reenable video/x-raw-rgb and x-raw-yuv for glimagesink. Enable vblank synchronization. Remove unused code.
2017-12-09 19:31:16 +00:00
David Schleef
6fd801ba2a
[049/906] * configure.ac: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Major cleanup of code. Convert glupload to BaseTransform. Handle caps negotiation mostly correctly. Reenable in build.
2017-12-09 19:31:16 +00:00
David Schleef
2a6bf50ba7
[047/906] * sys/glsink/gltestsrc.c: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Convert gldownload to BaseTransform. Make glfilterexample visually interesting. Add support for various formats to downloading. Fix a few places where we leak GL state to other elements (bad, but hard to prevent).
2017-12-09 19:31:15 +00:00
David Schleef
5e620c9673
[046/906] * sys/glsink/BUGS: * sys/glsink/Makefile.am: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Remove code that handles non-texture buffers. Add a GstGLBufferFormat type that corresponds to how to use the texture, not the original video format. Convert gstflfilter.c into a base class, add glfilterexample and glconvert elements. * sys/glsink/color_matrix.c: Minor ramblings about color conversion matrices.
2017-12-09 19:31:15 +00:00
David Schleef
c46924bb35
[045/906] * sys/glsink/Makefile.am: * sys/glsink/gltestsrc.c: * sys/glsink/gltestsrc.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstgltestsrc.h: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Add gltestsrc element, a duplicate of videotestsrc that uses GL rendering to create images. More cleanup.
2017-12-09 19:31:15 +00:00
David Schleef
f19f6cc1ab
[044/906] * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: Clean up code. Fix a few leaks.
2017-12-09 19:31:15 +00:00
David Schleef
de7967f306
[043/906] * sys/glsink/Makefile.am: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: Rename glvideo.[ch] to gstgldisplay.[ch].
2017-12-09 19:31:15 +00:00
David Schleef
7e42503811
[042/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download, filtering all work.
2017-12-09 19:31:15 +00:00
David Schleef
c4a58e40e1
[041/906] * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglupload.c: A careful read of the documentation reveals that I can't use renderbuffers as textures. Duh. Checkpoint because I'm about to rewrite a bunch of code.
2017-12-09 19:31:15 +00:00
David Schleef
4c892cb683
[040/906] * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Switch to using framebuffer_objects instead of GLXPixmaps, because that's what my driver supports. Remove GLDrawable, since GstGLDisplay now has a default drawable and context.
2017-12-09 19:31:15 +00:00
David Schleef
d41abaed50
[037/906] * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: Add vblank synchronization. Isn't really working on my driver. :(
2017-12-09 19:31:15 +00:00