Commit graph

4762 commits

Author SHA1 Message Date
Edward Hervey 23d1440a60 urisourcebin: Avoid potential unitialized/wrong bitrate value
Only calculate and set the bitrate if all conditions are met.
2018-11-09 12:22:31 +01:00
Edward Hervey 18942d7875 urisourcebin: Fix previous commit
rebase wasn't correct :)
2018-11-07 16:28:28 +01:00
Matthew Waters af166b5b22 urisourcebin: add a statistics property for queueing
It contains the minimum/maximum/average byte and time levels of the
queues inside this urisourcebin

https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
2018-11-07 15:10:05 +00:00
Matthew Waters 81e00791bf uisourcebin: update forwarded properties on change
Allows changing queueing properties at runtime

https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
2018-11-07 15:10:05 +00:00
Matthew Waters 784e621b54 urisourcebin: add low/high-watermark properties
These are forwarded to the contained queues.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
2018-11-07 15:10:05 +00:00
Matthew Waters 8b69b689c0 urisourcebin: limit the byte size of the queue based on the buffer-size
Use the bitrate advertised by queue2 to determine the limits to
set across possibly multiple queue2/downloadbuffer elements.  e.g.
with two queue2's and a max-bytes based on the ratio of the
bitrate/cumulative_bitrate multiplied by the buffer_size set on urisourcebin.

This allows finer grained control over the buffer used by all the queue
elements inside urisourcebin.  Instead of a maximum of
n_streams*buffer_size being used, only buffer_size will be used however
we will fallback to n_streams*buffer_size if one of the queue2's does
not have bitrate information.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
2018-11-07 15:10:05 +00:00
Matthew Waters a8e2f76731 urisourcebin: remove unused instance variable streams 2018-11-07 15:10:05 +00:00
Philippe Normand 610fa16784 playbin3: New text-offset property
This new property controls the synchronisation offset between the text and video
streams. Positive values make the text ahead of the video and negative values
make the text go behind the video.

https://bugzilla.gnome.org/show_bug.cgi?id=797134
2018-11-01 09:52:34 +00:00
Philippe Normand dc5006fa25 playbin: New text-offset property
This new property controls the synchronisation offset between the text and video
streams. Positive values make the text ahead of the video and negative values
make the text go behind the video.

https://bugzilla.gnome.org/show_bug.cgi?id=797134
2018-11-01 09:52:34 +00:00
Philippe Normand ea3b074ead playsink: Add text-offset property
When the playsink contains a text chain this property controls the
synchronisation of the subtitles and video by controlling the underlying
subtitleoverlay::subtitle-ts-offset property.

https://bugzilla.gnome.org/show_bug.cgi?id=797134
2018-11-01 09:52:34 +00:00
Philippe Normand 3cd38be94b subtitleoverlay: Add a subtitle-ts-offset property
This property controls the synchronisation offset between text and video in
nanoseconds, by updating the parser src pad offset.

https://bugzilla.gnome.org/show_bug.cgi?id=797134
2018-11-01 09:52:34 +00:00
Johan Bjäreholt f780c718e7 overlaycomposition: Fix implicit use of memset
https://bugzilla.gnome.org/show_bug.cgi?id=797353
2018-10-29 13:12:30 +00:00
Sebastian Dröge 088b4c0c52 overlaycomposition: New element that allows applications to draw GstVideoOverlayComposition on a stream
https://bugzilla.gnome.org/show_bug.cgi?id=797234
2018-10-28 17:03:47 +00:00
Sebastian Dröge 596a4ee12f parsebin: Add missing locks/unlocks of the chain mutex
Before freeing pending pads it is required to hold the mutex, that's
what is protecting the list of pending pads in other places.

https://bugzilla.gnome.org/show_bug.cgi?id=796935
2018-10-28 17:03:47 +00:00
Roland Jon a15baf7976 decodebin3: fix eos event leak
https://bugzilla.gnome.org/show_bug.cgi?id=796860
2018-10-18 13:03:31 +01:00
Seungha Yang 3499d9ea64 meson: Replace empty configuration_data() with copy keyword
Use 'copy' keyword to avoid meson warning message.
Note that 'copy' keyword in configure_file() is available
since meson 0.47.0

