Commit graph

3848 commits

Author SHA1 Message Date
Miguel París Díaz
93ba600ba9 opusenc: Use aux vars to minimize critical region
This avoid dead lock between gst_audio_encoder_finish_frame() and
gst_opus_enc_get_property().
Also, now bytes var is set into protected section.

https://bugzilla.gnome.org/show_bug.cgi?id=729882
2014-05-26 09:23:42 +02:00
Damian Ziobro
5b547a553d hlsdemux: Fix storing of the IV based on the media sequence number
https://bugzilla.gnome.org/show_bug.cgi?id=730574
2014-05-22 13:27:37 +02:00
L. Sorin
5edf0add57 curlsshsink: post error on bus in element, not transfer thread
Looks like this file was missed in Bug 728960:
https://bugzilla.gnome.org/show_bug.cgi?id=728960

https://bugzilla.gnome.org/show_bug.cgi?id=730459
2014-05-21 08:36:51 +02:00
Matthew Waters
37c08c58c5 gl/eglimage: add eglimage context feature
Allows us to selectively use EGLImages only when available

https://bugzilla.gnome.org/show_bug.cgi?id=728234
2014-05-20 23:37:52 +10:00
L. Sorin
9c1e66302d curlsftpsink: authenticate remote host via public key fingerprint
Expose one more libcurl option: CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.
This allows authenticating the server by the MD5 fingerprint of
the server's public key.

https://bugzilla.gnome.org/show_bug.cgi?id=723167
2014-05-20 08:58:08 +02:00
Sebastian Dröge
8070b4e043 glimagesink: Check if context creation failed before trying to use it
Otherwise we will cause assertions everywhere by passing NULL to functions
and eventually crash when dereferencing a NULL pointer.

https://bugzilla.gnome.org/show_bug.cgi?id=730069
2014-05-19 12:25:51 +02:00
Sebastian Dröge
cbc37f389f rsvgdec: Unref handle and output state on error paths
CID 1214604
2014-05-19 09:12:14 +02:00
Nicola Murino
bd34e62872 motioncells: fix memleak
Check gst_buffer_map return and remember to unmap and free memory before
returning

https://bugzilla.gnome.org/show_bug.cgi?id=730133
2014-05-14 20:15:05 -03:00
Matthew Waters
ce561913de gl/download: update to be similar to the glupload semantics 2014-05-14 11:38:01 +10:00
Thiago Santos
a99175a31a hlssink: do not leak playlist object
In finalize, also release the playlist
2014-05-13 16:29:46 -03:00
Thiago Santos
16d969b945 dashdemux: mpdparser: properly unref gstdatetime
Avoid leaking the GstDateTime instances when summing dates

CID #1212143
2014-05-13 11:22:58 -03:00
Thiago Santos
288e8d5c0e dashdemux: mpdparser: avoid double free of segment timeline node
The parsing function already frees the old value (if any), avoid a double
free by not freeing it before calling the function without setting the
pointer to NULL

Coverity ID: 1212178
2014-05-13 10:45:29 -03:00
Thiago Santos
64bea0252b dashdemux: mpdparser: avoid double free
The _parse_url function already frees the previous pointer, avoid
freeing it before without setting to null or we have a double free.

Coverity ID: 1212181
Coverity ID: 1212180
Coverity ID: 1212179
2014-05-13 10:13:37 -03:00
Edward Hervey
8299c5b5b4 schrodec: Use pool configuration
It was leaking the config, but also not using it...

CID #1212155
2014-05-13 14:21:15 +02:00
Edward Hervey
adecec882a rsvg: Don't leak GstVideoCodecState
And avoid useless call to _get_output_state (set_output_state() already
returns it).

CID #1212160
CID #1212161
2014-05-13 14:15:24 +02:00
Edward Hervey
651a4ae2e7 dash: Don't leak GstActiveStream
CID #1212142
2014-05-13 13:52:48 +02:00
Thiago Santos
ce7319c62d mssdemux: avoid deadlocking when erroring
It might get stuck when posting the message while
a reconfigure event is being pushed upstream
2014-05-12 18:28:45 -03:00
Thiago Santos
a1f87d0b4f mssdemux: fix caps leak 2014-05-12 18:08:12 -03:00
Thiago Santos
6b8448c245 mssdemux: handle error messages from internal source
set up a bin message handler to get notified of error messages from
the internal source element
2014-05-12 18:08:12 -03:00
Thiago Santos
b627d7df83 mssdemux: Always accept the latency configure event
Upstream or internal elements are irrelevant and we should
always succeed.
2014-05-12 16:27:37 -03:00
Thiago Santos
b54367e211 mssdemux: reenable segment tracking for streams
Store the latest pushed timestamp so that mssdemux streams know
where they are in time
2014-05-12 16:27:37 -03:00
Thiago Santos
45d5859131 mssdemux: deprecate unused max-queue-size-buffers
There is no internal storage of buffers anymore
2014-05-12 16:27:37 -03:00
Thiago Santos
99a2e425de mssdemux: measure bitrate similarly to hlsdemux
new bitrate = (old bitrate + (last fragment bitrate * 3)) / 4
2014-05-12 16:27:37 -03:00
Thiago Santos
90577c3ae7 mssdemux: remove uridownloader in favor of internal source
Refactor mssdemux to remove uridownloader to use an internal
source element which reduces startup latency and provides smaller
buffers for better buffering management downstream
2014-05-12 16:27:37 -03:00
Thiago Santos
4c59f7df4c dashdemux: initialize the mutex and cond for fragment download 2014-05-12 16:27:37 -03:00
Thiago Santos
21b1d37023 dashdemux: remove unused stream uridownloader
The uridownloader for the stream fragments isn't used anymore.
2014-05-11 15:26:45 -03:00
Sebastian Dröge
d578cbf7d7 assrender: Do not try to add a feature to a caps features ANY
It does not makes sense and asserts

