Adam Williamson
52ef192526
opencv: set opencv_dep when option is disabled ( #1406 )
...
The examples build file checks opencv_dep, so it still needs to
be set even if the option is disabled.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1406
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1570 >
2020-09-11 07:16:21 +00:00
Mathieu Duponchelle
c096d30f6b
openh264dec: port to new request_sync_point() API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1571 >
2020-09-10 23:44:50 +02:00
Mathieu Duponchelle
c58357fb66
line21enc: add remove-caption-meta property
...
Similar to #GstCCExtractor:remove-caption-meta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1554 >
2020-09-09 22:11:28 +02:00
Mathieu Duponchelle
c07e2a89ba
line21enc: heavily constrain video height
...
We can only determine a correct placement for the CC line
with:
* height == 525 (standard NTSC, line 21 / 22)
* height == 486 (NTSC usable lines + 6 lines for VBI, line 1 / 2)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1554 >
2020-09-09 19:38:58 +02:00
Mathieu Duponchelle
1d416750d1
line21enc: add support for CDP closed caption meta
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1554 >
2020-09-09 19:12:11 +02:00
Jan Alexander Steffens (heftig)
3f9a7e5c73
hlssink2: Actually release splitmuxsink's pads
...
It was looking at the "outer" peer of the ghost pad, not the "inner"
peer (the target).
It provided the wrong pad to gst_element_release_request_pad.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1551 >
2020-09-09 01:06:21 +00:00
Sebastian Dröge
64039cdf84
gst: Update for gst_video_transfer_function_*() function renaming
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1557 >
2020-09-07 12:14:47 +03:00
Nirbheek Chauhan
16d84a2816
webrtc: Clean up the userinfo unescaping code
...
Continuation from 04fd705906
. This is
easier to understand and also avoids two copies.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1547 >
2020-08-30 09:53:42 +00:00
Jonathan Matthew
2b024ec1b4
modplug: avoid division by zero
...
Under some conditions, GetMaxPosition() returns zero, which should cause
position queries to fail rather than crash.
2020-08-28 08:10:04 +10:00
trilene
04fd705906
webrtc: Unescape turnserver user and password
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1530 >
2020-08-26 23:37:17 +01:00
Tim-Philipp Müller
b48702e4bc
sctp: usrsctp: increase DIAG_MSG_LEN to accomodate longer file path
...
Fixes "‘%s’ directive output truncated writing XX bytes into
a region of size NN [-Wformat-truncation=]" compiler warnings.
https://github.com/sctplab/usrsctp/pull/521
Fixes #1389
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1540 >
2020-08-26 00:00:24 +01:00
Philippe Normand
2caa3e0230
wpe: skip glbasesrc decide_allocation when non-GL caps are negotiated
...
Checking for GL caps features in gl_start() was done too late in case the parent
class fails to setup a working GL context. The element now determines if GL
support should be enabled during the decide-allocation query handling.
Additionally, when no GL context was found, we need to handle the element
cleanup because in that situation glbasesrc won't call gl_stop.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1376
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1532 >
2020-08-24 20:59:50 +00:00
Matthew Waters
e15a8fcbdd
webrtc/datachannel: clear the error after use
...
Fixes a memory leak
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1535 >
2020-08-24 17:02:35 +10:00
Matthew Waters
7489addc0a
webrtc/datachannel: free previous protocol/label fields
...
Fixes a memory leak
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1535 >
2020-08-24 17:02:35 +10:00
Matthew Waters
e5a2e3ac4c
sctpdec: unref after retrieving the static pad template
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1535 >
2020-08-24 17:02:35 +10:00
Matthew Waters
9011539940
webrtc/ice: resolve .local candidates internally
...
Requires the system's DNS resolver to support mdns resolution.
Fixes interoperablity with recent versions of chrome/firefox that
produce .local address in for local candidates.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1139
2020-08-20 13:01:17 +10:00
J. Kim
8e9f8c7f2c
srtobject: set error when canceled waiting for a caller
...
To propagate error, this commit sets a reason. Otherwise, the function
caller should check if `error` is NULL when the return value is not normal.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1522 >
2020-08-19 12:01:37 +00:00
J. Kim
ebdb3447ce
srtobject: fix typo, s/errorj/error
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1522 >
2020-08-19 11:31:41 +00:00
Vivia Nikolaidou
dc58065dfb
fdkaacenc: Implement flush function
...
The internal fdk encoder always produces 1024 bytes even with no input,
so special care should be taken to not drain it twice.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1515 >
2020-08-17 23:39:39 +03:00
Jan Alexander Steffens (heftig)
76c171509e
fdkaacenc: Refactor layout selection code
...
No functional change.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1359 >
2020-08-17 10:19:56 +02:00
Jan Alexander Steffens (heftig)
5e68124981
fdkaacenc: Move channel layouts to gstfdkaac.c
...
In preparation of sharing them with the decoder. Iteration of the
channel layouts needs to be changed to use a sentinel element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1359 >
2020-08-17 08:07:00 +00:00
Matthew Waters
2d31aba78d
vulkan: docs annotation updates
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1506 >
2020-08-15 02:55:30 +00:00
Philippe Normand
314a8c023f
wpe: WebView and WebContext handling fixes
...
The WPEThreaded view is now split in 2 classes:
- WPEContextThread handles the persistent WebKit thread, where all WebKit API
calls should be handled.
- WPEView: is created from the WPEContextThread. It handles the WebView and
maintains the public interface on which wpesrc relies. This is the facade for
the WebView, basically. It takes care of dispatching API calls into the context
thread.
With these fixes it is now possible to create (and reuse) mutlple wpesrc
elements during the application lifetime.
Fixes #1372
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1484 >
2020-08-14 09:41:56 +00:00
Sebastian Dröge
7ef393d5ff
sctp: fix build with GST_DISABLE_GST_DEBUG
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1465 >
2020-08-14 01:48:33 +01:00
Tim-Philipp Müller
80a0da9698
sctp: hook up internal copy of libusrsctp to build
...
Add option 'sctp-internal-usrsctp' so people can choose
to build againts the distro version instead.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/870
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1465 >
2020-08-14 01:33:28 +01:00
Tim-Philipp Müller
f4538e24b6
sctp: import internal copy of usrsctp library
...
There are problems with global shared state and no API stability
guarantees, and we can't rely on distros shipping the fixes we
need. Both firefox and Chrome bundle their own copies too.
Imported from https://github.com/sctplab/usrsctp ,
commit 547d3b46c64876c0336b9eef297fda58dbe1adaf
Date: Thu Jul 23 21:49:32 2020 +0200
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/870
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1465 >
2020-08-14 01:32:45 +01:00
Seungha Yang
91f9490529
cccombiner: Correct sink_query chain up and fix caps leaks
...
Don't chain up to src_query() from sink_query() method, and
returned caps by gst_static_pad_template_get_caps() needs to be
cleared.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1513 >
2020-08-13 20:42:51 +09:00
Hosang Lee
d9dda36e02
smoothstreaming: start closer to the edge in live streams
...
It is more appropriate to start closer to the live edge in
live streams. Some live streams maintain a large dvr window
(over few hours in some cases), so starting from the first
fragment will be too far away from the live edge.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1346 >
2020-08-10 16:13:30 +09:00
Sebastian Dröge
1d1b3eb8b4
cccombiner: Update for additional info parameter to the "samples-selected" signal
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/590
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1498 >
2020-08-07 17:53:14 +00:00
Mathieu Duponchelle
93a54093ec
mpeg2enc: add disable-encode-retries property
...
MJPEG Tools may reencode pictures in a second pass to stick
closer to the target bitrate. This can result in slower than
real-time encoding for full HD content in certain situations,
as entire GOPs need reencoding when the reference picture is
reencoded.
See https://sourceforge.net/p/mjpeg/bugs/141/ for background
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Mathieu Duponchelle
674ad01016
mpeg2enc: report a latency
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Mathieu Duponchelle
2dfceac9fc
mpeg2enc: finalize GstVideoEncoder port
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Tim-Philipp Müller
c9d10e2277
mpeg2enc: store video encoder instance directly in stream writer class
...
Instead of storing the pad and then only using it to get the
element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Tim-Philipp Müller
8a745529c7
mpeg2enc: remove unused streamwriter member 'buf'
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Tim-Philipp Müller
0c28c406cc
mpeg2enc: remove some unused code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Tim-Philipp Müller
7f6eb54d42
mpeg2enc: remove code paths for older mjpegtools versions
...
Gets rid of lots of code paths that no one has built,
used or tested for ages, and makes code more maintainable.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Alban Browaeys
79d90b4fd2
mpeg2enc: initial port to GstVideoEncoder base class
...
https://bugzilla.gnome.org/show_bug.cgi?id=685414
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1491 >
2020-08-06 17:13:03 +00:00
Sebastian Dröge
e70ec38000
srt: Add support for using hostnames instead of IP addresses
...
If an address can't be parsed as IP address, try resolving it via
GResolver instead. SRT URIs more often than not contain hostnames and
without trying to resolve them we won't be able to handle such URIs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1493 >
2020-08-06 07:29:14 +00:00
Mathieu Duponchelle
1522e40397
cccombiner: update to new samples selection API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1497 >
2020-08-05 18:16:32 +02:00
Jordan Petridis
cee211123a
opencv: compile with -Wno-format-nonliteral
...
opencv plugin is pulling a header which makses clang++ 10
complain a lot and blocks -werror.
```
/usr/include/opencv4/opencv2/flann/logger.h:83:36: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
int ret = vfprintf(stream, fmt, arglist);
^~~
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1494 >
2020-08-05 12:17:06 +00:00
Jordan Petridis
92f9567737
gstlv2utils.c: avoid implicit float to int conversion
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1487 >
2020-08-04 11:37:52 +00:00
Jordan Petridis
5705301ed5
gstladspautils.c: avoid implicit float to int conversion
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1487 >
2020-08-04 11:37:52 +00:00
Francisco Javier Velázquez-García
97b5951d25
srtobject: Add support for IPv6
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1477 >
2020-08-03 21:46:04 +00:00
Francisco Javier Velázquez-García
1ba379ded0
srtobject: Reset parameters before setting URI
...
This makes `gst_srt_object_validate_parameters` work properly since
`localaddress` and `localport` will be missing if the URL did not
provide them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1477 >
2020-08-03 21:46:04 +00:00
Francisco Javier Velázquez-García
096c60f9c5
srtobject: Simplify gst_srt_object_set_*_value
...
This fixes `gst_srt_object_set_string_value` in particular because the
value might not be a static string.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1477 >
2020-08-03 21:46:04 +00:00
Francisco Javier Velázquez-García
1a8e2cf981
srtobject: Store passphrase like other parameters
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1477 >
2020-08-03 21:46:04 +00:00
Nirbheek Chauhan
d4ca8820e7
webrtc, rtmp2: Warn if the user or password aren't escaped
...
If the user/pass aren't escaped, the userinfo will be ambiguous and we
won't know where to split. We will accidentally get it right if the :
belongs in the password.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1481 >
2020-08-03 18:12:50 +00:00
Nirbheek Chauhan
827afa206d
webrtc, rtmp2: Fix parsing of userinfo in URI strings
...
While parsing the string, `gst_uri_from_string()` also unescapes the
userinfo. This is bad if your username contains a `:` character, since
we will then split the userinfo at the wrong location when parsing it.
To fix this, we can use the new `gst_uri_from_string_escaped()` API
that was added in
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/583
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/831
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1481 >
2020-08-03 18:12:50 +00:00
Sebastian Dröge
6e412d42c7
hlssink2: Don't assert if we don't have a current location when receiving the fragment-closed message
...
This can happen if the application did not provide an output stream for
the fragment and didn't handle the error message before splitmuxsink
decided to consider the fragment closed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1469 >
2020-08-03 11:23:36 +00:00
Nicola Murino
8544f3928e
opencv: allow compilation against 4.4.x
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1482 >
2020-08-01 17:38:42 +00:00
Mathieu Duponchelle
265128e7f7
cccombiner: implement samples selection API
...
Call gst_aggregator_selected_samples() after identifying the
caption buffers that will be added as a meta on the next video
buffer.
Implement GstAggregator.peek_next_sample.
Add an example that demonstrates usage of the new API in
combination with the existing buffer-consumed signal.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1390 >
2020-07-30 23:10:33 +00:00
Mathieu Duponchelle
480ede1aa7
wpesrc: timestamp buffers when working with SHM buffers
...
GLBaseSrc::fill() will take care of that when dealing with
images, but as we don't chain up when dealing with SHM buffers
this needs to be done in order for GLBaseSrc::get_times() to
work appropriately.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1476 >
2020-07-30 08:09:47 +00:00
Mathieu Duponchelle
ad57b8040f
wpe: fix ready signalling
...
Receiving the WEBKIT_LOAD_COMMITTED event doesn't actually
mean we have committed an SHM buffer / image yet.
As this is the condition we are interested in, check it
instead.
Also wrap g_cond_wait in a loop for extra correctness points.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1476 >
2020-07-30 08:09:47 +00:00
Damian Hobson-Garcia
deefedd002
waylandsink: Update stale GstBuffer references in wayland buffer cache
...
"waylandsink: use GstMemory instead of GstBuffer for cache lookup"
changes the cache key to GstMemory, but the cached data still needs
a pointer to the GstBuffer to control the buffer lifecycle.
If the GstMemory used as the cache key moves from one GstBuffer to
another, the pointer in the cached data will be out-of-date.
Update the current GstBuffer pointer for each frame so that it always
represents the currently in use (from attach to release) GstBuffer
for each wl_buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1473 >
2020-07-28 11:35:53 +00:00
Tim-Philipp Müller
798249dc9f
directfb: suppress compiler warning from directfb headers
...
On debian sid, directfb 1.7.7
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1467 >
2020-07-25 19:47:43 +01:00
Thibault Saunier
7db147e9aa
iqa: Add a 'mode' property
...
This property currently only supports a 'strict' that checks that
all the input streams have the exact same number of frames.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1424 >
2020-07-23 17:14:08 +00:00
Thibault Saunier
0349f032bf
iqa: Implement child proxy
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1424 >
2020-07-23 17:14:08 +00:00
Matthew Waters
597c1b4ec6
webrtc: remove private properties/signals from the now public ice object
...
We don't want to expose all of the webrtcbin internals to the world.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1444 >
2020-07-20 15:56:20 +10:00
Ederson de Souza
51d5aee94d
avtp: Update documentation
...
- Mention that a new capability is required by "avtpsink" element;
- Use "clockselect" element to change pipeline clock, instead of a
gst-launch option that never saw the light of day.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1443 >
2020-07-16 13:32:56 -07:00
Damian Hobson-Garcia
e6944da134
waylandsink: use GstMemory instead of GstBuffer for cache lookup
...
The GstMemory objects contained in a GstBuffer could be replaced
by an upstream element, which would break the association beteen
the GstBuffer and the wayland wl_buffer, make the cache lookup
results incorrect.
This patch changes the cache lookup to use the first GstMemory
in a buffer instead. For multi-plane buffers, this assumes that
all of the GstMemory(s) will always be moved together as a set,
and that the same (first) GstMemory isn't used with different
combinations of other GstMemory(s).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1401 >
2020-07-15 14:35:06 +00:00
Damian Hobson-Garcia
ff5f264045
waylandsink: Keep per display wayland buffer caches
...
Instead of attaching a single wayland wl_buffer to each GStBuffer as qdata,
keep a separate cache for each display.
A unique wl_buffer and associated metadata is created for each display.
This allows for sharing of GstBuffer objects between multiple
displays, such as when using tee elements.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1401 >
2020-07-15 14:35:06 +00:00
Tim-Philipp Müller
395ecb3d2f
avtp: rename tstamp-mode to timestamp-mode
...
I thnk w cn spre the xtra lttrs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1397 >
2020-07-11 00:14:44 +01:00
Tim-Philipp Müller
92456967d0
opencv: suppress warnings about non-existent include dirs
...
Looks like opencv4 ships with a broken .pc file.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1427 >
2020-07-10 14:57:44 +01:00
Vivia Nikolaidou
bf38898af8
cccombiner: Update segment according to video sink pad
...
Otherwise the following pipeline would preroll after 1000 hours:
gst-launch-1.0 videotestsrc ! x264enc ! cccombiner ! fakesink silent=0 sync=1 -v
Fixes #1355
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1419 >
2020-07-08 17:11:38 +00:00
Tim-Philipp Müller
f3fdd76683
rtmp, transcodebin: fix i18n header includes
...
Fixes #1351
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1416 >
2020-07-07 19:55:00 +01:00
Matthew Waters
ebd1b2c929
ccconverter: write the cdp timecode data correctly
...
We were mixing up the tens part with the unit parts all over the place.
e.g. 12 seconds would be encoded as 0x21 instead of the correct 0x12
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1400 >
2020-07-03 06:54:46 +00:00
Matthew Waters
327a79e982
ccconverter: output warning log if parsing a cdp packet fails
...
Simplifies figuring out why there may be no output from ccconverter with
a cdp input.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1400 >
2020-07-03 06:54:46 +00:00
Matthew Waters
6fa4a8c3c3
ccconverter: fix cdp timecode parsing
...
The first reserved bits are in the most significant bit.
i.e. 0xc0 vs 0x0c
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1400 >
2020-07-03 06:54:46 +00:00
Ederson de Souza
f8bf84307f
avtp: Use g_strerror instead of strerror
...
It should avoid some implicit declaration errors (and be utf-8 friendly).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1404 >
2020-07-03 04:04:39 +00:00
Mathieu Duponchelle
b33f10e7e2
docs: remove gst prefix from plugin titles
2020-07-02 18:10:21 +02:00
Philippe Normand
db0ab58e14
wpe: Set documentation caps
...
As the caps template can vary depending on the WPEBackend-FDO version
found at build time, set a fixed template for the generate documentation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1392 >
2020-07-01 20:31:42 +00:00
Matthew Waters
c6c4d42c4a
ccconverter: fail negotiation when framerate conversion is not possible
...
Converting between anything but cdp will fail at converting
framerates and negotiation should reflect that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1393 >
2020-07-01 19:33:56 +00:00
Matthew Waters
4f334234c8
ccconverter: fix missing output framerate on the caps
...
A pipeline like this:
closedcaption/x-cea-708,format=cdp,framerate=30000/1001 ! ccconverter ! closedcaption/x-cea-708,format=cc_data
would produce a critical/assert:
GStreamer-CRITICAL **: 14:21:11.509: gst_util_fraction_multiply: assertion 'a_d != 0' failed
because there would be no framerate field on ccconverter's output.
Fixed by always fixating a framerate if the input has a framerate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1393 >
2020-07-01 19:33:56 +00:00
Tim-Philipp Müller
c229127b43
avtp: documentation fixes
...
Unclear why hotdoc wants 'gstavtp' as the plugin name here,
that's just wrong.
Add since marker and mark private subclasses as plugin API
so hotdoc knows they belong to the plugin and aren't external.
Fix GstAvtpAafTstampMode get_type() function.
2020-07-01 18:41:25 +01:00
Olivier Crête
cceca1ffe8
webrtcbin: Expose "latency" property
...
This property sets the latency both on the rtpbin/rtpjittbuffer, but
also on the RTPStorage elements currently used by the FEC decoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1367 >
2020-06-29 22:45:31 -04:00
Michael Olbrich
76411205c8
wlvideoformat: fix typo in the format list
...
DRM_FORMAT_ARGB8888 was actually used twice in the list for different SHM /
Gstreamer formats. In this case DRM_FORMAT_ABGR8888 is the correct format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1382 >
2020-06-28 18:55:02 +02:00
Sebastian Dröge
3864c9f97f
gstdtlsconnection: Propagate errors from key export to the caller
...
Otherwise the DTLS connection silently does nothing instead of reporting
an error via the elements.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1156 >
2020-06-26 10:20:04 +03:00
Miguel Paris
3dd2bbf23c
dtlsconnection: do not set keys_exported flag if actually not exported
...
keys_exported flag should be set only if keys are actually exported.
For that the next conditions are needed:
1 - SSL_export_keying_material on success
2 - SSL_get_selected_srtp_profile returns a valid profile
3 - The profile ID is SRTP_AES128_CM_SHA1_80 or SRTP_AES128_CM_SHA1_32
Also don't crash if NULL is returned as profile.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1156 >
2020-06-26 10:19:28 +03:00
Sebastian Dröge
ed3417219a
ccextractor: Push a GAP event if we have a caption pad but a video buffer did not contain any captions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1371 >
2020-06-25 08:18:37 +00:00
Sebastian Dröge
f694956511
ccextractor: Add property to remove caption meta from the outgoing video buffers
...
This is disabled by default to keep backwards compatibility.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1371 >
2020-06-25 08:18:37 +00:00
Mathieu Duponchelle
ad49ae42f7
docs: mark more types as plugin API
2020-06-23 12:10:19 -04:00
Mathieu Duponchelle
6baffc2931
docs: mark more types as plugin API
2020-06-23 12:10:17 -04:00
Sebastian Dröge
aa01e6ba22
webrtcbin: Don't call gst_ghost_pad_construct() anymore
...
It's deprecated, unneeded and doesn't do anything anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1360 >
2020-06-22 17:01:34 +00:00
Matthew Waters
0f41c0f000
webrtc: fix ice control mode when we offer initially
...
An initial offer means we have a local description not a remote
description.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1332
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1358 >
2020-06-22 12:17:09 +00:00
Vivia Nikolaidou
41950f2aba
fdkaacenc: Add missing SURROUND mappings
...
SURROUND is more to spec according to the FIXME comments, so add this.
Also add SIDE for 5 and 5.1 because of ffmpeg compatibility, because the
following pipeline downmixes to mono otherwise:
gst-launch-1.0 audiotestsrc num-buffers=1 ! audio/x-raw, channels=6 !
avenc_ac3 ! avdec_ac3 ! audioconvert ! fdkaacenc ! fakesink -v
Fixes #1327
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1352 >
2020-06-22 07:14:20 +00:00
Tim-Philipp Müller
a8ce8db982
srt: add "empty" subclasses for deprecated srt{client,server}{src,sink}
...
The doc system gets confused when we register the exact same
class as multiple elements, so make a subclass for each.
Also wrap registration of deprecated elements with #ifndef GST_REMOVE_DEPRECATED.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1354 >
2020-06-19 17:20:02 +01:00
Tim-Philipp Müller
8e93ae65e8
x265: ignore tune property when diffing generated docs
...
Unfortunately it means those tune enums don't show up in
the docs then, but if that's how it's gotta be..
(Problem at hand is that on Tim's machine x265enc gets an
tune=animation and on the CI machine this doesn't show up.)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1354 >
2020-06-19 15:41:51 +01:00
Tim-Philipp Müller
29026b1c27
Mark more plugin GTypes as plugin API
...
To appease the CI gods.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1354 >
2020-06-19 13:05:38 +01:00
Hosang Lee
e04be18c49
mssdemux: ignore unrecognized stream
...
Only create pads for steams with caps that can be recognized
from the fourcc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1348 >
2020-06-17 06:48:18 +00:00
Matthew Waters
3cf0abddbb
vulkan/shaders: add explicit license headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1338 >
2020-06-12 15:52:44 +10:00
Matthew Waters
1f44cb0519
vulkan/shaders: manually indent bin2array
...
Looks much nicer with some semblance of code formatting
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1338 >
2020-06-12 15:52:44 +10:00
Haihua Hu
d77de13ca6
waylandsink: add wl_registry.global_remove listener
...
when hotplug display, wayland client will call this listener
to notify client do clean up. Temporarily set a dummy function
here to avoid app abort
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1327 >
2020-06-09 19:54:24 +00:00
Thibault Saunier
ebababae03
srt: doc: Add missing gst_type_mark_as_plugin_api
2020-06-09 12:28:13 -04:00
Thibault Saunier
af26b95c29
docs: Mark lv2 runtime generated enums as plugins API types
2020-06-09 12:28:13 -04:00
Thibault Saunier
60fba5f380
docs: Add some more plugin API types
...
And allow creating vulkan device object without specifying an instance
so it can be introspected.
2020-06-09 12:28:13 -04:00
Thibault Saunier
3a98a37375
docs: Update plugins cache
2020-06-09 12:28:13 -04:00
Mathieu Duponchelle
a048ce81d4
plugins: uddate gst_type_mark_as_plugin_api() calls
2020-06-06 00:40:42 +02:00
cketti
2408fbe92d
curlsmtpsink: Use correct email date format
...
See https://www.rfc-editor.org/rfc/rfc5322.html#section-3.3
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1317 >
2020-06-05 08:22:34 +00:00
Matthew Waters
8396e16f85
ccconverter: signal cea608 padding as invalid
...
Outputting a valid but null cea608 byte pair may cause some issues with
some checksum packets.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1318 >
2020-06-05 07:36:22 +00:00
Matthew Waters
bfd03537f0
ccconverter: also copy buffer metadata when draining
...
Fixes buffers without PTS/DTS/meta/etc when receiving an EOS with data
still stored in the internal scratch buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1318 >
2020-06-05 07:36:22 +00:00
Matthew Waters
00bbaff371
ccconverter: Output the limit hit in debug lines
...
Fix two case of the input triplet limit not applying in cea608 -> cdp
conversion.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1318 >
2020-06-05 07:36:22 +00:00
Thibault Saunier
d9ffa3b3b2
doc: Fix spelling of GstWebRTCICE
2020-06-04 13:33:16 -04:00
Sebastian Dröge
74f2f733be
plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types
2020-06-04 13:33:16 -04:00
Peter Workman
b98712c44a
srtobject: continue polling or report error on failed receive
...
fixes #1277
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1260 >
2020-06-03 09:31:42 +00:00
Jan Alexander Steffens (heftig)
a1bc9d4319
srt: Make logging regarding callers more useful
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1273 >
2020-06-03 04:23:14 +00:00
Sebastian Dröge
b25d153c34
webrtc: Add GstWebRTCDataChannel to the library API
...
This makes it more discoverable for bindings and allows bindings to
generate static API for the signals and functions.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1168
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1313 >
2020-06-02 21:04:37 +00:00
Ederson de Souza
bafdade207
avtp: Ensure that the avtp plugin is only built on Linux
...
It uses some Linux only features. This also prevents gst-build trying to
get libavtp on non-Linux environments.
2020-06-01 11:37:16 -07:00
Tim-Philipp Müller
00caf46e3f
vulkan: fix use of assert() with older meson versions
...
Follow-up to !1307
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1308 >
2020-05-28 22:50:00 +01:00
Tim-Philipp Müller
b75ad03313
vulkan: don't run tests or build lib if plugin isn't actually built
...
The unit tests only checked for vulkan_dep.found(), which can
be true if the libs are there but glslc was not found, in which
case the plugin wouldn't be built and the unit tests would fail
because of missing vulkan plugins.
Doesn't really make much sense to build the vulkan integration lib
either if we're not going to build the vulkan plugin, so just disable
both for now if glslc is not available.
Fixes #1301
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1307 >
2020-05-28 19:07:32 +01:00
Matthew Waters
67ae885d4c
webrtc: handle an ice-lite remote offer
...
When the remote peer offers an ice-lite SDP, we need to configure our
ICE negotiation to be in controlling mode as the peer will not be.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1304 >
2020-05-28 19:57:45 +10:00
Jan Schmidt
918ed75944
srt: Don't leak the connection_poll_id on close()
...
Attempting to reach an inactive SRT peer in caller mode
was leaking an fd every few seconds in the gst_srt_object_close()/open()
loop.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1293 >
2020-05-24 10:47:59 +00:00
Thibault Saunier
5a2c358a2b
pitch: Remove useless restriction on number of channel
...
It handles any number of channels just fine
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1292 >
2020-05-22 18:18:28 -04:00
Stéphane Cerveau
3f16353d64
meson: add libopenjp2 fallback for openjpeg
...
As a wrap is now available in gst-build, the fallback
can be used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1270 >
2020-05-21 08:36:59 +00:00
Ederson de Souza
a754c67c05
avtp: Add libavtp fallback dependence
...
So that libavtp can be found if added as subproject on gst-build.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1271 >
2020-05-21 00:14:08 +00:00
Mats Lindestam
bf004227ec
gstcurlhttpsink: Set 'Expect: 100-continue'-header
...
In the upgrade of libcurl from 7.64.1 to 7.69.1 the
EXPECT_100_THRESHOLD has been increased from 1 Kb to 1 Mb
(see https://curl.haxx.se/mail/lib-2020-01/0050.html ).
This caused the gstcurlhttpsink to not being able to rewind
and resend in the case, e.g. response '401 Unauthorized'.
Now the 'Expect: 100-continue'-header is explicitly set in
the gstcurlhttpsink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1276 >
2020-05-18 13:46:24 +02:00
J. Kim
4ccaa1ebbb
srtobject: add streamid property
...
The stream id starts with '#!::' according to SRT Access Control[1],
but GstURI requires URI encoded string.This commit introduces additional
property to set the id by normal string.
[1] https://github.com/Haivision/srt/blob/master/docs/AccessControl.md
2020-05-13 14:13:48 +00:00
Nirbheek Chauhan
e3d5849225
meson: Pass native: false to add_languages()
...
This is needed for cross-compiling without a build machine compiler
available. The option was added in 0.54, but we only need this in
Cerbero and it doesn't affect older versions so it should be ok.
Will only cause a spurious warning.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1266 >
2020-05-13 13:59:36 +05:30
Matthew Waters
6dae95d60f
ccconverter: check fraction multiply for overflow
...
It should not happen and if it does, something went very wrong earlier
CID 1463350
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1262 >
2020-05-12 16:06:32 +10:00
Matthew Waters
09cbe4cd03
ccconverter: tighten up a couple of NULL checks
...
CID 1463347
CID 1463346
CID 1463345
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1262 >
2020-05-12 16:06:32 +10:00
Matthew Waters
ebc19d19bb
ccconverter: fix unintialized read of mapped output info in error case
...
We only need to gst_buffer_unmap() if we have gst_buffer_map()ed. In
most cases we can shorten the lenght of time we need to map the output
buffer. Fix similar occurences elsewhere.
CID 1463349
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1262 >
2020-05-12 16:06:32 +10:00
Matthew Waters
f077189809
ccconverter: fix uninitialized read in error case
...
CID 1463351
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1262 >
2020-05-12 16:06:32 +10:00
Matthew Waters
12edc0d9b8
ccconverter: implement discont handling
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
ba1558a7ab
ccconverter: use a better padding byte sequence for writing cdp
...
0xf8 can be interpreted as cea608 data at the beginning of a cdp packet
as the cc_valid bit is not checked when cc_valid in (0b00 or 0b01).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
7ed0bc539f
ccconverter: split temporary storage into 3
...
Instead of storing the raw cc_data, store the 2 cea608 fields individually
as well as the ccp data.
Simply copying the input cc_data to the output cc_data violates a number of
requirements in the cea708 specification. The most prominent being, that
cea608 triples must be placed at the beginning of each cdp.
We also need to comply with the framerate-dpendent limits for both the
cea608 and the ccp data which may involve splitting or merging some
cea608 data but not ccp data or vice versa.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
3417a1709c
ccconvert: compact input cc_data where possible
...
Skip over padding cc_data triples.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
7d028af675
ccconverter: implement support for CDP framerate conversions
...
- Any format involving CDP is supported.
- Time codes (if present) are scaled as well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
75503017c2
ccconverter: introduce define for max cdp packet length
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
44c874fd9e
ccconverter: don't rely on external state in *_internal()
...
This allows using the _internal() variants for simply converting some
caption data without relying on any external state.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
31a0bf367d
ccconverter: cc_count limits are per framerate
...
Enforce this and add a test for cdp input being too large.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
b25d75f201
ccconverter: refactor cdp id, fps, max_cc_count into a table
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Matthew Waters
afc120fa74
ccconverter: pivot to implementing generate_output
...
Will make a n-n buffer element much easier to implement.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116 >
2020-05-11 12:30:31 +00:00
Chris Ayoup
9937101e51
webrtc: move filtering properties to webrtcice
...
We want webrtcbin to only expose properties that are defined in JSEP, so
these additional properties should be moved out. In order to access
them, the webrtcice instance is exposed from webrtcbin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1223 >
2020-05-11 05:30:59 +00:00
Chris Ayoup
ca754245e9
webrtc: allow setting local IP addresses
...
If a local IP address is specified, ICE gathering can be much faster
in environments where there are multiple IP addreses but only some are
usable (for example, if you are running docker on the machine).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1223 >
2020-05-11 05:30:59 +00:00
Chris Ayoup
3fc8818824
webrtc: Allow toggling TCP and UDP candidates
...
Add some properties to allow TCP and UDP candidates to be toggled. This
is useful in cases where someone is using this element in an environment
where it is known in advance whether a given transport will work or not
and will prevent wasting time generating and checking candidate pairs
that will not succeed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1223 >
2020-05-11 05:30:59 +00:00
Sebastian Dröge
d6f6c51f3c
spanplc: Don't segfault when retrieving the stats property without a spanplc context
...
For example when trying to get the property value in NULL state.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1258 >
2020-05-10 08:44:09 +00:00
Sebastian Dröge
77784c7aba
musepackdec: Don't fail all queries if no sample rate is known yet
...
The sample rate is only needed for the POSITION/DURATION queries and we
would otherwise fail important queries like the CAPS query.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/498
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1248 >
2020-05-06 08:51:38 +00:00
Luka Blaskovic
4cf362e2df
opencv: allow compilation against 4.3.x
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1235 >
2020-05-06 06:49:08 +00:00
Matthew Waters
02c8e66ff1
webrtc: fix an off-by-one calculating low-threshold
...
We were not signalling low-threshold when the previous amount was at
exactly the low-threshold mark.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1247 >
2020-05-06 15:49:58 +10:00
Matthew Waters
18de5f8f04
webrtc: remove debugging leftover
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1247 >
2020-05-06 15:49:58 +10:00
Matthew Waters
50644f5718
webrtc: always reply to a promise
...
Otherwise, we defeat the purpose of a promise.
We were not replying when the state was closed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240 >
2020-05-06 02:53:27 +00:00
Matthew Waters
1f395e3ddb
webrtc: name threads based on the element name
...
Makes debugging a busy loop possibly easier
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240 >
2020-05-06 02:53:27 +00:00
Matthew Waters
d552c6556c
webrtc: correctly use the pad template
...
GstHarness uses this for releasing request pads correctly. Fixes
numerous leaks in the webrtc unit tests.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240 >
2020-05-06 02:53:27 +00:00
Matthew Waters
46176fbcc7
webrtc: Fix a couple of renegotiation races
...
When negotiating the SDP we should only connect the streams that are
actually mentioned in the SDP. All other streams are not relevant at
this time and would likely be part of a future SDP update. Fixes a
couple of the renegotiation webrtc unit tests.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240 >
2020-05-06 02:53:27 +00:00
Edward Hervey
75289d83a1
iqa: Fix all leaks in error path
...
CID #1456049
CID #1456080
CID #1456083
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1244 >
2020-05-05 17:33:20 +00:00
Matthew Waters
3baf0d5dc4
sctp: enable usrsctp debug when supported
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1234 >
2020-05-05 03:38:06 +00:00
Ederson de Souza
b68e47968b
avtpsink: Log that AVTPDU transmission failure is due lateness
...
As ENOBUFS is not really clear about what is going on, let's check
socket error queue to see if packets are being dropped due being late.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1004 >
2020-05-02 17:42:15 +00:00
Ederson de Souza
32281ddd33
avtpsink: Accept buffers that fall out of segment
...
Proper calculate running time for buffers that are out of current
segment and try to honor them.
A typical case is for AVTP packets coming from avtpcvfpay element, as
those may have DTS that falls out of segment (which is about PTS).
By using gst_segment_to_running_time_full(), avtpsink can properly
calculate when to transmit those buffers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1004 >
2020-05-02 17:42:15 +00:00
Ederson de Souza
7edaeb3fae
avtpcvfpay: Warn about timestamp issues on non-flushing seek
...
Seek events will cause new segments to be sent to avtpcvfpay, and for
flushing seeks, a pipeline running time reset. This running time
reset, which effectively changes pipeline base time, will cause
avtpcvfpay element to generate incorrect DTS for the initial set of
buffers sent after FLUSH_STOP.
This happens due the fact that base time change happens only when the
sink gets the first buffer after the FLUSH_STOP - so avtpcvfpay used
the wrong base time to do its calculations.
However, if the pipeline is paused before the seek, sink will update
base time when pipeline state goes to PLAYING again, before avtpcvfpay
gets the first buffers after the flush. Then avtpcvfpay element will be
able to normally calculate DTS for the outgoing packets.
This patch simply adds a warning message in case a flushing seek is
performed on a playing pipeline.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1004 >
2020-05-02 17:42:15 +00:00
Ederson de Souza
12838af353
avtpcvfpay: Ensure NAL fragments are transmitted following stream specs
...
TSN streams are expected to send packets to the network in a well
defined "pace", which is arbitrarily defined for each stream. This pace
is defined by the "measurement interval" property of a stream.
When the AVTP CVF payloader element - avtpcvfpay - fragments a video
frame that is too big to be sent to the network, it currently defines
that all fragments should be transmitted at the same time (via DTS
property of GstBuffers generated, as sink will use those to time the
transmission of the AVTPDU). This doesn't comply with stream definition,
which also has a limit on how many packets can be sent on a given
measurement interval.
This patch solves that by spreading in time the DTS of the GstBuffers
containing the AVTPDUs. Two new properties, "measurement-interval" and
"max-interval-frames", added to avptcvfpay element so that it knows
stream measurement interval and how many AVTPDUs it can send on any of
them. More details on the method used to proper spread DTS/PTS according
to measurement interval can be found in a code commentary inside this patch.
Tests also added for the new property and behaviour.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1004 >
2020-05-02 17:42:15 +00:00
Matthew Waters
b266652043
webrtcbin: also mark data channel transports as active
...
Fixes negotiation of a bundled sdp with only a data channel.
Without marking the transport as active, we would never unblock the
transportreceivebin and thus no data would ever reach us.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1231 >
2020-05-01 03:13:46 +00:00