https://bugzilla.gnome.org/show_bug.cgi?id=797298
2018-10-17 13:48:47 +01:00
Matej Knopp 18f082a0d8 audioconvert: remove layout from structure when fixating caps
otherwise caps intersection always fails when converting non-interleaved to interleaved audio

https://bugzilla.gnome.org/show_bug.cgi?id=797225
2018-10-05 15:40:13 +03:00
Johan Bjäreholt 448ed0f244 Removed unused GST_CAT_PERFORMANCE
https://bugzilla.gnome.org/show_bug.cgi?id=797175
2018-09-19 15:06:19 +03:00
Philippe Normand 62e4e15245 playsink: audio visualization support fixes
The queue between the audiotee and the audio chain wasn't properly added to the
bin, leading to streamsynchronizer locks on EOS. Reconfiguration of the
visualization chain wasn't working as expected either. It is now possible to
dynamically enable/disable the audio visualization support.

https://bugzilla.gnome.org/show_bug.cgi?id=796553
2018-08-16 17:17:42 +01:00
Nirbheek Chauhan eadedc68f8 meson: Add feature options for all plugins
GL dependency detection is still automagic.

https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 18:42:11 +05:30
Justin Kim 4fa850e3e6 audiorate: accumulate offset by time diff
The fomula, 'offset = time / rate', is correct only if
the rate is never changed. When the rate is changed,
the offset should be re-calculated based on the previous
offset.

https://bugzilla.gnome.org/show_bug.cgi?id=791269
2018-07-19 18:19:19 -04:00
Wonchul Lee 53ae7df2e2 urisourcebin: Rename urisourcebin variable and query functions
https://bugzilla.gnome.org/show_bug.cgi?id=770693
2018-07-18 11:11:50 +02:00
Seungha Yang e3362e459b urisourcebin: Set streams-aware flag
https://bugzilla.gnome.org/show_bug.cgi?id=777213

