Matthew Waters
aa6062945c
gldisplay: make readding the same context a no-op
...
With e38af23044
returning the correct contexts,
gst_gl_display_add_context() was susceptible to causing infinte loops when
adding the same GstGLContext more than once. Fix and add a test for
gst_gl_display_add_context().
Fixes glvideomixer gst-validate tests.
2016-03-08 02:06:13 +11:00
Matthew Waters
5437874596
gl: add a gstglquery object for arbitrary GL queries
...
Currently only GL_TIME_ELAPSED and GL_TIMESTAMP are supported
2016-01-15 13:21:56 +11:00
Matthew Waters
2aadd7eaf9
glcontext: implement checking whether a context has been shared
...
Some operations are unnecessary when running with only a single GL
context.
e.g. glFlush when setting a fence object as the flush happens on wait.
API: gst_gl_context_is_shared
2016-01-07 14:11:13 +11:00
Sebastian Dröge
b53972a5cb
player: Remove gst_player_new() and make gst_player_new_full() the normal constructor
...
In very few cases the simple version was actually needed and having the
parameters hidden by a _full() version caused application that actually needed
it to not use it.
2016-01-04 09:55:28 +02:00
Matthew Waters
05c5c27f1c
tests/glmemory: output data pointer values on failure
...
Allows quicker inspection of what failed.
2015-12-30 12:16:29 +11:00
Sebastian Dröge
2f86923cbd
player: Add unit test that is disabled by default
...
The unit test is downloading a few small media files from the Internet,
which are then used during the test. "make clean" removes the files again.
2015-12-23 12:19:33 +01:00
Sebastian Dröge
4a626d92d2
glcolorconvert: Fix name of testsuite
2015-12-21 12:19:11 +01:00
Matthew Waters
5dcd500257
gl*memory*: reverse the parameter order of user_data and destroy notify
...
The convention is to have the destroy notify last after any user data
2015-12-17 15:44:22 +11:00
Matthew Waters
779dc3132c
glmemorypbo: remove our own alloc()/wrapped()/etc functions
...
replaced by equivalent functionality within gst_gl_base_memory_alloc()
2015-12-17 13:49:56 +11:00
Matthew Waters
6519622eb0
tests: update for glmemory api changes
2015-12-14 18:41:30 +11:00
Matthew Waters
a07a350183
tests/glmemory: include the generic gl header
...
Including gstglmemory.h directly results in the compiler complaining
about incomplete types.
2015-12-14 18:15:42 +11:00
Matthew Waters
2b7495bbc1
glmemory: base classify and add the pbo memory on top
...
The base class is useful for having multiple backing memory types other
than the default. e.g. IOSurface, EGLImage, dmabuf?
The PBO transfer logic is now inside GstGLMemoryPBO which uses GstGLBuffer
to manage the PBO memory.
This also moves the format utility functions into their own file.
2015-12-14 16:35:32 +11:00
Matthew Waters
3591c6bfa0
gluploadmeta; remove convenience helper API
...
It was not really useful as if one knows about libgstgl, one can just use
GLMemory objects directly.
2015-12-14 13:55:16 +11:00
Hyunjun Ko
0fd6b5d331
tests:aggregator: fix tc failure and correct check value
...
Failure by this commit 2dfa548f36
, which is
to append hooks instead of prepend.
Because of this change, aggretated_cb is not called and leads to failure.
And correct to check flush stop value instead of flush start value
https://bugzilla.gnome.org/show_bug.cgi?id=757801
2015-12-01 10:28:39 +02:00
Vineeth TM
e940d8875d
tests:glsl: version_profile_s string leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=758039
2015-11-13 17:00:46 +11:00
Vineeth TM
a22f085eac
tests:glupload: fix caps memory leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=758039
2015-11-13 17:00:46 +11:00
Vineeth TM
5f8825e7d9
tests:glcolorconvert: Fix caps memory leak
...
Output caps being got from video info is not getting freed
https://bugzilla.gnome.org/show_bug.cgi?id=757929
2015-11-11 21:41:52 +11:00
Matthew Waters
8779144826
gl/tests: update for glmemory api changes
2015-10-30 15:00:23 +11:00
Matthew Waters
e61d504556
glmemory: add support for rectangle textures
...
Add the various tokens/strings for the differnet texture types (2D, rect, oes)
Changes the GLmemory api to include the GstGLTextureTarget in all relevant
functions.
Update the relevant caps/templates for 2D only textures.
2015-10-30 14:24:53 +11:00
Matthew Waters
924f2ca986
gl/tests: port glcontext test to opengl
...
Now uses vao's and vbo's when possible like the rest of the gstgl library.
2015-10-15 22:42:26 +11:00
Matthew Waters
b25807c382
glshader: port to using GstGLSLStage objects for string management
...
A GstGLShader is now simply a collection of stages that are
compiled and linked together into a program. The uniform/attribute
interface has remained the same.
2015-10-15 21:27:57 +11:00
Matthew Waters
2e8642cc4c
gl: add some GLSL utility functions
...
Specifically parsing/setting GLSL versions and the shader related
function table.
2015-10-15 21:27:57 +11:00
Matthew Waters
49e6516550
glupload: remove useless release_buffer
...
It's a leftover from when we weren't outputting GstBuffer's and
returning raw texture id's.
2015-09-30 13:36:09 +10:00
Matthew Waters
4fd7b2408e
tests/glcontext: fix INVALID_ENUM GL error in test
2015-08-08 15:32:17 +02:00
Olivier Crête
035e51b010
tests: Add test for seeking live pipelines
...
https://bugzilla.gnome.org/show_bug.cgi?id=745768
2015-07-30 14:00:05 -04:00
Olivier Crête
1cb49c429b
tests: Make source live to re-enable aggregator timeout tests
...
The live mode is only enabled if one of the sources if live.
https://bugzilla.gnome.org/show_bug.cgi?id=745768
2015-07-30 14:00:05 -04:00
Nicolas Dufresne
47e436916d
glcolorconvert-test: Test notify function for setup_wrapped
...
gst_gl_memory_setup_wrapped() now takes a destroy notify function. This
destroy notify is called to track the memory life time, hence will
notify each time a memory get destroyed. This test check that the
callback count is correct.
2015-07-28 11:20:40 -04:00
Nicolas Dufresne
3d9d4869f4
glcolorconvert-test: Fix build
2015-07-28 11:06:43 -04:00
Matthew Waters
d5996de5d7
glcontext: fix get_current_gl_api on x11/nvidia drivers
...
They require to get_proc_address some functions through the
platform specific {glX,egl}GetProcAddress rather than the default
GL library symbol lookup.
2015-07-18 18:18:22 +10:00
Matthew Waters
be9ad5eeb2
glcontext: track sharedness with a cookie
...
The previous approach of traversing the other_context weak ref tree was
1. Less performant
2. Incorrect for context destruction removing a link in the tree
Example of 2:
c1 = context_create (NULL)
c2 = context_create (c1)
c3 = context_create (c2)
context_can_share (c1, c3) == TRUE
context_destroy (c2)
unref (c2)
context_can_share (c1, c3) returns FALSE when it should be TRUE!
This does not remove the restriction that context sharedness can only
be tracked between GstGLContext's.
2015-07-18 15:34:55 +10:00
Matthew Waters
c3a47c910d
glmemory: separate pbo transfer from texture transfers
...
When supported, the potentially longer pbo upload/download can be
initiated before the texture upload/download, potentially increasing
throughput.
2015-06-12 16:59:20 +10:00
Matthew Waters
7d8d1f8206
glmemory: implement on top of glbasebuffer
...
Provides convenient access to PBO usage.
Currently texture updates are coupled tightly to data transfers.
2015-06-12 16:59:20 +10:00
Edward Hervey
e899abea14
check: Use GST_CHECK_MAIN () macro everywhere
...
Makes source code smaller, and ensures we go through common initialization
path (like the one that sets up XML unit test output ...)
2015-06-02 16:04:40 +02:00
Matthew Waters
904cdf3f58
tests/gl: fix typo
2015-05-14 18:35:35 +10:00
Matthew Waters
0870e8785e
gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls
...
We are using shaders everywhere and so they are not needed
2015-05-14 16:42:09 +10:00
Reynaldo H. Verdejo Pinochet
b31f3a88e4
aggregator: fix typo in test suite
2015-04-03 18:17:35 -03:00
Reynaldo H. Verdejo Pinochet
b24971f2dd
aggregator: add gap event handling unit test
...
https://bugzilla.gnome.org/show_bug.cgi?id=746249
2015-04-03 18:17:35 -03:00
Matthew Waters
e5debcaff4
gl/tests: fix deadlock on glcontext wrapped context test
2015-03-13 12:30:20 +00:00
hoonhee.lee
3beb48162f
tests: glcontext: remove unnecessary semicolon
...
https://bugzilla.gnome.org/show_bug.cgi?id=745875
2015-03-09 08:41:25 +01:00
Nicolas Dufresne
56d4ff8773
gl-test: Port unit tests to new API
2015-03-01 00:08:42 -05:00
Tim-Philipp Müller
3c2ee8ece5
aggregator: use new gst_aggregator_pad_drop_buffer()
2015-02-13 16:25:45 +00:00
Matthew Waters
438b83c9fc
gl: update unit test for glmemory api change
2015-01-30 18:51:17 +11:00
Thibault Saunier
d8eef43123
aggregator: Hide GstAggregatorPad buffer and EOS fileds
...
And add a getter for the EOS.
The user should always use the various getters to access
those fields
https://bugzilla.gnome.org/show_bug.cgi?id=742684
2015-01-29 10:24:18 +01:00
Matthew Waters
75b808d072
gl/tests: update glwindow api change
2015-01-23 17:27:42 +11:00
Matthew Waters
d5c3693791
gl: split glcolorconvert usage from glupload
...
the separation allows the transfer operation to occur in a separate
thread/time which may increase performance in specific circumstances.
2015-01-14 22:22:13 +11:00
Matthew Waters
4c73e20553
glcontext: allow wrapped contexts to be utilised like non-wrapped contexts
...
Fill in the missing pieces like get_proc_address, the gl function vtable
2015-01-13 15:18:41 +11:00
Nicolas Dufresne
046639ddaa
gltest: Port to new API
...
https://bugzilla.gnome.org/show_bug.cgi?id=740900
2014-12-19 13:19:34 -05:00
Sebastian Dröge
d4c4af699e
aggregator: Add a timeout parameter to ::aggregate()
...
When this is TRUE, we really have to produce output. This happens
in live mixing mode when we have to output something for the current
time, no matter if we have enough input or not.
2014-12-17 18:41:41 +01:00
Tim-Philipp Müller
9d79b65a55
tests: fix aggregator unit test after property renaming
2014-12-16 19:49:56 +00:00
Sebastian Rasmussen
01dc7edd8b
tests/aggregator: Use correct type when setting property
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741495
2014-12-14 11:29:19 +01:00
Matthew Waters
810d38c29f
glupload: rearchitecture for non GLMemory inputs/outputs
...
Allows other memory types to be implemented/returned/used by the caller.
2014-11-23 17:13:36 +11:00
Matthew Waters
81ceca1aea
glcontext: add api for retreiving the current context and api
...
that is current in the calling thread.
2014-10-28 17:33:20 +11:00
Aurélien Zanelli
81c5fd3c1e
vc1parser: fix expected level in sequence-layer parsing unit test
...
Sequence-layer used for unit test have a level set to 2 which should
match the medium level, not the high.
https://bugzilla.gnome.org/show_bug.cgi?id=738230
2014-10-20 12:40:54 +02:00
Matthew Waters
fa90c07ff2
tests/aggregator: add timeout handling test for the timeout parameter
2014-10-09 23:52:11 +11:00
Matthew Waters
66e65b3333
tests/glcolorconvert: do reorder checking for rgba formats
2014-09-30 18:26:34 +10:00
Matthew Waters
ce7226da06
tests/glmemory: add simple transfer test
...
tests transferring to/from the GL with a 1x1 RGBA pixel.
2014-09-30 01:49:42 +10:00
Matthew Waters
229e9911cb
gl/tests: update for upload API changes
2014-09-22 20:02:44 +10:00
Aurélien Zanelli
bd050201ba
vc1parser: add unit test for sequence-layer parsing
...
Check that a sequence-layer header is successfully parsed.
https://bugzilla.gnome.org/show_bug.cgi?id=736871
2014-09-18 13:36:35 +03:00
Matthew Waters
81e71aa01b
gl/tests: update for API changes
2014-08-01 10:02:34 +10:00
Thiago Santos
03ef435c45
tests: gitignore: update with new tests
2014-07-28 19:11:41 -03:00
Gwenole Beauchesne
1a455c25cd
tests: h264parser: add test to identify EOSEQ / EOS NALs.
...
Check that end_of_seq() [EOSEQ] and end_of_stream [EOS] NAL units
are correctly parsed and the reported NAL unit size yields 1 byte,
i.e. the only NalHeaderBytes in there.
https://bugzilla.gnome.org/show_bug.cgi?id=732553
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-07-01 16:54:44 +02:00
Edward Hervey
8c53dfcfb6
mpegts: Expose GstMpegtsDescriptor free function
...
Nothing earth shattering, but avoids people having to use g_boxed_free()
2014-07-01 10:03:49 +02:00
Thibault Saunier
71c81a5176
aggregator: Avoid destroying sources we do not own
...
+ Unref the maincontext in a new dispose function
+ Make sure to remove all sources on dispose
https://bugzilla.gnome.org/show_bug.cgi?id=732445
2014-06-30 14:24:49 +02:00
Sebastian Dröge
5cd10a10ab
glupload: Fix memory leak in unit test
2014-06-29 21:57:32 +02:00
Sebastian Dröge
d4a8d67982
glcontext: Fix memory leaks in unit test
2014-06-29 21:53:21 +02:00
Sebastian Dröge
426f9e6097
mpegts: Fix memory leaks in the test and the library
...
Currently uses g_boxed_free() in the unit test, this needs to
be fixed properly when cleaning up the API.
https://bugzilla.gnome.org/show_bug.cgi?id=730914
2014-06-29 21:34:50 +02:00
Thiago Santos
133c67a6a6
tests: aggregator: fix various leaks in the tests
2014-06-28 11:20:43 -03:00
Edward Hervey
22dfd9aef3
mpegts: Unify API : GstMpegts / gst_mpegts_ / GST_*_MPEGTS_
...
It was previously a mix and match of both variants, introducing just too much
confusion.
The prefix are from now on:
* GstMpegts for structures and type names (and not GstMpegTs)
* gst_mpegts_ for functions (and not gst_mpeg_ts_)
* GST_MPEGTS_ for enums/flags (and not GST_MPEG_TS_)
* GST_TYPE_MPEGTS_ for types (and not GST_TYPE_MPEG_TS_)
The rationale for chosing that is:
* the namespace is shorter/direct (it's mpegts, not mpeg_ts nor mpeg-ts)
* the namespace is one word under Gst
* it's shorter (yah)
2014-06-25 14:50:05 +02:00
Edward Hervey
123f642d5e
mpegts: Fix descriptor_from_dvb_service
...
Various leaks/overwrites issues
2014-06-24 14:51:32 +02:00
Thibault Saunier
55c65d079f
aggregator: Add new GstAggregator base class
...
This base class has been added to a newly created libgstbadbase library
Co-Authored by: Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
https://bugzilla.gnome.org/show_bug.cgi?id=731917
2014-06-20 19:53:33 +02:00
Thiago Santos
89fadbcfe4
tests: mpegts: add test for STT parsing
...
Specially for the time to UTC datetime conversion
Example taken from the A65 spec
https://bugzilla.gnome.org/show_bug.cgi?id=730435
2014-05-29 10:38:00 +02:00
Matthew Waters
5867eb42f3
tests: update for glupload changes
2014-05-29 18:32:48 +10:00
Matthew Waters
8d6198d934
tests: update for recent glupload changes
...
GstGLUploadMeta object is now the GstVideoGLTextureUploadMeta
provider.
2014-05-28 23:22:15 +10:00
Matthew Waters
a49a371710
gl/upload: implement lazy init
...
Rename init_format to set_format
2014-05-08 15:33:43 +10:00
Luis de Bethencourt
db68e036e9
gl: check the correct GstGLMemory in basic_test
2014-04-25 16:18:07 -04:00
Zhao, Halley
26baaf51a1
tests: add test for VP8 bitstream parsing library.
...
[updated to new parser API]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-04-18 16:32:40 +02:00
Matthew Waters
15d0c04933
gl/mem: allocate the memory per plane
...
This patch provides the basic infrastructure required for this.
Upload and Download has been ported to this.
Has the nice effect of allowing GstGLMemory to be our
refcounted texture object for any texture type (not just RGBA).
Should not lose any features/video formats.
2014-04-11 10:37:06 +10:00
Tim-Philipp Müller
c6164e3569
tests: fix gl unit tests for recent API changes
2014-04-02 13:48:02 +01:00
Matthew Waters
6b3fe44185
Move gst-plugins-gl to bad
2014-03-16 15:17:59 +01:00
Matthew Waters
870503dc6b
gl: silence all the compiler warnings
2014-03-16 15:17:44 +01:00
Matthew Waters
18ebef308c
[900/906] tests/gstglcontext: reduce the number of frames displayed
...
Was causing timeouts on intel hardware due to vsync handling.
2014-03-15 18:37:07 +01:00
Matthew Waters
3ad466945e
[891/906] context: add support for wrapping external contexts
2014-03-15 18:37:07 +01:00
Matthew Waters
df0cfcbfa5
[878/906] tests: update for glmem api change
2014-03-15 18:37:06 +01:00
Matthew Waters
57422186b5
[869/906] tests: add some upload tests
2014-03-15 18:37:05 +01:00
Matthew Waters
636d307715
[853/906] display: remove _{set,get}_context
...
A GstGLDisplay doesn't need a GstGLContext and its use
was cause a reference cycle
2014-03-15 18:37:04 +01:00
Matthew Waters
b90d824626
[838/906] gl: Use GL_TEXTURE_2D instead of GL_TEXTURE_RECTANGLE
...
We create our textures (in Desktop GL) with GL_TEXTURE_RECTANGLE,
vaapi attempts to bind our texture to GL_TEXTURE_2D which throws a
GL_INVALID_OPERATION error and as thus, no video.
Also, by moving exclusively to GL_TEXTURE_2D and the npot extension
we also remove a difference between the Desktop GL and GLES2 code.
https://bugzilla.gnome.org/show_bug.cgi?id=712287
2014-03-15 18:37:03 +01:00
Julien Isorce
ca9c2cce1a
[821/906] tests: fix test_share on GLESv2
2014-03-15 18:37:02 +01:00
Matthew Waters
9b22b0e0ba
[812/906] move the GL vtable from GstGLDisplay to GstGLContext
...
Conflicts:
tests/check/libs/gstglcontext.c
2014-03-15 18:37:02 +01:00
Matthew Waters
d139ac89a1
[811/906] tests: update for GstGLContext addition
2014-03-15 18:37:02 +01:00
Julien Isorce
ad3f202b34
[809/906] tests: port test_share to GLES2
...
Also add a deinit function to release fbo, tex and shader.
2014-03-15 18:37:02 +01:00
Matthew Waters
f93b804071
[802/906] add GstGLContext test that tests context sharing
2014-03-15 18:37:01 +01:00
Matthew Waters
13067b104c
[704/906] Use gst_object_[un]ref so we can get refcounts in the log
2014-03-15 18:36:56 +01:00
Matthew Waters
93f7e993ad
[603/906] update FSF address
2014-03-15 18:36:50 +01:00
Matthew Waters
0ef8174881
[554/906] GstGLMemory: update for GstAllocator API changes
2014-03-15 18:36:47 +01:00
Matthew Waters
1331611094
[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
2014-03-15 18:36:44 +01:00
Jesper Larsen
968dcf28b5
test: mpegts: Add check for SDT
...
https://bugzilla.gnome.org/show_bug.cgi?id=724981
2014-02-25 14:34:29 +01:00
Jesper Larsen
bb22c6e7c4
tests: Add test for mpegts library
...
Tests for PAT, PMT, and NIT
Creates a new table, and populates it with descriptors.
Parses the newly created tables, and checks the data.
Creates a GstMpegTsSection from the tables, and packetize the sections.
The packetized section data is byte-wise compared to a static byte array
https://bugzilla.gnome.org/show_bug.cgi?id=723953
2014-02-24 16:01:11 +01:00
Thiago Santos
05ea12eaea
tests: insertbin: update tests to 1.x scenario
...
The thread that calls the success/failure callback can be the
same that is adding/removing the element as the IDLE probe can
happen instantly if the pad is not 'busy'.
This required moving some checks for the callback counter around
as well as removing some pad pushes from the main test thread as
they were made useless after the IDLE pad probe was fixed in core
by commit 0324358ebc
2014-02-04 14:17:26 -03:00
Gwenole Beauchesne
daddc1d7d6
codecparsers: mpeg2: update test program with new GstMpegVideoPacket API.
...
This is the lost hunk from:
https://bugzilla.gnome.org/show_bug.cgi?id=692933
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-05 18:50:59 +02:00
Sebastian Dröge
167e11b176
insertbin: Fix event handling in unit test
2013-05-15 11:28:56 +02:00