Commit graph

27 commits

Author SHA1 Message Date
Raimo Järvi
fa18db91ed [501/906] Fix building on 64 bit mingw-w64
https://bugzilla.gnome.org/show_bug.cgi?id=676428
2014-03-15 18:36:44 +01:00
Julien Isorce
7e45f26a21 [494/906] cmake build: use config.h from win32/common and add some guidelines 2014-03-15 18:36:43 +01:00
Julien Isorce
201d3992d2 [492/906] glwindow: properly fails if resource not found 2014-03-15 18:36:43 +01:00
Julien Isorce
2394987226 [490/906] gldisplay: error out instead of g_assert 2014-03-15 18:36:43 +01:00
Nicholas Panayis
e6195bf5a3 [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
2014-03-15 18:36:39 +01:00
Julien Isorce
8937128d62 [412/906] Cocoa backend: improve support on GNUStep 2014-03-15 18:36:38 +01:00
Julien Isorce
62f961a28e [389/906] fix codeblocks build on win32 2014-03-15 18:36:37 +01:00
Julien Isorce
db7d436bd8 [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.
2014-03-15 18:36:37 +01:00
Julien Isorce
6292d5af16 [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.
2014-03-15 18:36:35 +01:00
LRN
d1893e0e7e [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.
2014-03-15 18:36:35 +01:00
Julien Isorce
58e392f129 [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.
2014-03-15 18:36:34 +01:00
Julien Isorce
911cf141c4 [334/906] [win32/winCE] fix some pointer cast warnings with mingw
And turn off deprecated Wp64 msvc compiler option.
2014-03-15 18:36:34 +01:00
Julien Isorce
87a1652216 [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
2014-03-15 18:36:34 +01:00
Julien Isorce
b5778a90d7 [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.
2014-03-15 18:36:33 +01:00
David Schleef
d015d5862d [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"
2014-03-15 18:36:33 +01:00
David Schleef
43e574aa8f [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.
2014-03-15 18:36:32 +01:00
Sebastian Dröge
369b1d4ff2 [295/906] Fix indention 2014-03-15 18:36:32 +01:00
Julien Isorce
7975cac1ea [286/906] [win32] Register window class in gst_gl_window_class_init 2014-03-15 18:36:31 +01:00
Julien Isorce
1fbc72393c [281/906] Make cube example work on x11. Finish TODO task 9. 2014-03-15 18:36:31 +01:00
Julien Isorce
c8c7f8733b [280/906] Remove set_visible, because it's now automatically done when the first post redisplay comes. 2014-03-15 18:36:31 +01:00
Julien Isorce
9be9daa754 [255/906] fix window closure when using gst xoverlay interface 2014-03-15 18:36:29 +01:00
Julien Isorce
3f4aa11d82 [254/906] Better handle when the parent window is resizing, and cleanup some code 2014-03-15 18:36:29 +01:00
Julien Isorce
f4bfade861 [253/906] win32: re-implement supports for gst xoverlay interface, on this branch 2014-03-15 18:36:29 +01:00
Julien Isorce
5a84fd49a9 [252/906] avoid a dead lock on window closure 2014-03-15 18:36:29 +01:00
Julien Isorce
2c9bb405a0 [251/906] Properly clean OpenGL contexts 2014-03-15 18:36:29 +01:00
Julien Isorce
c330210648 [250/906] win32: basic stuffs are working now on this branch with this new deep design (gstglwindow) 2014-03-15 18:36:29 +01:00
Julien Isorce
42255b64aa [249/906] begin GstGLWindow in order to totally remove gstfreeglut 2014-03-15 18:36:29 +01:00