Based on 7f9aac386f from gst-plugins-base.
2014-05-11 07:56:50 +02:00
Tim-Philipp Müller
ab783acd7f rtmpsrc: error out if we get EOS immediately without any data
It's not really right to just go EOS as if nothing was wrong.
2014-05-10 12:57:29 +01:00
Sebastian Dröge
951bb53057 hls: Remove invalid free
data does not have to be freed at all here, it's a pointer to
an arbitrary position inside the current line. Also don't reuse
the data variable for anything else, that will cause crashes
in playlists that have the I-frame playlist URI followed by
other attributes.

CID 1212127
2014-05-09 15:30:00 +02:00
Julien Isorce
9a917fb8a9 gleffects: use gl_vtable 2014-05-08 16:08:08 +01:00
Matthew Waters
a49a371710 gl/upload: implement lazy init
Rename init_format to set_format
2014-05-08 15:33:43 +10:00
Matthew Waters
a27589629d gl: advertise GstGLMemory usage in the caps as capsfeatures
https://bugzilla.gnome.org/show_bug.cgi?id=729658
2014-05-07 21:48:57 +10:00
Thiago Santos
a5b3ba09b8 dashdemux: deprecate max-buffering-time property
It is not used as dashdemux doesn't have a internal buffer
for fragments anymore
2014-05-07 01:00:50 -03:00
Thiago Santos
e9638fe3fd dashdemux: removing old unused code
The 'catch up mode' isn't needed anymore since dashdemux
is downloading and pushing from the same thread
2014-05-07 01:00:49 -03:00
Thiago Santos
5df2edf80c dashdemux: remember to set starting fragment to new fragments 2014-05-07 01:00:49 -03:00
Thiago Santos
733c7c0f16 dashdemux: handle a few more error cases
related to missing plugins, bad URI and a lockup on dealing with
errors from the source.
2014-05-07 01:00:49 -03:00
Thiago Santos
173c353716 dashdemux: Only set timestamp to the first buffer of fragments
Setting it to the other parts of the fragment is slightly wrong
and misleading as it isn't accurate enough.
2014-05-07 01:00:49 -03:00
Thiago Santos
f09dd7e7a5 dashdemux: handle error messages from the sources
Set up a message handling function to be able to catch errors
from the source element and signal the cond to allow the download
loop to retry the download.
2014-05-07 01:00:49 -03:00
Thiago Santos
15952dcd8e dashdemux: check for errors between downloads
To abort earlier in case of failures
2014-05-07 01:00:49 -03:00
Thiago Santos
b5998a4c3b dashdemux: Always accept the latency configure event
Upstream or internal elements are irrelevant and we should
always succeed.
2014-05-07 01:00:49 -03:00
Thiago Santos
d6671e73a6 dashdemux: measure download rate just like hlsdemux
new bitrate = (old bitrate + (last fragment bitrate * 3)) / 4
2014-05-07 01:00:49 -03:00
Thiago Santos
bed3d66605 dashdemux: remove uridownloader from fragments download
Instead, use a source element linked to a ghostpad to provide
smaller buffers and more granular control for downstream
buffering elements while also reducing startup latency
2014-05-07 01:00:49 -03:00
Matthew Waters
6f4fd70867 gl/sink: make sure we always initialize the upload object
https://bugzilla.gnome.org/show_bug.cgi?id=729542
2014-05-07 09:12:23 +10:00
Thiago Santos
7dfd308e8c hlsdemux: fix internal source event leaks 2014-05-06 19:24:55 -03:00
Olivier Crête
0566be384d srtpdec: Don't reset stream if the key hasn't changed 2014-05-06 00:49:59 -04:00
Olivier Crête
b2a6490626 srtpdec: Add "remove-key" action signal to remove a single key
Removing all the keys can be a problem as it also resets the various
counters, so instead add an option to remove a single key.
2014-05-06 00:49:59 -04:00
Olivier Crête
53a4e05261 srtpenc: Use %u in templates to match rtpbin 2014-05-06 00:49:22 -04:00
Olivier Crête
8c9b1ade36 srtpdec: Remove unused field 2014-05-06 00:49:15 -04:00
Thiago Santos
b891bd04d5 hlsdemux: Only set the segment position if there is a timestamp
Only the first buffer of a fragment has its timestamp set, so only
update the segment.position when pushing those buffers to avoid
having GST_CLOCK_TIME_NONE set to the position

https://bugzilla.gnome.org/show_bug.cgi?id=729364
2014-05-05 11:35:35 -03:00
Sebastian Dröge
0ce2b0632e hlsdemux: Set Cache-Control header according to the caching requirements of the playlist 2014-05-05 09:46:06 +02:00