Commit graph

13044 commits

Author SHA1 Message Date
Sebastian Dröge 1ad253b9b7 eglglessink: Some variable name cleanup 2012-10-18 14:35:15 +02:00
Sebastian Dröge e8f4829c13 eglglessink: Remove default-width/height properties
These are completely unneeded
2012-10-18 14:35:15 +02:00
Sebastian Dröge 985a185ffc eglglessink: Fix double free() 2012-10-18 14:35:15 +02:00
Sebastian Dröge b5b98fc874 eglglessink: Don't leak EGL/ES render context 2012-10-18 14:35:15 +02:00
Reynaldo H. Verdejo Pinochet bab81de275 eglglessink: Put EGL/GLES context vars on their own struct 2012-10-18 14:35:15 +02:00
Reynaldo H. Verdejo Pinochet 5526737ec8 eglglessink: Small TODO reformatting 2012-10-18 14:35:15 +02:00
Reynaldo H. Verdejo Pinochet e8ed9e1097 eglglessink: Add TODO file 2012-10-18 14:35:15 +02:00
Sebastian Dröge 2323c40f1b eglglessink: Correctly implement ::expose()
We don't need the past buffer for this, the old one is still available
as texture and we just need to draw our rectangle again.
2012-10-18 14:35:15 +02:00
Sebastian Dröge 18e473307f eglglessink: Allow setting another window for the next time we reconfigure everything 2012-10-18 14:35:14 +02:00
Sebastian Dröge aa463f0274 eglglessink: Also unref current caps after usage 2012-10-18 14:35:14 +02:00
Sebastian Dröge c2de59b19c eglglessink: Implement support for caps changes 2012-10-18 14:35:14 +02:00
Sebastian Dröge d91621d2ce eglglessink: More cleanup and making the element reusable 2012-10-18 14:35:14 +02:00
Sebastian Dröge 56b711bd29 eglglessink: Properly init/release resources when going from NULL->READY and the other way around 2012-10-18 14:35:14 +02:00
Sebastian Dröge 15c93da54e eglglessink: Generate the sink caps exactly once 2012-10-18 14:35:14 +02:00
Sebastian Dröge ad6e314a6e eglglessink: Fix code style a bit to stop confusing indent 2012-10-18 14:35:14 +02:00
Sebastian Dröge 4e637ddb7b eglglessink: Fix support for YUY2 and UYVY 2012-10-18 14:35:14 +02:00
Sebastian Dröge 9e094541b0 eglglessink: Some property cleanup 2012-10-18 14:35:14 +02:00
Sebastian Dröge 25eb488f30 eglglessink: Add support for the remaining RGB formats 2012-10-18 14:35:14 +02:00
Sebastian Dröge 11368b49b2 eglglessink: Add support for Y444, Y42B and Y41B, just because it's so easy 2012-10-18 14:35:14 +02:00
Sebastian Dröge d98d5c657e eglglessink: Add some simple TODOs 2012-10-18 14:35:14 +02:00
Reynaldo H. Verdejo Pinochet 98b9862167 eglglessink: Lock while altering display region coords 2012-10-18 14:35:14 +02:00
Reynaldo H. Verdejo Pinochet a2fce44139 eglglessink: Fix _get_compat_format_from_caps() logic
It's a getter so it shouldn't messing with the sink context.
Adding insult to injury it was setting selected_fmt without
locking.
The associated changes to the buffer functions are merely
make-it build fixes. Those functions are barely drafted
and in WIP state.
2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet 47d0505f40 eglglessink: Drop unneded initial set to NULL 2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet 0c681dc2a6 eglglessink: Minor formatting and comment fixes 2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet 63d8cd88c7 eglglessink: Clean-up gl/egl allocations at _stop()
Also, conditionaly destroy window if the sink created its own.
2012-10-18 14:35:13 +02:00
Sebastian Dröge 99765c3333 eglglessink: Add support for NV12 and NV21
Also YUY2 and UYVY but this is disabled for now as it
doesn't work completely yet. Something is wrong with
the chroma.
2012-10-18 14:35:13 +02:00
Sebastian Dröge 72d05a681f eglglessink: Add support for I420 and YV12 color formats 2012-10-18 14:35:13 +02:00
Sebastian Dröge d3995c1a7b eglglessink: Preparations for supporting multiple textures for more YUV formats 2012-10-18 14:35:13 +02:00
Sebastian Dröge 3f734aafc7 eglglessink: Use the attrib locations as really used inside the shader 2012-10-18 14:35:13 +02:00
Sebastian Dröge 24261a4fe7 eglglessink: Really decouple vertex and texture positions in the shader 2012-10-18 14:35:13 +02:00
Sebastian Dröge dafcdb0da3 eglglessink: Decouple texture and vertex positions 2012-10-18 14:35:13 +02:00
Sebastian Dröge cb034b2ecd eglglessink: Reorder vertex value order to make a bit more sense 2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet 8018681187 eglglessink: Handle frame scaling to fill surface 2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet 90d5b76dc5 eglglessink: Draft set_render_rectangle() from the xOverlay interface 2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet f8b69a7c7f eglglessink: Remove stale comment 2012-10-18 14:35:13 +02:00
Reynaldo H. Verdejo Pinochet 1c008e95b3 eglglessink: Move VBO setup to setcaps 2012-10-18 14:35:12 +02:00
Reynaldo H. Verdejo Pinochet d56d126031 eglglessink: Don't do context ops at render
We don't need to repeatedly call
eglMakeCurrent() while using the
same context anyway.
2012-10-18 14:35:12 +02:00
Reynaldo H. Verdejo Pinochet ca74f676fd eglglessink: Don't clear surface color at render 2012-10-18 14:35:12 +02:00
Sebastian Dröge 9e23d0fc87 eglglessink: Rename shader variables to make more sense 2012-10-18 14:35:12 +02:00
Sebastian Dröge d42d5e1139 eglglessink: Add support for AYUV 2012-10-18 14:35:12 +02:00
Sebastian Dröge c4643491c4 eglglessink: Reorder caps a bit to make more sense 2012-10-18 14:35:12 +02:00
Sebastian Dröge 6adf608c99 eglglessink: Set rank to PRIMARY 2012-10-18 14:35:12 +02:00
Sebastian Dröge 1c58d921ff eglglessink: Add support for RGBA 2012-10-18 14:35:12 +02:00
Sebastian Dröge 930b4c179e eglglessink: Correctly generated caps for the supported formats 2012-10-18 14:35:12 +02:00
Sebastian Dröge f9a5fc255d eglglessink: Add ::get_caps() vfunc that returns the actually supported caps 2012-10-18 14:35:12 +02:00
Sebastian Dröge 86ebf86433 eglglessink: Also require a configuration with EGL_SURFACE_TYPE containing EGL_WINDOW_BIT 2012-10-18 14:35:12 +02:00
Sebastian Dröge 7e8cc569dd eglglessink: Fix compiler warnings 2012-10-18 14:35:12 +02:00
Reynaldo H. Verdejo Pinochet 19c3b4d892 eglglessink: Clear surface to black by default 2012-10-18 14:35:12 +02:00
Reynaldo H. Verdejo Pinochet 19739bfb74 eglglessink: Make sure we get a config we can use with GLES2 2012-10-18 14:35:12 +02:00
Reynaldo H. Verdejo Pinochet 24b926a6cc eglglessink: set_window_handle() has been tested to work now 2012-10-18 14:35:11 +02:00