Commit graph

2830 commits

Author SHA1 Message Date
Reynaldo H. Verdejo Pinochet
2b706d3fbe eglglessink: Avoid setting height or width twice 2012-10-18 14:35:15 +02:00
Reynaldo H. Verdejo Pinochet
eeb3b84d07 eglglessink: Use PAR/DAR to set viewport 2012-10-18 14:35:15 +02:00
Sebastian Dröge
c3fb44aef3 eglglessink: Correctly resize if the surface dimensions change 2012-10-18 14:35:15 +02:00
Sebastian Dröge
3fcea0dc5e eglglessink: Update surface dimensions on every buffer 2012-10-18 14:35:15 +02:00
Sebastian Dröge
2b2ae0fd6f eglglessink: More consistent naming of shader related variables 2012-10-18 14:35:15 +02:00
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