Miguel París Díaz
481e1f76e8
srtpenc: fix over unlocking
...
Called should call function with lock, and is
also responsible for unlocking it later.
https://bugzilla.gnome.org/show_bug.cgi?id=749304
2015-05-13 12:29:21 +01:00
Matthew Waters
725c1147bc
glvideomixer: implement par handling
...
We were previously ignoring it completely
2015-05-13 17:44:08 +10:00
Matthew Waters
21a6cfcc18
glvideomixer: don't upload the vertex data every frame
...
Add the missing cache tracking statement.
2015-05-13 17:44:04 +10:00
Nicolas Dufresne
f01d47d0f2
gluploadelement: Remove uneeded header and defines
2015-05-12 16:36:58 -04:00
Nicolas Dufresne
df3d415906
gltestsrc: Use default get_caps implementation
...
The custom code is wrong as it ignores the templates, which leads to
missing fields in the result. Instead, simply use the default get_caps
implementation which does it correctly (get the template, intersect
with filter and return).
https://bugzilla.gnome.org/show_bug.cgi?id=749237
2015-05-11 15:02:02 -04:00
Sebastian Dröge
b8941efc4a
glmixer: Implement GstVideoAggregator::find_best_format()
...
Without this, we will fixate weird pixel-aspect-ratios like 1/2147483647. But
in the end, all the negotiation code in videoaggregator needs a big cleanup
and videoaggregator needs to get rid of the software-mixer specific things
everywhere.
2015-05-11 16:34:26 +03:00
Matthew Waters
628d8d9599
gl: demote upload/convert/download elements to none
...
Copy paste error
2015-05-11 22:58:45 +10:00
Matthew Waters
bd1a0cfec2
gl: expose internal glvideomixerelement\
...
We might want more control over the exact pipeline
Also reduces overhead
2015-05-11 22:58:45 +10:00
Matthew Waters
d2a6e8a92e
gl: expose internal glimagesinkelement
...
We might want more control over the exact pipeline.
Also reduces overhead.
2015-05-11 22:58:37 +10:00
Sebastian Dröge
c534c8899c
dtlssrtpdec: Don't merge RTP and RTCP streams that were just split by srtpdec
...
The funnel has some overhead, and later rtpbin will have to split both streams
again anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=748723
2015-05-07 21:04:30 +02:00
Sebastian Dröge
541c3049dc
Revert "Revert "glimagesink: add pixel-aspect-ratio property on the bin""
...
This reverts commit d96e43b034
.
2015-05-06 15:47:27 +02:00
Sebastian Dröge
8c28a51ee1
Revert "Revert "glimagesink: forward ALL the properties on the bin""
...
This reverts commit 59fb0f830f
.
2015-05-06 15:47:20 +02:00
Sebastian Dröge
35d5c648c6
Revert "Revert "glimagesink: implement as a bin""
...
This reverts commit be938f92d9
.
2015-05-06 15:47:04 +02:00
Sebastian Dröge
53c79cbf86
Revert "gl: readd glupload/download onto element pads"
...
This reverts commit 87d8270f30
.
2015-05-06 15:46:49 +02:00
Sebastian Dröge
21413ff3fc
Revert "Revert "glvideomixer: implement with glmixerbin""
...
This reverts commit b4bd11f2f3
.
2015-05-06 15:43:32 +02:00
Sebastian Dröge
3d6a79b08b
srtpdec: Actually set the caps on the srcpad instead of just calling the default event handler for the sinkpad
...
Fixes up dafa11b9d2
2015-05-06 12:59:33 +02:00
Matthew Waters
8ef4b12ab8
glimagesink: handle the local_context query
...
so that upstream elements can get the GL context from glimagesink
2015-05-04 23:44:17 +10:00
Sebastian Dröge
c7d92b6cf5
opusdepay: Set multistream=FALSE on the Opus caps
...
The RTP Opus mapping only allows mono/stereo, and not multistream Opus
streams.
2015-05-04 11:23:16 +02:00
Jose Antonio Santos Cadenas
de827c792d
opusheader: Do not include rate in caps if it is 0
...
As expressed in gst_opus_header_create_caps, value 0 means unset.
Setting rate value to 0 make negotiation with decoder fail.
https://bugzilla.gnome.org/show_bug.cgi?id=748875
2015-05-04 10:50:42 +02:00
Sebastian Dröge
dafa11b9d2
srtpdec: Make sure to send caps events downstream before any segment events
...
Upstream might not give us a caps event (dtlssrtpdec) because it might be an
RTP/RTCP mixed stream, but we split the two streams anyway and should report
proper caps downstream if possible.
Fixes "sticky event misordering" warnings with dtlssrtpdec.
2015-04-30 21:34:54 +02:00
Matthew Waters
87d8270f30
gl: readd glupload/download onto element pads
...
Allows insertion of gl elements into non-gl pipelines without converter
(upload/download) elements.
https://bugzilla.gnome.org/show_bug.cgi?id=743974
2015-04-30 11:26:33 +10:00
Matthew Waters
b4bd11f2f3
Revert "glvideomixer: implement with glmixerbin"
...
This reverts commit 0fb56738a1
.
2015-04-30 11:26:33 +10:00
Matthew Waters
be938f92d9
Revert "glimagesink: implement as a bin"
...
This reverts commit 8a0017e21d
.
2015-04-30 11:26:33 +10:00
Matthew Waters
59fb0f830f
Revert "glimagesink: forward ALL the properties on the bin"
...
This reverts commit 4be45e5f30
.
2015-04-30 11:26:32 +10:00
Matthew Waters
d96e43b034
Revert "glimagesink: add pixel-aspect-ratio property on the bin"
...
This reverts commit 2ba6bb9b93
.
2015-04-30 11:26:32 +10:00
Jan Schmidt
ff12434b9f
glimagesink: Cache caps for passing to the client draw call
...
Don't convert the GstVideoInfo to caps on every draw call,
just cache the caps and pass them into the GstSample.
2015-04-29 02:52:40 +10:00
Tim-Philipp Müller
35808c27fa
opus: fix includes and compilation against opus in non-standard prefix
...
https://bugzilla.gnome.org/show_bug.cgi?id=748594
2015-04-28 17:24:04 +01:00
Mersad Jelacic
036f07e087
opus: don't use deprecated gst_buffer_new_and_alloc
...
Use the helper function available in the base class instead.
https://bugzilla.gnome.org/show_bug.cgi?id=748585
2015-04-28 16:36:02 +01:00
Tim-Philipp Müller
c754b8526b
de265dec: use g_get_num_processors() if available
...
And provide home-made fallback for older GLib versions,
so that we can later find these and remove them when
we bump the GLib requirement (which is certainly going
to happen before 2.0).
https://bugzilla.gnome.org/show_bug.cgi?id=748495
2015-04-28 16:08:31 +01:00
Matthieu Bouron
17d3a75583
glimagesink: Use gst_pad_get_pad_template_caps in ::get_caps()
2015-04-28 20:14:07 +10:00
Matthew Waters
0b7f65bbc3
glupload: provide the sink template caps that could be used
...
https://bugzilla.gnome.org/show_bug.cgi?id=746399
2015-04-28 20:13:48 +10:00
Руслан Ижбулатов
0a95a4ea24
libde265: W32 thread count support
...
This code is imported from GLib g_get_num_processors(). This function
was added in 2.36 but we depend on 2.32.
https://bugzilla.gnome.org/show_bug.cgi?id=748495
2015-04-27 10:26:33 -04:00
Руслан Ижбулатов
283fc200c6
libde265: Fix format string for gsize
...
https://bugzilla.gnome.org/show_bug.cgi?id=748496
2015-04-27 10:26:33 -04:00
Руслан Ижбулатов
5b22a126fe
spandsp: Don't use the private field 'missing_samples'
...
https://bugzilla.gnome.org/show_bug.cgi?id=748497
2015-04-27 10:02:38 -04:00
Matthieu Bouron
e765a9bb00
glfiltercube: Don't initialize multiple shaders on renegotiation
2015-04-27 14:52:37 +02:00
Matthieu Bouron
4ca63b01ab
glimagesink: Remove unused stop function
2015-04-27 18:27:48 +10:00
Matthew Waters
05109be4a0
glimagesink: unref the pool in the correct place
...
Otherwise we could hold a pool to a context that is never going to be used.
https://bugzilla.gnome.org/show_bug.cgi?id=748405
2015-04-27 18:21:01 +10:00
Matthieu Bouron
c6ec145a95
gltransformation: Unref shader in ::stop()
2015-04-27 10:16:24 +02:00
Matthew Waters
bd940327ef
gl: unref display/other-context in the correct place
...
Otherwise state changes from PLAYING->READY->PAUSED will cause there to
to be no display configured on the element.
https://bugzilla.gnome.org/show_bug.cgi?id=748405
2015-04-27 15:20:56 +10:00
Sebastian Dröge
e7aa25ca6f
glfilter: De-camelcase onInitFBO() vfunc
2015-04-26 21:42:03 +02:00
Sebastian Dröge
c638477c48
glfilter: Remove onStart/onStop vfuncs, and unused onReset()
...
onStart/onStop are just duplicates of the basetransform ones, onReset
was never called but was used everywhere when stop should've been used.
2015-04-26 21:39:06 +02:00
Lubosz Sarnecki
51daa8b9e2
gltransformation: don't initialize multiple shaders on renegotiation
...
https://bugzilla.gnome.org/show_bug.cgi?id=748407
* delete shader if one exists
* set it to NULL after unrefing
2015-04-26 21:23:16 +02:00
Sebastian Dröge
a8d498919e
glcolorconvert: Fix compiler warning
...
gstglcolorconvertelement.c:230:19: error: unused variable 'in_structure'
[-Werror,-Wunused-variable]
GstStructure *in_structure = gst_caps_get_structure (caps, 0);
^
2015-04-26 21:11:17 +02:00
Matthieu Bouron
76b2cefd2d
glcolorconvert: Keep colorimetry and chroma-site fields if passthrough
...
https://bugzilla.gnome.org/show_bug.cgi?id=748141
2015-04-26 20:31:53 +02:00
Tim-Philipp Müller
699452ef31
Remove obsolete Android build cruft
...
This is not needed any longer.
2015-04-26 18:59:32 +01:00
Matthew Waters
b216629941
glimagesink: balance change_state display ref/unref
...
the display was being unreffed on the incorrect state change causing
invalid state when changing from PLAYING/PAUSED->READY->PAUSED/PLAYING.
2015-04-24 17:16:18 +10:00
Sebastian Dröge
7c2a5da125
hlsdemux: Use the downloader of the base class instead of creating our own
...
The one of the base class is completely unused because we override all
the downloading here, so let's just use that one instead.
2015-04-23 17:47:18 +02:00
Sebastian Dröge
5fd2fc3050
hlsdemux: Don't error out if we can't match variant playlists after updating
...
It's better to just select some random variant playlist instead of stopping,
chances are that it's still continuing to work and we might just have to
select a different variant again later.
2015-04-23 17:47:18 +02:00
Sebastian Dröge
bb36ffb633
hlsdemux: Fix how the playlists are refreshed
...
We should only refresh the currently selected variant playlist (if any,
otherwise the main playlist), not the main playlist. And only try to
refresh the main playlist if updating the variant playlist fails.
Some servers (Wowza) use the request of the main playlist to create a
"session", which is then part of the URI of the variant playlist and
also the fragments. Refreshing the main playlist would generate a new
session, and the server rate limits that usually. And after a few retries
the server just kicks us out.
Also as a side effect we now use the same downloader for all playlists, so
that we only have 2 instead of 3 connections to the server. And also
previously we just ignored the downloaded data from the main playlist that
the base class gave to us.
2015-04-23 17:47:18 +02:00
Sebastian Dröge
0cd3938345
adaptivedemux: Allow subclasses to override how a new manifest would be downloaded
2015-04-23 17:47:18 +02:00
Matthieu Bouron
8f740fb484
glupload: Release glupload buffer when caps are changed
...
https://bugzilla.gnome.org/show_bug.cgi?id=748371
2015-04-24 00:55:58 +10:00
Thiago Santos
86a503a29b
hlsdemux: handle too short segments
...
When the segment is very short it might be the case that the
typefinding fails and when finishing the segment hlsdemux would
consider the remaining data (pending_buffer) as an encryption
leftover.
This patch fixes it and makes sure an error is properly posted
if typefind failed by refactoring buffer handling to a function
and using it from the data_received and finish_fragment functions.
2015-04-22 20:21:02 -03:00
Thiago Santos
6c513a9d1e
hlsdemux: use correct variable type
...
gst_buffer_resize needs gssize and not gsize. This makes gdb
print it correctly when debugging.
2015-04-22 19:04:43 -03:00
Vineeth T M
7e3cd63f87
glmixer: Possible null pointer dereference
...
While printing error message when context fails, error variable is not being used anymore
so it will lead to null pointer dereference
https://bugzilla.gnome.org/show_bug.cgi?id=748287
2015-04-22 22:33:28 +10:00
Sebastian Dröge
6c968ed3da
hlsdemux: Fix seeking
...
We also have to update the current_file GList pointer in the M3U playlist
client, otherwise we are just continuing playback from the current position
instead of seeking.
2015-04-21 18:30:33 +02:00
Sebastian Dröge
1e1e73a0f2
hlsdemux: Don't call unlock() just to call lock() immediately afterwards
2015-04-21 18:30:33 +02:00
Michał Dębski
b12f975e0a
gleffects: Create element for each effect
...
https://bugzilla.gnome.org/show_bug.cgi?id=746209
2015-04-21 13:03:11 +01:00
Michał Dębski
532f332c2f
gleffects: Merge laplacian filter into effects
...
https://bugzilla.gnome.org/show_bug.cgi?id=746209
2015-04-21 13:03:06 +01:00
Michał Dębski
0165b163db
gleffects: Merge sobel filter into effects
...
https://bugzilla.gnome.org/show_bug.cgi?id=746209
2015-04-21 13:02:57 +01:00
Michał Dębski
7770fb2f57
gleffects: Merge blur filter into effects
...
https://bugzilla.gnome.org/show_bug.cgi?id=746209
2015-04-21 13:02:53 +01:00
Michał Dębski
ff4bc2364c
gleffects: Correct attributes for hconv and vconv shaders
...
Width and height were switched for glow shaders. For blur
filter attributes names were obsolete.
https://bugzilla.gnome.org/show_bug.cgi?id=746209
2015-04-21 13:01:04 +01:00
Michał Dębski
40422d03c6
gleffects: Fix fisheye shader - pass float to sqrt
...
On OSX passing literal int to sqrt() in GLSL results in error.
https://bugzilla.gnome.org/show_bug.cgi?id=746209
2015-04-21 11:56:16 +01:00
Lubosz Sarnecki
5c07218bd2
gltransformation: fix shader memory leak
2015-04-21 16:37:17 +10:00
Matthew Waters
6cb6d8f9e8
gldisplay: synchronize the searching and creation of GstGLContext's
...
Ootherwise we could end up with multiple elements in different chains
each creating a context. Fixes context creation with glvideomixer.
2015-04-21 12:55:24 +10:00
Edward Hervey
1ce65e2f74
handdetect: remove unneeded check
...
Variable hands is already checked to contain a value previously at the beginning
of the current block. There is no need to check again. This is logically dead code.
CID 1197693
2015-04-20 14:31:42 +02:00
Guillaume Desmottes
ac5e25937b
glmixer: fix caps leak in gst_gl_mixer_pad_sink_getcaps()
...
Caps refcounting was all wrong in this function. Rewrote it and add some
comments to make it clearer.
Fix caps leaks with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747915
Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2015-04-20 09:05:11 +01:00
Руслан Ижбулатов
589407a077
opencv: Change opencv plugin to use opencv2-style includes
...
If old opencv1-style legacy include directory is available,
this change becomes purely cosmetic (maybe will compile a bit faster).
It becomes an FTBFS fix when opencv1-style include directory is missing
(possibly because opencv package maintainer decided not to pack it).
https://bugzilla.gnome.org/show_bug.cgi?id=747705
2015-04-17 18:34:22 +02:00
Guillaume Desmottes
fae93514e4
glmixer: unref owned caps when finalizing the mixer
...
Fix a caps leak with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747915
Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2015-04-17 14:28:37 +01:00
Guillaume Desmottes
481b1c921e
glmixer: pass the proper free function to frames and buffers array
...
'array_buffers' contain borrowed GstBuffer and so shouldn't have a free
function. 'frames' is the one containing GstGLMixerFrameData and so should use
_free_glmixer_frame_data as free function.
Fix GstGLMixerFrameData leaks with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747913
Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2015-04-17 14:28:25 +01:00
Sebastian Dröge
917c395403
gldownloadelement: Download *from* OpenGL, not into
2015-04-17 15:20:12 +02:00
Robert Swain
e5c73c8c8c
openh264enc: Add complexity property for speed/quality tradeoff
2015-04-17 14:57:14 +02:00
Matthieu Bouron
f283d72636
gluploadelement: Unref GstGLUpload object and caps in ::stop()
...
Fix leak of the GstGLUpload object.
https://bugzilla.gnome.org/show_bug.cgi?id=748033
2015-04-17 14:17:55 +02:00
Sebastian Dröge
c1cac829ef
gl: Remove some empty ::finalize() implementations
2015-04-17 14:09:47 +02:00
Sebastian Dröge
9ee29626c4
gldownloadelement: Fix element description
2015-04-17 14:06:03 +02:00
Sebastian Dröge
758fea90aa
gldownloadelement: Remove unused ::finalize() implementation
2015-04-17 14:05:44 +02:00
Sebastian Dröge
53ed701974
glcolorconvertelement: Also unref caps in ::stop() already
...
They are not useful anymore afterwards, so keeping them until ::finalize()
might only cause someone to use them later and then fail.
2015-04-17 14:04:14 +02:00
Guillaume Desmottes
17446a420c
glcolorconvertelement: fix GstGLColorConvert leak
...
convert->convert was never unreffed.
This can be reproduce with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747911
2015-04-17 14:04:14 +02:00
Jan Schmidt
9e1135e209
apexsink: Fix buffer overflow, in case anyone ever ports it.
...
Fix a simple buffer overflow - 16 bytes isn't enough to hold
the string representation of a gulong on x86_64. I guess the
intent was to generate a 32 bit random key, so let's do that.
Only matters if anyone ever ports the sink to 1.x
https://bugzilla.gnome.org/show_bug.cgi?id=676524
2015-04-16 22:45:31 +10:00
Sebastian Dröge
49aba362a8
dtlsdec: Fix typo
2015-04-13 19:41:15 +02:00
Sebastian Dröge
a8627a1df7
dtlssrtpdec: Add some more debug output
2015-04-13 19:41:15 +02:00
Sebastian Dröge
87243e9c6e
srtpdec: Add some more debug output
2015-04-13 19:41:15 +02:00
Yujin Lee
218a89fcd9
dashdemux: enable playback of content with text streams
...
There is a playback error when trying to play a content that
has 'application' mimeType. This commit prevents an exception from
setup text streams.
https://bugzilla.gnome.org/show_bug.cgi?id=747525
2015-04-13 09:24:53 -03:00
Edward Hervey
f31127b9ff
open264: Fix GType/gsize usage
...
gstopenh264enc.cpp:108:7: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
2015-04-07 11:24:30 +02:00
Edward Hervey
29387e85c7
openh264: Detect 1.4 API change
...
As mentionned in release notes : Added new Sps/Pps strategies for real-time
video (replace the old setting variable 'bEnableSpsPpsIdAddition' with
'eSpsPpsIdStrategy')
2015-04-07 11:24:28 +02:00
Sebastian Dröge
25561db099
glimagesink: Disconnect mouse/key event signal handlers from window when shutting down context
2015-04-06 20:28:22 -07:00
Sebastian Dröge
a72e204eae
glimagesink: Guard against disconnecting invalid signal ids
2015-04-06 20:24:06 -07:00
Thiago Santos
75c9a5f129
hlssink: write the playlist end marker on EOS
...
Catch EOS from the multifilesink and add the endlist marker to
the playlist when it happens
https://bugzilla.gnome.org/show_bug.cgi?id=747319
2015-04-04 11:00:10 -03:00
Arun Raghavan
f092c9cb3d
opus: Fix incorrect fall-through condition in property getter
2015-04-03 11:47:09 +05:30
Edward Hervey
90028d68fe
glvideomixer: Don't use context if not present
...
Avoids assertions at runtime
2015-03-31 16:31:18 +02:00
Anton Obzhirov
4504356dda
gleffects: port all effects to GLES2.0
...
https://bugzilla.gnome.org/show_bug.cgi?id=745955
2015-03-30 19:06:44 +01:00
Thiago Santos
f00aec48fa
hlssink: implement a chain_list to request key unit for segments
...
upstream might send buffer lists instead of buffers and hlssink's
probe won't get called and a new segment won't be created when needed.
This patch fixes it by adding a chain_list function to the sink pad
that will just pass through the whole bufferlist if no segment needs
to be requested at the moment or convert the list into buffers to
check the proper timestamp to request the next key-unit that will
start the segment.
https://bugzilla.gnome.org/show_bug.cgi?id=746906
2015-03-30 12:31:08 -03:00
Olivier Crête
45422791f7
rtpopuspay: Forward stereo preferences from caps upstream
...
https://bugzilla.gnome.org/show_bug.cgi?id=746617
2015-03-25 15:26:55 -04:00
Olivier Crête
c82a2d4aa0
rtpopuspay: Set the number of channels to 2 as per RFC draft
...
https://bugzilla.gnome.org/show_bug.cgi?id=746617
2015-03-25 15:25:29 -04:00
Jun Xie
9e6198d9ef
dashdemux: set default @startNumber and also avoid wrong overwrite
...
Set default @startNumber to 1, if @startNumber is missing at all level.
Also avoid incorrect overwriting inherited value.
https://bugzilla.gnome.org/show_bug.cgi?id=746347
2015-03-24 16:35:59 -03:00
Luis de Bethencourt
fb758d019c
opusenc: fall through switch statement
...
Adding a comment makes coverity happy and quells the issue.
CID 1291629
2015-03-24 15:14:05 +00:00
Sebastian Dröge
9dd671abe3
opusenc: Set output format immediately after creating the encoder instance
...
We know the caps by then, there's no need to wait until we actually receive
the first buffer.
2015-03-23 13:15:30 +01:00
Sebastian Dröge
948fbe154f
opusenc: Remove another unused variable
2015-03-23 13:13:35 +01:00
Sebastian Dröge
42b5cc8938
opusenc: Remove useless headers and header_sent variables from the instance struct
...
They are only used inside a single function.
2015-03-23 13:12:25 +01:00
Sebastian Dröge
856bb027f9
opus: Handle sprop-stereo and sprop-maxcapturerate RTP caps fields
...
https://bugzilla.gnome.org/show_bug.cgi?id=746617
2015-03-23 12:24:55 +01:00
Sebastian Dröge
a128502221
opusdec: Take channels and sample rate from the caps if we have no stream header
2015-03-23 12:09:25 +01:00
Sebastian Dröge
c2f38cd054
opusdec: Reset the decoder if the caps change
2015-03-23 12:09:09 +01:00
Sebastian Dröge
bb5b0f2d12
opusdec: Take output sample rate from the stream headers too
...
This way we let opusdec do the resampling if needed and don't carry
around buffers with a too high sample rate if not required.
While Opus always uses 48kHz internally, this information from the
header specifies which frequencies are safe to drop.
2015-03-23 11:57:09 +01:00
Sebastian Dröge
716eaf765b
opusheader: Put number of channels and sample rate into the caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=746617
2015-03-23 11:56:09 +01:00
Nicola Murino
0719c8c766
glimagesink: fix caps leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=746541
2015-03-21 16:52:08 +00:00
Jose Antonio Santos Cadenas
ff11a1a8a0
srtpdec: Add support for buffer list
...
https://bugzilla.gnome.org/show_bug.cgi?id=746387
2015-03-19 16:31:47 +01:00
Jose Antonio Santos Cadenas
8f8b0f5478
srtpenc: Do not drop all buffers in buffer list if one fails
...
https://bugzilla.gnome.org/show_bug.cgi?id=746387
2015-03-19 16:27:21 +01:00
Sebastian Dröge
82b73713cb
dtls: Pass the connection instance as data to the thread pool
...
No need to ref/unref the connection every time we push something on the pool.
However we have to provide non-NULL data to the pool, so let's just give it
some coffee.
2015-03-19 14:04:28 +01:00
Sebastian Dröge
602b1ca3d2
dtls: Remove unused thread struct field
2015-03-19 13:55:53 +01:00
Sebastian Dröge
fd609f6bc0
dtls: Use a shared thread pool for the timeouts
...
This way we will share threads with other DTLS connections if possible, and
don't have to start/stop threads for timeouts if there are many to be handled
in a short period of time.
Also use the system clock and async waiting on it for scheduling the timeouts.
2015-03-19 13:30:00 +01:00
Sebastian Dröge
4072666c7d
dtls: Shutdown timeout thread when it's not needed
...
It is not needed most of the time and usually we have a thread
idling around doing nothing all the time after the first few seconds.
2015-03-18 18:21:35 +01:00
Sebastian Dröge
7782bdf286
dtlsenc: Clear the queue when deactivating the pad
2015-03-18 17:40:47 +01:00
Sebastian Dröge
4fed95c534
dtlsenc: Handle pad activity states properly
2015-03-18 17:40:34 +01:00
Sebastian Dröge
ff01df1093
dtlsenc: Don't manually activate/deactivate srcpad
2015-03-18 17:35:12 +01:00
Jose Antonio Santos Cadenas
8d2e98bc3f
srtpdec: Separate buffer encoding functionality into a different function
...
https://bugzilla.gnome.org/show_bug.cgi?id=746387
2015-03-18 16:26:48 +01:00
Jose Antonio Santos Cadenas
f295beda07
srtpenc: Add support for buffer list
...
https://bugzilla.gnome.org/show_bug.cgi?id=746387
2015-03-18 16:26:48 +01:00
Jose Antonio Santos Cadenas
ef4a904700
srtpenc: Add missing locks
...
https://bugzilla.gnome.org/show_bug.cgi?id=746387
2015-03-18 16:22:58 +01:00
Jose Antonio Santos Cadenas
2d3938c063
srtpenc: Split chain functionality so it can be reused for buffer list
...
https://bugzilla.gnome.org/show_bug.cgi?id=746387
2015-03-18 16:21:36 +01:00
Sebastian Dröge
3614302cf8
dtlsenc: Use a GQueue instead of a GPtrArray
...
Using a GPtrArray as a queue is not very efficient as the whole
array has to be copied whenever an element is removed from the
beginning.
2015-03-18 13:52:38 +01:00
Sebastian Dröge
47b73f0d52
dtlsdec: Fix locking
...
Especially don't hold any mutex while adding/removing pads or pushing data.
2015-03-18 10:06:47 +01:00
Sebastian Dröge
989c2ef67b
dtlsdec: Add support for buffer lists
2015-03-18 10:06:15 +01:00
Sebastian Dröge
2082476efb
dtls: Fix some search & replace mistakes from renaming the elements
2015-03-18 09:46:40 +01:00
Jose Antonio Santos Cadenas
e2cdbdae13
srtpenc: Improve memory management on chain function
...
Avoiding copy the buffer twice, one while mapping and other with mencpy
https://bugzilla.gnome.org/show_bug.cgi?id=746356
2015-03-17 18:18:43 +01:00
Jose Antonio Santos Cadenas
5bad599560
srtpenc: Fix typo in log
2015-03-17 18:18:32 +01:00
Sebastian Dröge
2dcd5dd39b
dtls: Initialize debug category earlier
...
Otherwise the openssl initialization will use it before initialization
2015-03-17 11:43:00 +01:00
Tim-Philipp Müller
9f06d36d95
dtls: make sure we actually log into the right debug category
...
GST_DTLS_USE_GST_LOG is not defined anywhere, so
we'd just log into the default category by accident.
We use the gst logging system unconditionally now,
so might just as well remove this #if #else.
2015-03-16 17:51:20 +00:00
Tim-Philipp Müller
86a889883e
dtls: fix some more compiler warnings
...
gcc-4.9.2:
gstdtlsagent.c:114:1: error: old-style function definition
gstdtlsconnection.c:253:3: error: ISO C90 forbids mixed declarations and code
gstdtlsconnection.c:291:3: error: ISO C90 forbids mixed declarations and code
gstdtlsconnection.c:391:3: error: ISO C90 forbids mixed declarations and code
gstdtlsconnection.c:434:3: error: ISO C90 forbids mixed declarations and code
gstdtlsconnection.c:773:1: error: 'BIO_s_gst_dtls_connection' was used with no prototype before its definition
gstdtlsconnection.c:773:1: error: old-style function definition
2015-03-16 17:36:49 +00:00
Sebastian Dröge
d9344ad820
dtls: Unconditionally use GStreamer debug log system
2015-03-16 18:23:27 +01:00
Sebastian Dröge
936fa2f1c4
dtls: Re-namespace from Er to Gst
2015-03-16 18:23:27 +01:00
Sebastian Dröge
1de51fcf02
dtls: Fix some compiler warnings
...
gstdtlsconnection.c:128:32: error: passing 'const char [30]' to parameter of type 'void *'
discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
SSL_get_ex_new_index (0, "gstdtlsagent connection index", NULL, NULL,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/openssl/ssl.h:1981:43: note: passing argument to parameter 'argp' here
int SSL_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
^
gstdtlsconnection.c:822:40: error: arithmetic on a pointer to void is a GNU extension
[-Werror,-Wpointer-arith]
memcpy (out_buffer, priv->bio_buffer + priv->bio_buffer_offset, copy_size);
~~~~~~~~~~~~~~~~ ^
2015-03-16 18:23:27 +01:00
Sebastian Dröge
6183e99eec
dtls: Fix indention
2015-03-16 18:23:27 +01:00
Sebastian Dröge
1e0ed9af11
dtls: Add new DTLS plugin
...
This is a copy of the Ericsson DTLS plugin from
https://github.com/EricssonResearch/openwebrtc-gst-plugins/tree/master/ext/erdtls/src
https://bugzilla.gnome.org/show_bug.cgi?id=744582
2015-03-16 18:23:27 +01:00
xixi
5a1ed14c3c
dashdemux: fetch wrong segment at the end of Period
...
Fix check for end of Period time to avoid trying
to fetch a segment that doesn't exist
https://bugzilla.gnome.org/show_bug.cgi?id=746038
2015-03-15 12:02:58 +00:00
Víctor Manuel Jáquez Leal
d925e7fd19
glupload: move meta-data copy into gst-gl library
...
In some upload implementations the out buffer has more than one references,
turning the buffer not writable, so it won't be possible to modify its
meta-data.
This patch moves the meta-data copy before increasing the reference of the out
buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=746173
2015-03-14 19:53:02 +00:00
Julien Isorce
f8fca66fb9
glimagesink: keep window invisible when sharing output
...
https://bugzilla.gnome.org/show_bug.cgi?id=739681
2015-03-14 17:56:39 +00:00
Julien Isorce
0150255a46
glimagesink: provide GstSample in client-draw signal
...
Instead of prividing texture and size directly.
And apply changes to examples.
https://bugzilla.gnome.org/show_bug.cgi?id=739681
2015-03-14 17:56:21 +00:00
Matthew Waters
fa61e8e4ce
glsyncmeta: make context to wait and set sync explicit
...
otherwise we may wait on a sync object in same context by accident
2015-03-14 16:53:46 +00:00
Nicolas Dufresne
ac89e53173
glimagesink: Add NULL check in error case
...
Other context may be NULL if something went wrong. Avoid trying to unref
a NULL pointer.
2015-03-14 12:58:22 +00:00
Matthew Waters
0c8ede8565
glupload/colorconvert: only copy timestamps if the input buffer != output
2015-03-14 10:39:06 +00:00
Matthew Waters
a29a18cc3a
glshader: attribute locations are -1 on error
2015-03-13 17:41:17 +00:00
Jan Schmidt
450dc5f697
GL: Remove annoying printf in the filterbin class_init
2015-03-14 02:54:18 +11:00
Matthew Waters
2ba6bb9b93
glimagesink: add pixel-aspect-ratio property on the bin
2015-03-13 12:43:13 +00:00
Matthew Waters
4be45e5f30
glimagesink: forward ALL the properties on the bin
2015-03-13 12:30:20 +00:00
Matthew Waters
067d5c45d2
gluploadelement: properly unref buffers that are the same as the input
...
basetransform doesn't unref equal input and output buffers
2015-03-13 12:30:20 +00:00
Matthew Waters
34485c9976
gl: get the context from basemixer/basefilter
2015-03-13 12:30:20 +00:00
Matthew Waters
91b7642c48
gl: retreive the gldisplay/app gl context as soon as possible
...
fixes the usage of gst_gl_display_filter_gl_api
2015-03-13 12:30:20 +00:00
Matthew Waters
dbe8ae4d98
caopengllayersink: implement as a bin like glimagesink
2015-03-12 16:45:51 +00:00
Matthew Waters
66ccdab09a
gl/cocoa: avoid deadlock when creating context on the main thread.
...
Make window/view creation async so that it is possible to
gst_gl_context_create from the main thread.
2015-03-12 16:45:51 +00:00
Matthew Waters
ef0bd30c87
gl: store the list of contexts within gldisplay
...
Removes the reliance on the allocation query to propogate GL contexts.
Allows thread safely getting a context for the a specific thread.
2015-03-12 16:45:51 +00:00
Matthew Waters
2f2470488b
glimagesink: unset the current shader after rendering
...
fixes gltestsrc ! glimagesink when gltestsrc doesn't use a shader
2015-03-12 16:45:51 +00:00
Matthew Waters
5495397c81
gltestsrc: remove usage of gldownload library object
2015-03-12 16:45:51 +00:00