Nicolas Dufresne [Tue, 7 May 2019 15:32:00 +0000 (11:32 -0400)]
ristsrc: Implement per session stats
As we can now have multiple sessions, stats need to be implemented per
session. This follow RTPSession model with sources. The stats are now:
dropped: 0
received: 0
recovered: 0
permanently-lost: 0
duplicates: 0
retransmission-requests-sent: 0
rtx-roundtrip-time: 0
session-stats:
session-id=0
rtp-from=""
rtcp-from=""
dropped=0
received=0
session-id=1
rtp-from=""
rtcp-from=""
dropped=0
received=0
. . .
session-stats is a GValueArray as there is no better alternatives.
Nicolas Dufresne [Sat, 4 May 2019 02:28:56 +0000 (22:28 -0400)]
ristsrc: Cleanup unused include
Nicolas Dufresne [Fri, 3 May 2019 21:44:14 +0000 (17:44 -0400)]
ristsink: Implement per session stats
As we can now have multiple sessions, stats need to be implemented per
session. This follow RTPSession model with sources. The stats are now:
sent-original-packets: 0
sent-retransmitted-packets: 0
session-stats:
session-id=0
sent-original-packets=0
sent-retransmitted-packets=0
round-trip-time=0
session-id=1
sent-original-packets=0
sent-retransmitted-packets=0
round-trip-time=0
. . .
session-stats is a GValueArray as there is no better alternatives.
Nicolas Dufresne [Fri, 3 May 2019 20:52:02 +0000 (16:52 -0400)]
ristsrc: rtxbin may be null in finalize
Nicolas Dufresne [Thu, 28 Feb 2019 22:21:25 +0000 (17:21 -0500)]
ristsrc: Add bonding support
This add support for receiving and aggregating the same stream
over multiple addresses.
Nicolas Dufresne [Fri, 15 Feb 2019 22:13:02 +0000 (17:13 -0500)]
ristsink: Implement bonding support
Marc Leeman [Tue, 21 May 2019 18:49:02 +0000 (18:49 +0000)]
rist: spell and grammar corrects in top comments
Thibault Saunier [Mon, 20 May 2019 14:26:14 +0000 (10:26 -0400)]
docs: Update cache and mark some rist prop as 'show-default'
Thibault Saunier [Mon, 20 May 2019 14:16:02 +0000 (10:16 -0400)]
doc: Add proxysink/proxysrc
Sebastian Dröge [Tue, 21 May 2019 09:15:55 +0000 (12:15 +0300)]
webrtc: Add various Since markers to new types after 1.14.0
Seungha Yang [Mon, 20 May 2019 10:33:27 +0000 (19:33 +0900)]
mpegtsmux: Fix build warning error
gstmpegtsmux.c:291:3: error: implicit declaration of function ‘memmove’ [-Werror=implicit-function-declaration]
memmove (map.data + 4, map.data, map.size - 4);
^
gstmpegtsmux.c:291:3: error: incompatible implicit declaration of built-in function ‘memmove’ [-Werror]
gstmpegtsmux.c:291:3: note: include ‘<string.h>’ or provide a declaration of ‘memmove’
Mathieu Duponchelle [Thu, 16 May 2019 23:21:53 +0000 (01:21 +0200)]
basetsmux: improve bitrate property documentation
Mathieu Duponchelle [Tue, 14 May 2019 23:35:04 +0000 (01:35 +0200)]
tsmux: refactor logic for when to (re)transmit tables
In order to output them at regular intervals in the bitstream
when a bitrate is specified.
Mathieu Duponchelle [Tue, 14 May 2019 23:34:51 +0000 (01:34 +0200)]
basetsmux: fix PCR stream selection
Jan Schmidt [Thu, 9 May 2019 15:33:17 +0000 (01:33 +1000)]
Fix compile after aggregator rewrite and base class refactor
Mathieu Duponchelle [Wed, 8 May 2019 14:56:29 +0000 (16:56 +0200)]
tsmux: fix continuity counter for packets with no payload
Mathieu Duponchelle [Tue, 30 Apr 2019 23:09:19 +0000 (01:09 +0200)]
mpegtsmux: aggregator port
Mathieu Duponchelle [Mon, 29 Apr 2019 23:42:59 +0000 (01:42 +0200)]
mpegtsmux: spring cleanup, no functional change
Mathieu Duponchelle [Mon, 29 Apr 2019 22:50:06 +0000 (00:50 +0200)]
basetsmux: extract m2ts-mode to mpegtsmux
Mathieu Duponchelle [Fri, 26 Apr 2019 18:26:55 +0000 (20:26 +0200)]
mpegtsmux: extract an actual base class
Mathieu Duponchelle [Thu, 25 Apr 2019 22:01:31 +0000 (00:01 +0200)]
mpegtsmux: expose the vmethods necessary for ATSC E-AC-3 handling
Mathieu Duponchelle [Thu, 25 Apr 2019 18:23:03 +0000 (20:23 +0200)]
mpegtsmux: provide API for subclasses to override stream creation
Mathieu Duponchelle [Thu, 25 Apr 2019 16:26:27 +0000 (18:26 +0200)]
mpegtsmux: add an ATSC subclass
Mathieu Duponchelle [Mon, 22 Apr 2019 20:50:07 +0000 (22:50 +0200)]
tsmux: Calculate PCR from number of bytes written in CBR mode
Mathieu Duponchelle [Mon, 22 Apr 2019 20:11:29 +0000 (22:11 +0200)]
mpegtsmux: Expose bitrate property
This allows outputting a Transport Stream with a constant bitrate,
by inserting null packets.
Mathieu Duponchelle [Mon, 22 Apr 2019 20:10:42 +0000 (22:10 +0200)]
tsmux: actually respect the PCR frequency we target
Mathieu Duponchelle [Mon, 22 Apr 2019 16:23:39 +0000 (18:23 +0200)]
tsmux: Use DTS over PTS
Philippe Normand [Sat, 18 May 2019 11:09:18 +0000 (12:09 +0100)]
meson: Keep track of the aom plugin
Otherwise it doesn't appear in the GstPluginsPath.json and thus is not listed in
gst-build's uninstalled shell's $GST_PLUGIN_PATH.
Seungha Yang [Thu, 16 May 2019 04:08:19 +0000 (13:08 +0900)]
docs: Update plugins cache for nvdec/nvenc
Seungha Yang [Wed, 15 May 2019 02:25:37 +0000 (11:25 +0900)]
meson: Add nvenc and nvdec to plugin list when available
Olivier Crête [Fri, 17 May 2019 21:15:13 +0000 (17:15 -0400)]
rist: Fix typo
Niels De Graef [Fri, 17 May 2019 13:28:54 +0000 (15:28 +0200)]
webrtc: Fix some signals' GIR annotations
This will lead to wrong bindings otherwise (and creates more correct
expectations for developers).
Thibault Saunier [Thu, 16 May 2019 19:35:58 +0000 (15:35 -0400)]
docs: Add infos about windows specific plugins
Thibault Saunier [Thu, 16 May 2019 13:18:53 +0000 (09:18 -0400)]
docs: Stop building the doc cache by default
And update the cache
Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36
Thibault Saunier [Wed, 15 May 2019 20:18:01 +0000 (16:18 -0400)]
docs: Add gstrist to the documentation
Haihao Xiang [Fri, 26 Apr 2019 00:40:28 +0000 (08:40 +0800)]
msdk: fix the typo for gst_msdkvp9dec_debug
Tim-Philipp Müller [Tue, 14 May 2019 18:19:46 +0000 (19:19 +0100)]
configure: fix autotools build after gtk-doc removal
Were using a gtk-doc specific file to check if we can
find the srcdir, so configure would fail.
Thibault Saunier [Tue, 14 May 2019 14:45:21 +0000 (10:45 -0400)]
docs: Make sure frei0r plugins properties default are stable
frei0r returns 'random' values as default and it makes the cache
often change for no good reason
Thibault Saunier [Tue, 14 May 2019 14:28:17 +0000 (10:28 -0400)]
docs: Remove stereo and openglmixer from the cache
Thus were moved, respectively, to -good and -base
Jose Antonio Santos Cadenas [Tue, 14 May 2019 07:36:15 +0000 (07:36 +0000)]
dtlsagent: Do not overwrite openssl locking callbacks
Thibault Saunier [Tue, 14 May 2019 02:56:47 +0000 (22:56 -0400)]
docs: Update plugins documentation cache
Thibault Saunier [Mon, 22 Oct 2018 09:30:45 +0000 (11:30 +0200)]
docs: Build documentation with hotdoc
Thibault Saunier [Mon, 12 Nov 2018 21:24:20 +0000 (18:24 -0300)]
Mark some properties as DOC_SHOW_DEFAULT
Thibault Saunier [Sat, 11 Aug 2018 00:32:30 +0000 (20:32 -0400)]
Minor documentation fixes
Thibault Saunier [Mon, 22 Oct 2018 09:30:09 +0000 (11:30 +0200)]
directfb: Fixup plugin name to match plugin filename
Has required by the new PLUGIN_DEFINE macro
Niklas Hambüchen [Wed, 1 May 2019 17:40:03 +0000 (19:40 +0200)]
meson: Fix missing GSM_HEADER_IN_SUBDIR logic
Until now, this hadn't been translated from autoconf yet.
Niklas Hambüchen [Wed, 1 May 2019 17:16:58 +0000 (19:16 +0200)]
meson: Fix typo in gsm header file name
This was wrong since commit
c360ceea4deb5d56c94126e31b9614734e8c1a7e.
Also fix incorrect indentation (tab instead of spaces).
Found using hermetic builds with Nix:
https://github.com/NixOS/nixpkgs/pull/54398#discussion_r280125735
Mark Nauwelaerts [Wed, 1 May 2019 17:22:17 +0000 (19:22 +0200)]
srt: set cancellation in locked section
... to avoid race with wait which uses it with 'flushing' flag state semantics.
Mark Nauwelaerts [Wed, 1 May 2019 17:01:03 +0000 (19:01 +0200)]
srt: avoid srtsrc segfault upon downward state change
... when it has not yet been connected to.
Also, a condition variable is not a semaphore, so a lock/wait/unlock
sequence is inherently racy without any state checking. So switch to
a different lock and check the intended state.
Mark Nauwelaerts [Wed, 1 May 2019 16:58:30 +0000 (18:58 +0200)]
srt: initialize list access within locked region
Niels De Graef [Thu, 9 May 2019 12:08:31 +0000 (14:08 +0200)]
webrtc: Fix signals documentation
Some GIR annotations were incorrect or even missing. The former isn't
good for bindings, while the latter is especially annoying for signal
handlers, as that means your arguments will get the wrong names in the
rendered documentation.
Seungha Yang [Thu, 9 May 2019 06:11:17 +0000 (15:11 +0900)]
nvenc: Respect display aspect ratio and set to encoding parameter
It should be written in VUI parameter for proper rendering
Niels De Graef [Wed, 8 May 2019 13:46:26 +0000 (15:46 +0200)]
webrtc: Add g_autoptr() support for public types
Víctor Manuel Jáquez Leal [Wed, 8 May 2019 11:35:25 +0000 (13:35 +0200)]
openh264enc: Fix compilation with openh264 v2.0
As OpenH264 increased its version to 2.0 the guard for structure
member is not valid.
This patch will fix the compilation with gst-build and openh264.
Seungha Yang [Wed, 8 May 2019 10:26:03 +0000 (19:26 +0900)]
meson: Allow CUDA_PATH fallback on linux
That's what we've supported via autotools build
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/966
Seungha Yang [Sat, 4 May 2019 11:56:38 +0000 (20:56 +0900)]
nvh264enc: Fix broken Y444 format encoding with system memory Y444 support
separateColourPlaneFlag is mapped to separate_colour_plane_flag which
means Y, U and V planes are separately processed as monochrome sampled pictures.
So encoder shouldn't set that flag for normal 4:4:4 encoding.
Also for 4:4:4 encoding, NV_ENC_H264_PROFILE_HIGH_444_GUID profile must be
explicitly set.
Christoph Reiter [Sun, 5 May 2019 20:11:16 +0000 (22:11 +0200)]
meson: fix build with opencv=enabled and opencv4. Fixes #964
Having the opencv feature enabled would lead to the opencv3 dependency
being required which failed with only opencv4 being available.
Instead don't require anything and error out at the end if the feature was enabled
but no dependency was found.
Thibault Saunier [Sun, 5 May 2019 23:27:15 +0000 (19:27 -0400)]
meson: Add support for the colormanagement plugin
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/965
Christoph Reiter [Sun, 5 May 2019 10:34:23 +0000 (12:34 +0200)]
autotools: gstsctp: set LDFLAGS
This fixes the mingw build which failed because of "-no-undefined" missing.
Sebastian Dröge [Fri, 3 May 2019 21:15:32 +0000 (00:15 +0300)]
decklink: Add support for parsing/outputting AFD/Bar
Sebastian Dröge [Mon, 22 Apr 2019 12:42:12 +0000 (15:42 +0300)]
decklink: Allow VANC to be used for all modes
Sebastian Dröge [Tue, 16 Apr 2019 10:15:40 +0000 (13:15 +0300)]
decklink: Add support for widescreen NTSC/PAL
Same as non-widescreen but with a different pixel-aspect-ratio.
Seungha Yang [Wed, 1 May 2019 12:24:49 +0000 (21:24 +0900)]
h265parse: Parse mastering display info and content light level from SEI
... and set to caps if necessary.
Note 1) the mastering display info and content light level SEI meessages
are persistent in the corresponding codec video sequence (i.e., GOP).
So any bitstream containing those SEI messages
(and also all pictures are intended to be HDR rendered) should be ensured that
each first slice of codec video sequence follows those SEI messages.
Note 2) The codec video sequence is a group an [IRAP + NoRaslOutputFlag == 1]
and following AUs which are not [IRAP + NoRaslOutputFlag == 1]
The NoRaslOutputFlag is equal to 1 for each IDR AU, BLA AU and some CRA AU.
For a CRA AU to have NoRaslOutputFlag equal to 1, following condition should required.
* When the CRA AU is the first AU in the bitstream in decoding order
* or the CRA AU is the first AU that follows an end of sequence NAL in decoding order
* or the HandleCraAsBlaFlag equal to 1.
Due to the limited context in parse element, in this commint, CRA AU will not considered as
having the NoRaslOutputFlag equal to 1. Therefore, in the worst case,
mastering-display-info and content-light-level could be cleared one GOP after
when stream was chagned from HDR to SDR.
Seungha Yang [Fri, 26 Apr 2019 11:11:12 +0000 (20:11 +0900)]
h265parser: Add parsing mastering display colour volume SEI message
... and content light level SEI message. Those SEI messages are required
for HDR rendering.
Roman Shpuntov [Fri, 3 May 2019 12:10:22 +0000 (19:10 +0700)]
androidmedia: added path /system/vendor/etc to dependency
Niels De Graef [Thu, 2 May 2019 12:29:03 +0000 (14:29 +0200)]
nvenc/nvdec: Add NVIDIA SDK headers to noinst_HEADERS
The tarballs that were being spun for 1.16 don't contain these headers
due to this small oversight, so let's add them.
Nicolas Dufresne [Fri, 5 Apr 2019 21:01:08 +0000 (17:01 -0400)]
rist: Enable plugin doc creation
Nicolas Dufresne [Mon, 21 Jan 2019 16:44:10 +0000 (11:44 -0500)]
rist: Add a plugin implenting RIST TR-06-1 Simple Profile
RIST TR-06-1 is a specification for video streaming made by the VSF
group. It is using a subset of RTP specification to which some
modification has been made to improve RTX behaviour and avoid any need
for signaling. The plugin implement ristrtxsend / ristrtxreceive element
which are the RIST specific equivalent of rtprtxsend/rtprtxreceive and
ristsink / ristsrc which implement rist transmitter and receiver. The
RIST protocol is meant to be used in unidirectional way. Typically, MPEG
TS over RTP is used.
Currently we support unicast and multicast streaming according to the
specification. This patch does not include any bonding support yet. The
ristsrc element introduce rist:// URI handling in parallel to it's
property configuration interface.
Aaron Boxer [Wed, 1 May 2019 19:31:34 +0000 (15:31 -0400)]
ccextractor: copy input buffer flags to output buffer
GST_VIDEO_BUFFER_FLAG_INTERLACED and GST_VIDEO_BUFFER_FLAG_TFF
flags are needed when processing SCTE 20 closed captions for an interlaced
stream, when we need to convert back to analog, in which case we need to match
the caption to the top or bottom field
Xavier Claessens [Wed, 1 May 2019 23:29:16 +0000 (19:29 -0400)]
h264parse: Fix typo when setting multiview mode and flags
Seungha Yang [Thu, 2 May 2019 04:20:30 +0000 (13:20 +0900)]
x265enc: Do not drop SEI nals from header
SEI message shouldn't be dropped since it contains various informal (or essential)
information.
Seungha Yang [Thu, 2 May 2019 03:21:38 +0000 (12:21 +0900)]
x265enc: Add support mastering display info and content light level encoding
... if (x265 version >= 1.9) requirement is satisfied.
The SEI messages were supported since x265 version 1.8
but there was API change from version 1.9
(contentLightLevelInfo was renamed to maxCLL and maxFALL)
Marcos Kintschner [Wed, 1 May 2019 00:25:12 +0000 (21:25 -0300)]
Fixed segtotal value being always 2 due to an unused variable
The 'MAX' expression used to set segtotal always returned 2 because the unused and unitialized variable buffer_frame_count was always 0
Wangfei [Fri, 26 Apr 2019 01:52:43 +0000 (09:52 +0800)]
h265parser: parse range extension message in SPS/PPS.
Range extension message may exist in some extension-profile clips.
Fabio D'Urso [Fri, 26 Apr 2019 14:25:17 +0000 (16:25 +0200)]
sctp: increase DEFAULT_NUMBER_OF_SCTP_STREAMS to 1024
This change makes it possible to create more than just 5 webrtc
data channels. The maximum number of data channels is exactly
DEFAULT_NUMBER_OF_SCTP_STREAMS / 2, therefore the limit is now
512.
Sebastian Dröge [Tue, 23 Apr 2019 12:09:17 +0000 (15:09 +0300)]
libs: Fix various Since markers
Sebastian Dröge [Tue, 23 Apr 2019 11:33:05 +0000 (14:33 +0300)]
player: Fix various Since markers in the docs
Nicola Murino [Tue, 23 Apr 2019 07:06:13 +0000 (09:06 +0200)]
opencv: allow compilation against 4.1.x
Mark Nauwelaerts [Sun, 21 Apr 2019 15:17:14 +0000 (17:17 +0200)]
srt: post error when failing to start
... as appropriate for a subsequent state change failure
Mark Nauwelaerts [Sun, 21 Apr 2019 14:47:30 +0000 (16:47 +0200)]
srt: downgrade regular message to log level
Tim-Philipp Müller [Fri, 19 Apr 2019 09:33:49 +0000 (10:33 +0100)]
Back to development
Tim-Philipp Müller [Thu, 18 Apr 2019 23:28:55 +0000 (00:28 +0100)]
Release 1.16.0
Tim-Philipp Müller [Thu, 18 Apr 2019 23:28:55 +0000 (00:28 +0100)]
Update docs
Tim-Philipp Müller [Thu, 18 Apr 2019 23:28:52 +0000 (00:28 +0100)]
Update translations
Haihao Xiang [Wed, 17 Apr 2019 01:12:52 +0000 (09:12 +0800)]
msdk: fix the build error with libva 2.4.0
This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/949
Dan Kegel [Sat, 13 Apr 2019 20:50:25 +0000 (13:50 -0700)]
webrtcdsp/meson.build: don't forget to set c++11 mode
Nirbheek Chauhan [Sat, 13 Apr 2019 06:04:22 +0000 (11:34 +0530)]
meson: Remove redundant env set operation
This is immediately overriden 4 lines later, and starting with Meso
0.50.1 this will lead to a noisy warning.
Sebastian Dröge [Fri, 12 Apr 2019 07:22:56 +0000 (10:22 +0300)]
sctp: Create plugin with $(GST_PLUGIN_LDFLAGS)
Otherwise we don't create a plugin but a proper shared library with
version information, i.e. libgstsctp.so.0.0.0.
Tim-Philipp Müller [Wed, 10 Apr 2019 23:32:40 +0000 (00:32 +0100)]
Release 1.15.90
Tim-Philipp Müller [Wed, 10 Apr 2019 23:32:40 +0000 (00:32 +0100)]
Update docs
Peter Seiderer [Sat, 6 Apr 2019 19:44:35 +0000 (21:44 +0200)]
msdkdec: fix error handling in case of unsupported hardware
Check the return value of gst_msdk_context_ensure_context and
abort in case of failure.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/945
Peter Seiderer [Sat, 6 Apr 2019 19:29:58 +0000 (21:29 +0200)]
msdkenc: fix error handling in case of unsupported hardware
Check the return value of gst_msdk_context_ensure_context and
abort in case of failure.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/945
Peter Seiderer [Sat, 6 Apr 2019 19:09:03 +0000 (21:09 +0200)]
msdk: fix error handling in case of unsupported hardware
Fix double gst_object_unref for GstMsdkContext.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/945
Andrey Konovalov [Tue, 9 Apr 2019 18:32:36 +0000 (21:32 +0300)]
waylandsink: make gst_wl_window_is_toplevel aware of XDG shell
Aaron Boxer [Tue, 9 Apr 2019 15:26:28 +0000 (11:26 -0400)]
ccextractor: document importance of pipeline order for this element
Haihao Xiang [Thu, 21 Mar 2019 08:22:23 +0000 (16:22 +0800)]
msdkvpp: add BGR10A2_LE format in the src pad
example pipeline:
gst-launch-1.0 videotestsrc ! video/x-raw,format=P010_10LE ! msdkvpp ! \
video/x-raw,format=BGR10A2_LE ! fakesink
Haihao Xiang [Thu, 21 Mar 2019 08:14:47 +0000 (16:14 +0800)]
msdk: set some parameters in mfxFrameData for a MFX_FOURCC_A2RGB10 frame
Haihao Xiang [Thu, 21 Mar 2019 07:34:36 +0000 (15:34 +0800)]
msdk: map MFX_FOURCC_A2RGB10 to VA_FOURCC_A2R10G10B10
Haihao Xiang [Thu, 21 Mar 2019 07:29:15 +0000 (15:29 +0800)]
msdk: map GST_VIDEO_FORMAT_BGR10A2_LE to VA_FOURCC_A2R10G10B10
Haihao Xiang [Fri, 22 Mar 2019 05:43:23 +0000 (13:43 +0800)]
msdk: map GST_VIDEO_FORMAT_BGR10A2_LE to MFX_FOURCC_A2RGB10