Luis de Bethencourt
ecf8f97316
resindvd: remove unused value
...
The data variable is incremented but never read again. Remove the unused value
assignment.
2015-05-27 12:03:45 +01:00
Thiago Santos
6f1c58dedf
hlsdemux: remove more unused attributes
...
Those are not used or only read
2015-05-27 06:17:49 -03:00
Thiago Santos
030700a24b
hlsdemux: remove unused attribute
...
It is never read for anything useful
2015-05-27 05:36:10 -03:00
Xavier Claessens
2bb01f9601
gloverlay: fix a leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=749846
2015-05-26 16:49:55 -04:00
Xavier Claessens
53cd9e3e0e
gloverlay: properly handle errors while loading file
...
Post an error on the bus if anything bad happens while reading
and parsing the image file.
https://bugzilla.gnome.org/show_bug.cgi?id=749846
2015-05-26 16:49:55 -04:00
Xavier Claessens
02b2c2edf6
gloverlay: remove unused type_file field
...
https://bugzilla.gnome.org/show_bug.cgi?id=749846
2015-05-26 16:49:55 -04:00
Matthew Waters
db9e0cf5c7
gleffects: properly initialize the shaders across contexts implementing multiple API's
2015-05-26 12:50:58 +10:00
Matthew Waters
cb482f13be
gleffects_laplacian: fix shader compilation in gl3/gles2
...
https://bugzilla.gnome.org/show_bug.cgi?id=748393
2015-05-26 12:50:58 +10:00
Patricia Muscalu
c1bad1be5d
curlsink: handle socket callback for active FTP connections as well
...
Since version 7.28.0, libcurl allows application to set
socket options for active FTP connections.
Bump libcurl requirement to version tested.
https://bugzilla.gnome.org/show_bug.cgi?id=749815
2015-05-25 19:37:53 +01:00
David Waring
c4ff5359aa
dashdemux: Fix segfault introduced by segment iteration refactoring (2105a310).
...
The functions to get the next fragment, next fragment timestamp and to advance
to the next fragment need to work differently when stream->segments is NULL.
Use logic similar to that introduced by commit 2105a310 to perform these
functions.
https://bugzilla.gnome.org/show_bug.cgi?id=749684
2015-05-25 10:02:07 -03:00
Thiago Santos
0910540d58
dashdemux: use signed integet to represent segment index
...
We need to be able to represent -1 to check when we are EOS
on reverse playback and unsigned integer won't allow that.
CID #1298193
CID #1298194
CID #1298195
https://bugzilla.gnome.org/show_bug.cgi?id=749534
2015-05-25 09:02:30 -03:00
Suhwang Kim
f6cc8d13e0
dashdemux: fix outdated example launch line
...
https://bugzilla.gnome.org/show_bug.cgi?id=749809
2015-05-25 11:12:47 +01:00
Matthew Waters
9dcefacb3d
gltransformation: fix DrawElements call for element array buffers
...
https://bugzilla.gnome.org/show_bug.cgi?id=749734
2015-05-25 17:39:08 +10:00
Jimmy Ohn
be90a12916
dashdemux: remove unnecessary semicolon
...
https://bugzilla.gnome.org/show_bug.cgi?id=749691
2015-05-22 09:40:35 +01:00
Sebastian Dröge
3230e51993
compositor/glvideomixer: Don't calculate PAR/DAR with unset GstVideoInfos
...
Otherwise we divide by zero.
2015-05-21 16:24:48 +03:00
Matthew Waters
d1419afef1
compositor/glvideomixer: fix up par handling
...
We were using the wrong formula
https://bugzilla.gnome.org/show_bug.cgi?id=749634
2015-05-21 01:04:38 +10:00
Thijs Vermeir
8d728abd8c
x265enc: Only copy VPS/SPS/PPS NAL units in header buffer
...
Previously the VPS unit was detected and all next packets where copied
into the header buffer assuming only SPS and PPS would follow. This is
not always true, also other types of NAL units follow the VPS unit and
where copied to the header buffer. Now the VPS/SPS/PPS are explicitely
detected and copied in the header buffer.
2015-05-20 13:16:01 +02:00
Thijs Vermeir
db766de135
x265enc: Fix tune parameter mismatch
...
There was a mismatch between the tune parameter in x265 and the enum
used in this element. The value in the enum is the x265 tune
parameter + 1.
2015-05-20 11:32:52 +02:00
Matthew Waters
8157574d0f
caopengllayersink: static const the indices array
...
the contents will never change anyway.
2015-05-20 00:56:44 +10:00
Matthew Waters
057130b93d
caopengllayersink: correctly use the sync meta across multiple contexts
...
1. Set the sync point after the (possible) upload has occured
2. Wait in the correct GL context (the draw context)
Note: We don't add the GL sync meta to the input buffer as it's not
writable and a copy would be expensive.
Similar to the change with the same name for glimagesink
2015-05-20 00:36:48 +10:00
Matthew Waters
49c4d0850d
caopengllayersink: update for GL3 element array buffer usage
...
fixes blank output
2015-05-20 00:36:48 +10:00
Matthew Waters
6a2d12bf47
glimagesink: correctly use the sync meta across multiple contexts
...
1. Set the sync point after the (possible) upload has occured
2. Wait in the correct GL context (the draw context)
Note: We don't add the GL sync meta to the input buffer as it's not
writable and a copy would be expensive.
2015-05-20 00:36:48 +10:00
Jimmy Ohn
4ca3a22b6b
hlsdemux: Simplify logic in process_manifest
...
Simplify logic in process_manifest and remove a TODO item.
https://bugzilla.gnome.org/show_bug.cgi?id=749328
2015-05-18 10:52:35 +03:00
Vineeth T M
6b43d7f770
cvsmooth: rename properties
...
The properties are named as param1 to param4, which makes very little sense
hence renamed the properties according to what it is doing.
https://bugzilla.gnome.org/show_bug.cgi?id=749523
2015-05-18 10:50:23 +03:00
Vineeth T M
1fa8e75f44
cvsmooth: Wrong assignment of prop leads to crash
...
when setting param2 property, it is wrongly being assigned to param1.
This leads to wrong behavior and a crash when param2 is set as 0.
https://bugzilla.gnome.org/show_bug.cgi?id=749523
2015-05-18 10:48:49 +03:00
Vineeth T M
8df641016e
pyramidsegment: wrong value of level property
...
The property level has a minimum value of 0. But when we set the level as 0,
it gets an assertion error. The function icvPyrSegmentation8uC3R returns false
if level is set as 0, since the minimum level cant be 0 and thus results in error.
Hence changing the minimum value to 1.
https://bugzilla.gnome.org/show_bug.cgi?id=749525
2015-05-18 10:47:45 +03:00
Jose Antonio Santos Cadenas
d625770a18
dtls: Fix memory leak
...
Keys were not correctly released when it was get as a property
nor when a second key was received
https://bugzilla.gnome.org/show_bug.cgi?id=749380
2015-05-15 15:47:39 +03:00
Matthew Waters
c6abd1632f
glimagesink: free the vertex buffer when done
...
fixes a memory leak
2015-05-14 21:21:01 +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
Matthew Waters
1f89d1dce2
glimagesink: cleanup properties
...
remove unused "display-name"
ensure defaults between the bin/element are the same
2015-05-14 15:10:59 +10:00
Matthew Waters
a852146624
gleffects: only try the GL2 shader init path if we have a GL2 context
2015-05-14 14:58:07 +10:00
Matthew Waters
7f7a9dd3ec
gl: element buffers are part of vao state
...
Use them as such. They are also required for GL3 core profile support
with glDrawElements on OS X.
2015-05-14 14:58:07 +10:00
Thiago Santos
f4789d0430
dashdemux: avoid busy-looping when waiting for new fragment
...
When all fragments have already been downloaded on a live stream
dashdemux would busy loop as the default implementation of
has_next_fragment would return TRUE. Implement it to correctly
signal if adaptivedemux should wait for the manifest update before
trying to get new fragments.
2015-05-13 13:39:32 -03:00
Thiago Santos
23ad922b64
dashdemux: Improve live stream manifest update repositioning
...
When updating the manifest the timestamps on it might have changed a little
due to rounding and timescale conversions. If the change makes the timestamp
of the current segment to go up it makes dashdemux reposition to the previous
one causing one extra unnecessary download.
So when repositioning add an extra 10 microseconds to cover for that rounding
issues and increase the chance of falling in the same segment.
Additionally, also improve the time used when the client is already after the
last segment. Instead of using the last segment starting timestamp use the
final timestamp to make it reposition to the next one and not to the one that
has already been downloaded.
2015-05-13 13:39:31 -03:00
Thiago Santos
7de9fbc122
dashdemux: add more protection when acessing gptrarray entries
...
The glib structure doesn't do range checking so we have to do it
ourselves.
Also adds some more debugging messages
2015-05-13 13:39:24 -03:00
Thiago Santos
f298fca8ad
dashdemux: remove unused functions
...
These functions of directly getting and setting segment indexes
are no longer useful as now we need 2 indexes: repeat and segment
index.
The only operations needed are advance_segment, going back to the
first one or seeking for a timestamp.
2015-05-13 13:39:18 -03:00
Thiago Santos
d617139ee7
dashdemux: reuse seeking function to reduce repeated code
...
Instead of writing a seek routine, just use the mpdparser function.
Also remove function that is not needed anymore
2015-05-13 13:35:14 -03:00
Thiago Santos
57a2105a31
dashdemux: refactor segment iteration for better performance
...
Segments are now stored with their repeat counts instead of spanding
them to multiple segments. This caused advancing to the next segment
using a single index to have to iterate over the whole list every time.
This commit addresses this by storing both the segment index as well
as the repeat index and makes advancing to next segment just an
increment of the repeat or the segment index.
2015-05-13 13:35:14 -03:00
Thiago Santos
6344f86e44
dashdemux: improve mpd parsing for repeated segment entries
...
Use a single segment to represent it internally to avoid using too
much memory. This has the drawback of issuing a linear search to
find the correct segment to play but this can be fixed by using
binary searches or caching the current position and just looking
for the next one.
https://bugzilla.gnome.org/show_bug.cgi?id=748369
2015-05-13 13:35:14 -03:00
Jose Antonio Santos Cadenas
aae1a5e2ce
dtlsenc: Fix memory leak releasing connection_id
...
https://bugzilla.gnome.org/show_bug.cgi?id=749318
2015-05-13 19:14:34 +03:00
Jose Antonio Santos Cadenas
6b0183b7bf
dtlsenc: Fix memory leak while setting connection-id
...
https://bugzilla.gnome.org/show_bug.cgi?id=749318
2015-05-13 19:14:17 +03:00
Jose Antonio Santos Cadenas
3c3d6e8828
dtlsdec: Fix memory leak, release previous pem
...
https://bugzilla.gnome.org/show_bug.cgi?id=749322
2015-05-13 19:12:51 +03:00
Jose Antonio Santos Cadenas
2173f9f15d
dtlsdec: Fix memory leak on dispose
...
Parent dispose function was not called
https://bugzilla.gnome.org/show_bug.cgi?id=749322
2015-05-13 19:12:32 +03:00
Jose Antonio Santos Cadenas
c44acd8bde
dtlsconnection: Fix memory leak while setting closure
...
https://bugzilla.gnome.org/show_bug.cgi?id=749325
2015-05-13 19:10:34 +03:00
Matthew Waters
1853e455ac
gl: don't deadlock on context creation failure
...
https://bugzilla.gnome.org/show_bug.cgi?id=749284
2015-05-13 23:56:48 +10:00
Sebastian Dröge
5f6bddf719
glmixerbin: Don't unref pad templates
...
Otherwise we unref the reference that is owned by the element class.
2015-05-13 15:42:50 +03:00
Tim-Philipp Müller
9adefac59b
srtpenc: fix failure return values from create_session()
...
create_session() returns an err_status_t with
err_status_ok=0 and err_status_fail=1, so
returning TRUE/FALSE is not quite right.
https://bugzilla.gnome.org/show_bug.cgi?id=749304
2015-05-13 12:32:53 +01:00
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