Nirbheek Chauhan
a3d58818e8
Fix various gboolean vs GstFlowReturn problems
...
Caught by building with MSVC which gave warnings for these
2016-07-11 15:02:06 +01:00
Edward Hervey
e4c955e4d7
adaptivedemux: Also consider more seek flags as "snap" seeks
...
In the case of KEY_UNIT and TRICKMODE_KEY_UNITS seeks, we want to
"snap" to the closest fragment.
Without this, we end up pushing out a segment which does not match
the first fragment timestamp being pushed out, resulting in one or
more buffers being eventually dropped because they are out of segment.
2016-07-07 17:28:57 +02:00
Sebastian Dröge
43a2ee8948
adaptivedemux: Add custom flow return for allowing subclasses to specify when a fragment is finished
...
If it is finished before upstream going EOS.
https://bugzilla.gnome.org/show_bug.cgi?id=767365
2016-07-01 14:11:51 +02:00
Sebastian Dröge
ca9f62e1d0
adaptivedemux: Get rid of internal stream adapter and let subclasses handle this directly
...
This allows subclasses to have more control and especially ensure that they
push data downstream with the correct offsets.
https://bugzilla.gnome.org/show_bug.cgi?id=764684
2016-07-01 14:10:31 +02:00
Tim-Philipp Müller
e92894e4ab
codecparsers: jpeg2000: don't allow 0 value for array access with i-1
2016-07-01 12:20:14 +01:00
Tim-Philipp Müller
1462ac7cdf
codecparsers: jpeg2000: fix possible out-of-bounds array access
...
sizeof(array) != G_N_ELEMENTS(array).
CID 1362900
2016-07-01 12:15:28 +01:00
Matthew Waters
087bb0ed6a
glviewconvert: fix transformation matrix usage
...
Calling glUniformMatrix before the shader is bound is invalid and
would result in errors like:
GL_INVALID_OPERATION in glUniformMatrix(program not linked)
Move glUniformMatrix() to after the gst_gl_shader_use() call.
2016-06-30 21:54:03 +10:00
Matthew Waters
e0ecd774dd
glupload: fix raw data uploader with addition of GstVideoGLTextureType
...
Fixes regression from 989200820d
https://bugzilla.gnome.org/show_bug.cgi?id=768217
2016-06-30 14:07:32 +10:00
Olivier Crête
461201c396
glvideoconvert: RG/LA is available in OpenGL ES 3, so let that through
2016-06-29 23:55:18 -04:00
Matthew Waters
5592a966c6
Revert "Revert "gl/eagl: try getting a gles3 context""
...
This reverts commit eb14273631
.
vtdec now successfully outputs textures that can be converted by
glcolorconvert in GLES3 contexts.
2016-06-29 18:04:28 +10:00
Matthew Waters
989200820d
glmemory: add the texture type to allocate to parameters
...
Rather than assuming something. e.g. zerocopy on iOS with GLES3 requires
the use of Luminance/Luminance Alpha formats and does not work with
Red/RG textures.
2016-06-29 18:04:28 +10:00
Matthew Waters
6958b7a014
glcolorconvert: don't assume Red/RG textures will be used
...
Take the used texture type from the memory instead.
Fixes conversion from multi-planar YUV formats with two components per plane
(NV12, NV21, YUY2, UYVY, GRAY16_*, etc) with Luminance Alpha input textures.
This is also needed for zerocopy decoding on iOS with GLES 3.x.
2016-06-29 18:04:28 +10:00
Matthew Waters
b9cdc9d4b0
glcontext: correct precondition for get_gl_version
...
The intention was to assert if both maj and min were NULL (as there would be no
point calling the function). Instead if either maj or min were NULL, the assert
would occur.
Fix that.
2016-06-29 18:04:28 +10:00
Luis de Bethencourt
276dd2750f
jpeg2000parse: fix typo in sampling check
...
Fixing small typo that changes the value of the return.
2016-06-28 12:12:29 +02:00
Aaron Boxer
e7e6a3579d
jpeg2000parse: use enums for colorspace and sampling, rather than strings
...
Also, move gstjpeg2000sampling to codecparsers project
https://bugzilla.gnome.org/show_bug.cgi?id=767908
2016-06-24 11:23:31 +03:00
Sebastian Dröge
0e58e86c4c
eglimage: Only register debug category if dmabuf support is enabled
...
It's not used otherwise currently and causes compiler warnings.
2016-06-23 16:00:00 +03:00
Wang Xin-yu (王昕宇)
6ed2ca373a
glcontext/wgl: try wglCreateContextAttribsARB even not gl3 core profile
...
https://bugzilla.gnome.org/show_bug.cgi?id=764018
2016-06-21 22:57:13 +10:00
Matthew Waters
8a67cd90b3
glcontext: fix get_current_gl_api() on win32
...
Another case of incorrect calling conventions.
Using this function on win32 would corrupt the stack pointer and end in
massive hilarity.
2016-06-21 22:57:00 +10:00
Matthew Waters
d3f3787d64
glsl: fixup external-oes shaders by mangling the required extension
...
Newer devices require using a different GLSL extension for accessing
external-oes textures in a shader using the texture() functions.
While the GL_OES_EGL_image_external_essl3 should supposedly be supported
on a any GLES3 android device, the extension was defined after a lot of the
older drivers were built so they will not know about it. Thus there are two
possible interpretations of which of texture[2D]() should be supported for
external-oes textures. Strict adherence to the GL_OES_EGL_image_external
extension spec which uses texture2D() or following GLES3's pattern, also
allowing texture() as a function for accessing external-oes textures
This adds another mangling pass to convert
#extension GL_OES_EGL_image_external : ...
into
#extension GL_OES_EGL_image_external_essl3 : ...
on GLES3 and when the GL_OES_EGL_image_external_essl3 extension is supported.
Only uses texture() when the GLES3 and the GL_OES_EGL_image_external_essl3
extension is supported for external-oes textures.
Uses GLES2 + texture2D() + GL_OES_EGL_image_external in all other external-oes
cases.
https://bugzilla.gnome.org/show_bug.cgi?id=766993
2016-06-21 21:27:47 +10:00
Guillaume Desmottes
172529e151
audioaggregator: fix buffer leak
...
If the pad was still owning a buffer when being destroyed it was leaked.
Fix a leak with the test_flush_start_flush_stop test.
https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Michael Olbrich
378051d80a
h264parse: fix default time_offset_length
...
The default value for time_offset_length should be 24, see
section E2.2 of the H264 spec.
https://bugzilla.gnome.org/show_bug.cgi?id=767792
2016-06-21 10:45:43 +03:00
Reynaldo H. Verdejo Pinochet
ea272f0bac
codecparsers: drop all otherwizes
2016-06-17 15:58:09 -07:00
Sergey Borovkov
180405714c
qml: Enable qmlglsink for eglfs
...
https://bugzilla.gnome.org/show_bug.cgi?id=763044
2016-06-16 01:49:16 +10:00
Matthew Waters
861ce43cd8
glsl: add some debugging
2016-06-15 18:10:59 +10:00
Matthew Waters
27e4288de4
glutils: remove unused functions for texture creation/deletion
...
Everyone uses GstGLMemory now and any future code should as well.
2016-06-15 16:08:57 +10:00
Matthew Waters
216b8eea6c
glfilter: remove unused class fields in/out_tex_id
...
The functionality is not used by any subclass nor are the values set anywhere.
2016-06-15 15:47:47 +10:00
Matthew Waters
6b7f94abb2
gl/upload/meta: remove unneeded texture deletion
...
The textures are managed by the GstGLMemory inside the output buffer. Freeing
them prematurely may result in a use-after-free.
2016-06-15 14:40:40 +10:00
Edward Hervey
deb686cfe1
adaptivedemux: Move SEEK handling to a separate function
...
Just for code readability. Doesn't change behaviour
2016-06-09 19:25:26 +03:00
Edward Hervey
9296b26095
adaptivedemux: Set DISCONT on startup, resume and after seeks
...
Initial buffers after STREAM_START and seeks should always have the
DISCONT flag set.
https://bugzilla.gnome.org/show_bug.cgi?id=766650
2016-06-06 13:07:30 +03:00
Sebastian Dröge
a40ecc1168
player: pause() should not inhibit signals but work exactly like play()
...
https://bugzilla.gnome.org/show_bug.cgi?id=766607#c23
2016-06-06 11:13:00 +03:00
Guillaume Desmottes
991d9a6f5f
gst-libs: gl, video: use MAY_BE_LEAKED flag
...
https://bugzilla.gnome.org/show_bug.cgi?id=767162
2016-06-03 00:59:12 +01:00
Guillaume Desmottes
0467923415
player: inhibit signals after gst_player_stop() has been called
...
Also wait for the state change to STOP to have been announced before
destroying the player so it won't appear as leaked by leak detector
tools.
https://bugzilla.gnome.org/show_bug.cgi?id=766607
2016-05-30 12:43:22 +03:00
Havard Graff
63a05aff6a
gl: glquery: cast to silence compiler warning
...
https://bugzilla.gnome.org/show_bug.cgi?id=766973
2016-05-28 22:28:06 +01:00
Havard Graff
45a832686b
player: use correct _NONE enum
...
https://bugzilla.gnome.org/show_bug.cgi?id=766973
2016-05-28 21:16:27 +01:00
Tim-Philipp Müller
1b58bbf3ad
h264parser: maintain minimal ABI compat
...
Because we can.
https://bugzilla.gnome.org/show_bug.cgi?id=723352
2016-05-28 10:54:13 +01:00
Sebastian Dröge
b5f8b556e9
h264parser: Remove unused fps_num/fps_den fields
...
Instead the newly added function should be used to calculate
the framerate properly.
https://bugzilla.gnome.org/show_bug.cgi?id=723352
2016-05-28 10:54:01 +01:00
Matthew Waters
e597e45008
gldisplay: always unref the context on a collision
...
Otherwise we will leak GstGLContext's when adding the same context more than
once.
Fixes a regression caused by 5f9d10f603
in the
gstglcontext unit test that failed with:
Assertion 'tmp == NULL' failed
2016-05-26 20:19:13 +10:00
Nicolas Dufresne
ff3b60a969
Revert "aggregator: Start the task when linked"
...
This reverts commit 302580c381
.
2016-05-25 13:38:47 -04:00
Nicolas Dufresne
302580c381
aggregator: Start the task when linked
...
Until now we would start the task when the pad is activated. Part of the
activiation concist of testing if the pipeline is live or not.
Unfortunatly, this is often too soon, as it's likely that the pad get
activated before it is fully linked in dynamic pipeline.
Instead, start the task when the first serialized event arrive. This is
a safe moment as we know that the upstream chain is complete and just
like the pad activation, the pads are locked, hence cannot change.
https://bugzilla.gnome.org/show_bug.cgi?id=757548
2016-05-25 13:35:00 -04:00
Xavier Claessens
b2cfc56e83
gl: win32: Add debug category in gstglcontext_wgl.c
...
https://bugzilla.gnome.org/show_bug.cgi?id=766867
2016-05-25 23:10:44 +10:00
Haihua Hu
a5cb746983
glimagesink: support video rotation using transform matrix
...
Add "rotate-method" to glimagesink and apply transform matrix
to vertex coordinate to control rotation.
https://bugzilla.gnome.org/show_bug.cgi?id=765795
2016-05-25 18:28:20 +10:00
Matthew Waters
5f9d10f603
gldisplay: add some debugging about retrieving GL contexts
2016-05-25 18:28:20 +10:00
Sebastian Dröge
6f9b9e153a
eglimage: Re-add accidentially removed GST_DEFINE_MINI_OBJECT_TYPE()
2016-05-25 10:01:38 +03:00
Guillaume Desmottes
586509d486
player: fix suburi getter debug message
...
The property is a string, not a boolean.
https://bugzilla.gnome.org/show_bug.cgi?id=766607
2016-05-25 09:55:28 +03:00
Sebastian Dröge
3af9fd7322
player: Don't set subtitle URI directly but dispatch to the player thread
...
Otherwise we do state changes and everything in the application thread, which
might block and more important can cause reentrant signals.
https://bugzilla.gnome.org/show_bug.cgi?id=766607
2016-05-25 09:53:15 +03:00
Sebastian Dröge
b730f7e89d
eglimage: Ensure that the debug category is always initalized
...
Before the initializer was only run if dmabuf support was used.
https://bugzilla.gnome.org/show_bug.cgi?id=766794
2016-05-25 09:46:37 +03:00
Tim-Philipp Müller
db90f4686f
g-i: pass compiler env to g-ir-scanner
...
It's what introspection.mak does as well. Should
fix spurious build failures on gnome-continuous.
2016-05-24 00:55:11 +01:00
Arun Raghavan
18f8895f33
player: Fix documentation for gst_player_video_info_get_framerate()
...
Document out parameters and fix function name.
2016-05-23 17:17:55 +05:30
Xavier Claessens
098c5c16ad
gl: win32: Unparent internal window before destroying it
...
For some reason DestroyWindow() deadlock if it's called from
parent window's KeyPress event.
https://bugzilla.gnome.org/show_bug.cgi?id=766533
2016-05-20 17:04:01 +02:00
Xavier Claessens
83bb89f4ec
gl: win32: Don't steal parent focus when creating internal window
...
This fix regression introduced by 0acc18c60f
.
https://bugzilla.gnome.org/show_bug.cgi?id=766520
2016-05-20 17:04:01 +02:00