https://bugzilla.gnome.org/show_bug.cgi?id=775132
2018-07-18 09:22:56 +02:00
Guillaume Desmottes 86b0802378 rawvideoparse: fix typo in 'plane-offsets' description
The property is 'plane-offsets', not 'plane-offset' so the example in
the description was wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=796817
2018-07-16 13:14:34 +02:00
George Kiagiadakis 09171b11ac audiorate: fix support for non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796741
2018-07-12 13:38:27 +03:00
George Kiagiadakis a498d3fe6e adder: remove non-interleaved layout from caps
adder needs more than just trivial work to support planar buffers properly
because it currently reads sub-buffers from GstCollectPads in order for all
of them to have matching sizes. In planar mode, this means it would truncate
some channels and mix them up in strange ways. It only works if all input
buffers in all sink pads have matching sizes.
2018-07-11 16:56:50 +03:00
George Kiagiadakis 114f0abbd7 audioresample: implement support for non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=705986
2018-07-11 16:26:13 +03:00
George Kiagiadakis 0eda002cfd audioconvert: implement support for converting between interleaved and non-interleaved layouts
https://bugzilla.gnome.org/show_bug.cgi?id=705986
2018-07-11 16:26:13 +03:00
George Kiagiadakis f6f8b979d6 audiotestsrc: implement producing non-interleaved audio buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796739
2018-07-11 12:23:19 +03:00
Sebastian Dröge 268c5e7e17 parsebin: Don't try to continue autoplugging a parser if we got raw caps
Otherwise we'll fail with an unhelpful message that no decoder for the
raw caps was found if a container contains raw media.
2018-07-06 17:49:39 +02:00
Edward Hervey 2657fc1fdd typefindfunctions: Bail out on huge EBML chunks
We can't handle/store more than guint32 anyway
2018-07-06 13:48:09 +02:00
Edward Hervey 38ba954e82 typefindfunctions: Use guint32 for sizes
This brings it in sync with the type used with gst_type_find_*() API
2018-07-06 13:47:58 +02:00
Edward Hervey a87724138b typefindfunctions: Use types of same size/signedness
Where applicable/possible
2018-07-06 13:12:51 +02:00
Edward Hervey a7e8f16df3 playsink: Properly propagate SEGMENT seqnum
When flushing chains, make sure the FLUSH events have seqnum
that are consistent with the current SEGMENT seqnum
2018-06-05 17:30:47 +02:00
Edward Hervey 5efa8e1f89 streamsynchronizer: Properly propagate seqnum on EOS event 2018-06-05 17:29:53 +02:00
Edward Hervey 3ac37bbe67 subparse: Don't read beyond array
If num_open_tags is 0, we shouldn't try to get the "last" open tag
since there isn't any.
2018-05-30 11:39:40 +02:00
Tim-Philipp Müller 9158f9f7eb docs: Fix typos 2018-05-22 14:10:03 +01:00
hoonhee.lee 88196c36f1 playbin3: Collect appropriate stream-type when doing stream selection
https://bugzilla.gnome.org/show_bug.cgi?id=796193
2018-05-17 10:19:07 +01:00
Philippe Normand b7e8d1657d subparse: follow-up build fix after d871b1205 2018-05-12 17:21:01 +01:00
Philippe Normand 8cfd85ec61 subparse: support for more than 32 unclosed markup tags
https://bugzilla.gnome.org/show_bug.cgi?id=796043
2018-05-12 17:05:06 +01:00
Roland Jon afca8d4815 parsebin: remove unused macro definitions
https://bugzilla.gnome.org/show_bug.cgi?id=796039
2018-05-12 07:59:21 +02:00
Seungha Yang 3678866474 decodebin3: Do not modify structure of EOS event
https://bugzilla.gnome.org/show_bug.cgi?id=795981
2018-05-10 09:09:08 +02:00
Seungha Yang 4567fcc64c urisourcebin: Do not modify structure of EOS event
https://bugzilla.gnome.org/show_bug.cgi?id=795981
2018-05-10 09:09:08 +02:00
Seungha Yang 7e724bddf3 uridecodebin3: Fix GList leak
https://bugzilla.gnome.org/show_bug.cgi?id=795937
2018-05-09 07:03:13 +01:00
Seungha Yang 12694200d5 uridecodebin3: Fix string leak
uri and suburi should be free'd

https://bugzilla.gnome.org/show_bug.cgi?id=795932
2018-05-08 16:20:08 +01:00
hoonhee.lee 1e28cba088 decodebin3: Re-order all streams and add to collection
Sort all streams from parsebins by stream type and SELECT flag
and stream-id. First video, then audio, then others.

https://bugzilla.gnome.org/show_bug.cgi?id=775615
2018-05-06 16:31:43 +02:00
Tim-Philipp Müller 1654faad38 typefindfunctions: fix tap typefinder
If we memcmp() 12 bytes we should make sure to get
at least 12 bytes as well, and not just 8 bytes.

Thanks oss-fuzz!
2018-05-06 11:10:21 +02:00
Tim-Philipp Müller 4187242a7c tcp: fix markup for example pipelines in docs
gtk-doc doesn't like the # it seems.

https://bugzilla.gnome.org/show_bug.cgi?id=795548
2018-05-05 18:02:16 +02:00
Fabrizio Gennari 401555ffb8 typefind: Add TAP and DMP files support
https://bugzilla.gnome.org/show_bug.cgi?id=661137
2018-05-05 17:13:50 +02:00
Thibault Saunier 9ce8cf89ba encodebin: Also lock input caps when dynamic output is disabled
With the way caps negotiation work in encoders, the only way to ensure
that no downstream renegotiation is done in the encoder is to also lock
upstream caps. Anyway with the current behavior upstream of encoders
*require* to handle any file format so locking upstream format should
be safe.

https://bugzilla.gnome.org/show_bug.cgi?id=795464
2018-05-01 21:15:25 +02:00