Seungha Yang [Wed, 6 Dec 2017 10:15:40 +0000 (19:15 +0900)]
srt: Fix warning error
gstsrt.c: In function ‘gst_srt_client_connect_full’:
gstsrt.c:151:6: error: ‘sock’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
if (sock != SRT_INVALID_SOCK) {
https://bugzilla.gnome.org/show_bug.cgi?id=791302
Ursula Maplehurst [Fri, 1 Dec 2017 13:02:12 +0000 (13:02 +0000)]
androidmedia: when flushing, better handle IllegalStateException received from getOutputBuffer
1. Similar to 880f3d8, don't consider not getting an output buffer as
an error during flushing. I've seen the following sometimes when
encoding:
W GStreamer+amcvideoenc: java.lang.IllegalStateException
W GStreamer+amcvideoenc: at android.media.MediaCodec.getBuffer(Native Method)
W GStreamer+amcvideoenc: at android.media.MediaCodec.getOutputBuffer(MediaCodec.java:2886)
2. For amcvideodec/enc, call _find_nearest_frame (which grabs a fresh
reference on a GstVideoCodecFrame) after we have an output buffer,
so as to not leak the reference, in case getting an output buffer
fails.
Otherwise, if we get an error grabbing the output buffer, we leak
the reference to the frame. This can cause issues with a
v4l2bufferpool feeding the encoder not being able to clean itself
up properly due to buffers still being marked as in-use.
https://bugzilla.gnome.org/show_bug.cgi?id=791258
Víctor Manuel Jáquez Leal [Tue, 5 Dec 2017 09:37:40 +0000 (10:37 +0100)]
gldownload: fix wrong enum
When compiling with clang, an enum conversion error is triggered
since GstVideoFrameFlags are not GstVideoFlags.
This patch sets GST_VIDEO_FRAME_FLAG_NONE to the added video meta.
https://bugzilla.gnome.org/show_bug.cgi?id=791251
Edward Hervey [Sun, 3 Dec 2017 10:22:02 +0000 (11:22 +0100)]
docs: aggregator has moved to base
Nicolas Dufresne [Sun, 3 Dec 2017 00:28:30 +0000 (19:28 -0500)]
gldownload: Add missing ifdef for dmabuf and egl
This fixes the build for platforms that don't support one or the other.
Nicolas Dufresne [Sat, 2 Dec 2017 20:25:38 +0000 (15:25 -0500)]
gldisplay: Prefer wayland over X11
As most Wayland compositors supports XWayland, X11 backend get
selected. This also realign better GStreamer decision to what
happens with GTK and other stack out there.
Nicolas Dufresne [Sat, 2 Dec 2017 20:25:16 +0000 (15:25 -0500)]
gldisplay: Add missing GL API to the doc
Matt Fischer [Wed, 11 Jan 2017 01:23:58 +0000 (19:23 -0600)]
gldownload: Add dmabuf exporting
This patch adds code to gldownload to export the image as a
dmabuf if requested. The element now exposes memory:DMABuf as
a cap feature, and if it is selected, the element exports the
texture to an EGL image and then a dmabuf. It also implements a
fallback to system memory download in case the exportation failed.
https://bugzilla.gnome.org/show_bug.cgi?id=776927
Tim-Philipp Müller [Sat, 2 Dec 2017 16:01:25 +0000 (16:01 +0000)]
Remove GstAggregator from -bad, moved to core
https://bugzilla.gnome.org/show_bug.cgi?id=739010
Nicolas Dufresne [Fri, 1 Dec 2017 16:59:01 +0000 (11:59 -0500)]
kmssink: Add display-width/height properties
This is to be used with gst_video_overlay_set_render_rectangle()
so the application can calculate a rectangle that fits inside
the display. The property changes are notify in a way that you
can watch either notify::display-width or notify::display-height
and both will be up-to-data when this is called back. Before the
element is started, the size will be 0x0.
https://bugzilla.gnome.org/show_bug.cgi?id=784599
Haihua Hu [Thu, 14 Sep 2017 10:12:18 +0000 (18:12 +0800)]
kmssink: support videooverlay interface
Implement videooverlay interface in kmssink, divided into two cases:
when driver supports scale, then we do refresh in show_frame(); if
not, send a reconfigure event to upstream and re-negotiate, using the
new size.
https://bugzilla.gnome.org/show_bug.cgi?id=784599
Haihua Hu [Tue, 12 Sep 2017 07:46:01 +0000 (15:46 +0800)]
kmssink: add can-scale property
https://bugzilla.gnome.org/show_bug.cgi?id=784599
Jun Xie [Mon, 27 Nov 2017 12:05:29 +0000 (20:05 +0800)]
dashdemux: remove duplicated code
remove duplicated code
https://bugzilla.gnome.org/show_bug.cgi?id=790895
Jun Xie [Mon, 27 Nov 2017 13:27:23 +0000 (21:27 +0800)]
dashdemux: fix memory leak
GPtrArray in GstActiveStream is leaked in some cases.
gst_mpdparser_free_active_stream shall be invoked to free GstActiveStream
https://bugzilla.gnome.org/show_bug.cgi?id=790899
Tim-Philipp Müller [Tue, 28 Nov 2017 13:44:54 +0000 (13:44 +0000)]
meson: don't generate or install pkg-config file for gstreamer-wayland
which is not for public consumption currently (headers not installed).
https://bugzilla.gnome.org/show_bug.cgi?id=790912
Matthew Waters [Mon, 27 Nov 2017 09:11:23 +0000 (20:11 +1100)]
Automatic update of common submodule
From 3f4aa96 to e8c7a71
Matthew Waters [Mon, 27 Nov 2017 03:44:58 +0000 (14:44 +1100)]
gl/caopengllayer: use public GstGLContext instead of Cocoa-specific one
Allows keeping the GstGLCAOpenGLLayer public but not the winsys-specific
context/display/window.
Matthew Waters [Mon, 27 Nov 2017 03:44:24 +0000 (14:44 +1100)]
Revert "gl: cocoa: sprinkle some GST_EXPORT"
This reverts commit
94d798c3337013bd902c0fd0a66f7f6842243eeb.
cocoac headers don't need to be public as all the functionality can be
provided by the base class
Tim-Philipp Müller [Sun, 26 Nov 2017 22:36:35 +0000 (22:36 +0000)]
gl: cocoa: sprinkle some GST_EXPORT
Undefined symbols for architecture x86_64:
"_gst_gl_context_cocoa_get_type", referenced from:
__create_layer in libgstopengl_la-caopengllayersink.o
Might need some more in other headers, but first need to
clarify what exactly should be exported, there are some
inconsistencies (installed header files vs. funcs in docs).
Tim-Philipp Müller [Sun, 26 Nov 2017 18:35:13 +0000 (18:35 +0000)]
autotools: remove check-exports target dep which no longer exists
Tim-Philipp Müller [Sun, 26 Nov 2017 16:32:01 +0000 (16:32 +0000)]
win32: remove .def file with exports
They're no longer needed, symbol exporting is now explicit
via GST_EXPORT in all cases (autotools, meson, incl. MSVC).
Tim-Philipp Müller [Sun, 26 Nov 2017 16:25:50 +0000 (16:25 +0000)]
autotools: stop controlling symbol visibility with -export-symbols-regex
Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT.
This should result in consistent behaviour for the autotools and
Meson builds.
Tim-Philipp Müller [Sun, 26 Nov 2017 16:07:13 +0000 (16:07 +0000)]
codecparsers: mpegvideoparser: remove API that was deprecated 5 years ago
Libraries in -bad are not covered by our API/ABI stability
guarantees, and to the best of our knowledge everyone using
this API has moved to the replacement APIs ages ago.
Nicolas Dufresne [Sun, 26 Nov 2017 01:06:57 +0000 (20:06 -0500)]
waylandsink: Add prototype for gst_wayand_pool_get_type()
Nicolas Dufresne [Thu, 23 Nov 2017 03:27:04 +0000 (22:27 -0500)]
waylandsink: Rollback video info changes when copying
We change the video info base on the received buffer. We need to
rollback these changes whenever we want to copy into our internal
pool of buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Nicolas Dufresne [Wed, 22 Nov 2017 04:18:24 +0000 (23:18 -0500)]
waylandsink: Validate strides and offset when using FD as SHM
As SHM interface only support 1 stride, and 1 offset, we need to
make sure that there is no padding between planes for planar formats.
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Nicolas Dufresne [Wed, 22 Nov 2017 04:17:14 +0000 (23:17 -0500)]
waylandsink: Update video info size to buffer size
We where setting the size to the first memory size, this may be
too small in case we received a buffer with multiple memory.
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Nicolas Dufresne [Wed, 22 Nov 2017 04:12:12 +0000 (23:12 -0500)]
waylandsink: Allocate only what's needed when copying
There was this regression that we'd be using the updated video
info size instead of default size when initializing the pool.
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Nicolas Dufresne [Wed, 22 Nov 2017 04:11:02 +0000 (23:11 -0500)]
waylandsink: Only try SHM for single memory buffer
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Nicolas Dufresne [Wed, 22 Nov 2017 04:10:03 +0000 (23:10 -0500)]
wlwindow: Only update video info on new render
The sink->video_info might not reflect the current buffer
when expose is being called.
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Nicolas Dufresne [Tue, 21 Nov 2017 02:09:28 +0000 (21:09 -0500)]
waylandsink: Disable video-alignment from the pool
The SHM interface does not allow passing arbitrary strides and offsets,
for this reason, we simply disable this feature from the proposed pool.
This fixes video artifact seen when using the FFMPEG based video
decoder.
https://bugzilla.gnome.org/show_bug.cgi?id=790057
Havard Graff [Mon, 24 Oct 2016 21:02:38 +0000 (23:02 +0200)]
opusparse: fix uninitialized-warning
Stian Selnes [Fri, 29 Jan 2016 10:46:52 +0000 (11:46 +0100)]
h263parse: Add debug log for more annexes when plustype
Edward Hervey [Sat, 25 Nov 2017 12:10:11 +0000 (13:10 +0100)]
hls: Don't leak mutex
Edward Hervey [Sat, 25 Nov 2017 11:48:40 +0000 (12:48 +0100)]
videoaggregator: Don't leak string
The result of gst_video_colorimetry_to_string () needs to be free'd
Tim-Philipp Müller [Sat, 25 Nov 2017 11:27:57 +0000 (11:27 +0000)]
netsim: simplify getting buffer size in bits
Håvard Graff [Tue, 10 Oct 2017 13:45:47 +0000 (15:45 +0200)]
meson.build: use join_paths() on prefix
So that "/" are correct on Windows and the paths in
the .pc files are like C:/some/where and not
C:\some\where.
Tim-Philipp Müller [Sat, 25 Nov 2017 11:16:28 +0000 (11:16 +0000)]
tests: ignore waylandsink in state change test
"Unexpected critical/warning: Wayland compositor is missing
the ability to scale, video display may not work properly."
Havard Graff [Tue, 1 Nov 2016 15:03:00 +0000 (16:03 +0100)]
netsim: add "allow-reordering" property
Reordering of packets is not very common in networks, and the delay
functions will always introduce reordering if delay > packet-spacing,
so by setting allow-reordering to FALSE you guarantee that the packets
are in order, while at the same time introducing delay/jitter to them.
Stian Selnes [Mon, 3 Oct 2016 16:43:24 +0000 (18:43 +0200)]
netsim: Add gamma distribution for delay
This simulates the delay on wifi networks better.
Stian Selnes [Tue, 2 Aug 2016 11:45:54 +0000 (13:45 +0200)]
netsim: Change max-delay to be inclusive
It is more intuitive for the user that in order to acheive a constant
delay min-delay and max-delay are equal.
Stian Selnes [Mon, 1 Aug 2016 18:27:03 +0000 (20:27 +0200)]
netsim: Add "delay-distribution" property plus normal distribution
By using the property "delay-distribution" the user can control how the
delay applied to delayed packets is distributed. This is either the
uniform distribution (as before) or the normal distribution.
"min-delay" and "max-delay" control both distributions. For the normal
distribution it defines the bounds of the 95% confidence interval.
Havard Graff [Thu, 23 Nov 2017 12:47:48 +0000 (13:47 +0100)]
netsim: add token bucket algorithm for simulating network congestion
Havard Graff [Thu, 23 Nov 2017 12:48:32 +0000 (13:48 +0100)]
netsim: change property enums to PROP_* and fix indentation
Tim-Philipp Müller [Fri, 24 Nov 2017 22:09:25 +0000 (22:09 +0000)]
netsim: remove private struct and padding
There's no need for these things, since the plugin headers
are not public, and all the extra ->priv-> just clutter the
code.
Edward Hervey [Sat, 25 Nov 2017 08:41:00 +0000 (09:41 +0100)]
dashdemux: Handle bitrate > 2**31
On very-high connection, we could quite well exceed that. Instead use
gint64 for max-bitrate.
Nicolas Dufresne [Fri, 24 Nov 2017 22:06:22 +0000 (17:06 -0500)]
sdlshare: Destroy GL backend buffer before the GL Context
This was otherwise leading to a deadlock in the GL library.
Nicolas Dufresne [Fri, 24 Nov 2017 21:58:21 +0000 (16:58 -0500)]
sdlshare2: Fix race conditions
The client-draw callback is running on the GL Thread, which will
be required to map the buffer. Map early, and pass the mapped
frame instead. On top of that, make sure to signal any pending
draw before trying to push EOS, as some pad locks might be taken.
This is the cost of using the same thread to control GStreamer and
to render GL.
Nicolas Dufresne [Fri, 24 Nov 2017 21:58:01 +0000 (16:58 -0500)]
meson: Build gl/sdl examples
Nicolas Dufresne [Fri, 24 Nov 2017 20:48:19 +0000 (15:48 -0500)]
meson: Playout example has not GL deps
Nicolas Dufresne [Fri, 24 Nov 2017 20:19:25 +0000 (15:19 -0500)]
meson: Add missing examples directory
This will make it more visible what is missing in meson.
Nicolas Dufresne [Fri, 24 Nov 2017 20:17:02 +0000 (15:17 -0500)]
meson: Build playout example
Guillaume Desmottes [Wed, 22 Nov 2017 13:35:31 +0000 (14:35 +0100)]
h265parse: early set src caps when input not byte-stream
When input is not in byte-stream format there is no need to wait for the first
buffer before setting src caps. We already have all the information from the
input codec_data.
This allow us to already configure downstream elements allowing them,
for example, to already allocate their internal buffers as they know
the format of the input they are about to receive.
Same change as the one I just did in h264parse.
https://bugzilla.gnome.org/show_bug.cgi?id=790709
Guillaume Desmottes [Wed, 22 Nov 2017 13:35:31 +0000 (14:35 +0100)]
h264parse: early set src caps when input is avc
When input is in AVC format there is no need to wait for the first buffer
before setting src caps. We already have all the information from the
input codec_data.
This allow us to already configure downstream elements allowing them,
for example, to already allocate their internal buffers as they know
the format of the input they are about to receive.
https://bugzilla.gnome.org/show_bug.cgi?id=790709
Edward Hervey [Fri, 24 Nov 2017 07:06:52 +0000 (08:06 +0100)]
uvch264src: Check return values of all xu_query calls
And use warnings/returns like for other calls
CID #1373414
CID #1373417
Edward Hervey [Fri, 24 Nov 2017 07:00:21 +0000 (08:00 +0100)]
gtk: Fix possibility of NULL variable
It's quite unlikely since it's initialized in instance initialization.
CID #1417721
Edward Hervey [Fri, 24 Nov 2017 06:57:49 +0000 (07:57 +0100)]
dc1394src: Remove logically dead code
buffer would always be NULL in the error case. Simplify and just
return GST_FLOW_ERROR
CID #1417216
Jan Schmidt [Thu, 23 Nov 2017 12:01:52 +0000 (23:01 +1100)]
viv-fb: Don't destroy the native FB display
It causes crashes in applications because the result of
fbGetDisplay() might be in use elsewhere in the application
and Vivante doesn't seem to do any refcounting
Jan Schmidt [Thu, 23 Nov 2017 11:58:40 +0000 (22:58 +1100)]
Revert "gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass"
This reverts commit
47fd4d391e775c11f529705bb0f457a9d25ba5e7.
This patch is incorrect. It doesn't actually compile, and causes a crash
because the viv-fb window implementation needs a native EGL handle
to pass to fbCreateWindow, but the GstGLDisplayEGL handleis actually
an EGLDisplay now (and gets cast to the wrong type)
Jan Schmidt [Thu, 23 Nov 2017 14:37:48 +0000 (01:37 +1100)]
3dvideo example: Correct video overlay for HiDPI
Use the GTK scaling factor to scale the video allocation
so video displays correctly on hi-dpi screens
Tim-Philipp Müller [Thu, 23 Nov 2017 10:15:49 +0000 (11:15 +0100)]
meson: remove outdated comment in build file
Hyunjun Ko [Thu, 23 Nov 2017 03:38:11 +0000 (12:38 +0900)]
msdkdec: keep draining even if a finish_task fails
Should continue draining so that it could try to
discard the rest of pending frames even if a finish_task fails.
https://bugzilla.gnome.org/show_bug.cgi?id=790312
Mario Alfredo Carrillo Arevalo [Fri, 10 Nov 2017 19:32:17 +0000 (13:32 -0600)]
opencv: Update version for building plugins
This commit allows to build the OpenCV plugin with OpenCV >= 2.3.0 to < 3.4.0.
https://bugzilla.gnome.org/show_bug.cgi?id=790192
Edward Hervey [Thu, 23 Nov 2017 07:14:06 +0000 (08:14 +0100)]
dvb: Fix previous commit
strlen on strings (and not sizeof) *sigh*
Edward Hervey [Thu, 23 Nov 2017 07:12:03 +0000 (08:12 +0100)]
dvb: Fix sock_addr usage (for real)
It was great checking that the string was not too big ... but
it's better if we actually copy the proper amount of bytes :)
CID #206004
Edward Hervey [Thu, 23 Nov 2017 07:09:36 +0000 (08:09 +0100)]
ipcpipeline: Don't leak structure
CID #1416131
Edward Hervey [Thu, 23 Nov 2017 07:05:48 +0000 (08:05 +0100)]
ipcpipeline: Simplify usage of g_cond_wait_until()
It will return FALSE if a timeout happened. So don't check if we
timed out afterwards, just use the return value.
CID #1416347
Edward Hervey [Thu, 23 Nov 2017 07:02:58 +0000 (08:02 +0100)]
ipcpipeline: Check the proper value
The code is meant to check the *peer* state change return value
(and not the sink's one).
CID #1416128
Piotr Drąg [Wed, 22 Nov 2017 16:37:02 +0000 (17:37 +0100)]
po: update POTFILES.in
https://bugzilla.gnome.org/show_bug.cgi?id=790716
Edward Hervey [Wed, 22 Nov 2017 15:53:17 +0000 (16:53 +0100)]
curlhttpsrc: Don't leak structure
CID #1415716
Mathieu Duponchelle [Mon, 6 Nov 2017 20:07:51 +0000 (21:07 +0100)]
aggregator: Remove klass->sinkpads_type
This posed problems for the python bindings (and possibly others).
Instead, subclasses now use add_pad_template_with_gtype.
https://bugzilla.gnome.org/show_bug.cgi?id=789986
Guillaume Desmottes [Mon, 20 Nov 2017 16:54:54 +0000 (17:54 +0100)]
h265parse: put downstream caps first if possible on sink caps
Try prioritizing downstream's caps over upstream's if possible so the
parser can configured in "passthrough" if possible and save it from
doing useless conversions.
Exact same change as the one I just did in h264parse.
https://bugzilla.gnome.org/show_bug.cgi?id=790628
Guillaume Desmottes [Mon, 20 Nov 2017 16:54:54 +0000 (17:54 +0100)]
h264parse: put downstream caps first if possible on sink caps
Try prioritizing downstream's caps over upstream's if possible so the
parser can configured in "passthrough" if possible and save it from
doing useless conversions.
https://bugzilla.gnome.org/show_bug.cgi?id=790628
Hyunjun Ko [Wed, 22 Nov 2017 02:33:54 +0000 (11:33 +0900)]
msdkdec: fix buffer leaks during drain and a leak of videobufferpool
https://bugzilla.gnome.org/show_bug.cgi?id=790312
Hyunjun Ko [Tue, 21 Nov 2017 05:57:03 +0000 (14:57 +0900)]
msdkenc: handle the MORE_DATA case
If the driver requires more data, just unref the frame at the moment
then retreive/finish the frame after encoding is finished.
This also fixes a memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=790312
Sebastian Dröge [Wed, 22 Nov 2017 08:30:22 +0000 (10:30 +0200)]
decklinkvideosink: Print "Starting" instead of "Stopping" when starting
Matthew Waters [Fri, 17 Nov 2017 06:09:22 +0000 (17:09 +1100)]
nvdec: implement flush/drain
Fixes outputted frame sequence when performing a seek
i.e. when seeking backwards, the first frame after the seek was a frame
from the future. This would result in GstVideoDecoder essentially
marking all the timestamps as essentially bogus and the base class would
attempt to compensate. A visible indication of this was 'decreasing timestamp'
warning after a seek.
https://bugzilla.gnome.org/show_bug.cgi?id=790478
Tim-Philipp Müller [Tue, 21 Nov 2017 19:56:38 +0000 (20:56 +0100)]
curl: fix meson build
Include libsdir so our i18n header there is found.
Nicolas Dufresne [Tue, 21 Nov 2017 17:03:38 +0000 (12:03 -0500)]
kmssink: Add Raspberry Pi (vc4) support
Edward Hervey [Tue, 21 Nov 2017 15:43:03 +0000 (16:43 +0100)]
de265: Don't leak CodecState
Unref it in error case
CID #1417220
Edward Hervey [Tue, 21 Nov 2017 15:39:14 +0000 (16:39 +0100)]
vulkan: Fix out-of-bound read
G_N_ELEMENTS is the *number* of entries, not the maximum entry number
CID #1417215
Edward Hervey [Tue, 21 Nov 2017 15:30:35 +0000 (16:30 +0100)]
curlhttpsrc: Post an error message if no URI was set
Like for other sources
Edward Hervey [Tue, 21 Nov 2017 15:30:17 +0000 (16:30 +0100)]
curl: Add i18n
Edward Hervey [Tue, 21 Nov 2017 14:48:06 +0000 (15:48 +0100)]
tests/srtp: Bump up timeout to 3mins for testcase
This involves generating and processing 65536 packets, let's give it
time to actually complete that.
And a bit of debug to track what's going on.
Edward Hervey [Tue, 21 Nov 2017 14:33:57 +0000 (15:33 +0100)]
smoothstreaming: Handle invalid XML
Nothing guarantees the manifest is valid and will return a root node
Edward Hervey [Tue, 21 Nov 2017 14:33:08 +0000 (15:33 +0100)]
curlhttpsrc: Fix return value
The function returns a gchar * (and not a boolean)
Edward Hervey [Tue, 21 Nov 2017 14:31:05 +0000 (15:31 +0100)]
curlhttpsrc: Don't switch to PAUSED if not URI was specified
Like for other sources
Edward Hervey [Mon, 20 Nov 2017 16:06:07 +0000 (17:06 +0100)]
all: Fix left-shift undefined behaviour
Cast to the target type before shifting (or use macro if available)
Sebastian Dröge [Tue, 31 Oct 2017 08:09:44 +0000 (10:09 +0200)]
msdkh264enc: Implement frame-packing SEI insertion for side-by-side and top-bottom
Ideally this would be supported directly in the Intel MediaSDK but
that's not the case nowadays.
https://bugzilla.gnome.org/show_bug.cgi?id=774920
Hyunjun Ko [Fri, 17 Nov 2017 08:49:16 +0000 (17:49 +0900)]
msdkenc: Fix handling of YUY2, UYVY, BGRA surfaces
https://bugzilla.gnome.org/show_bug.cgi?id=789847
Sebastian Dröge [Thu, 16 Nov 2017 09:32:52 +0000 (11:32 +0200)]
msdkenc: Add support for YV12, YUY2, UYVY and BGRA
By doing conversion with VPP to NV12 before the actual encoding.
https://bugzilla.gnome.org/show_bug.cgi?id=789847
Jun Xie [Thu, 9 Nov 2017 04:36:44 +0000 (12:36 +0800)]
hlsdemux: Fix memory leak caused by double buffer map
https://bugzilla.gnome.org/show_bug.cgi?id=789999
Justin Kim [Mon, 13 Nov 2017 14:01:58 +0000 (23:01 +0900)]
srt: add passphrase and key length properties
For stream encryption, both `passphrase` and `key-length`
properties are required.
https://bugzilla.gnome.org/show_bug.cgi?id=790315
Vivia Nikolaidou [Tue, 14 Nov 2017 16:13:54 +0000 (18:13 +0200)]
avwait: Deserialised timecodes set after caps event now get correct framerate
A deserialised timecode has a framerate of 0/1 by default. That breaks
it when comparing the frames field with another timecode (incoming from
the frame). We were setting the framerate when receiving the caps event,
but not when setting the timecode in set_property, so it was broken for
timecodes set after the caps event.
Also checking if the fps_n we got from the caps event is != 0 before
setting it - also at the caps event.
https://bugzilla.gnome.org/show_bug.cgi?id=790334
Vivia Nikolaidou [Fri, 10 Nov 2017 15:21:43 +0000 (17:21 +0200)]
timecode: Fix incorrect wording in error message
Vivia Nikolaidou [Fri, 10 Nov 2017 15:18:45 +0000 (17:18 +0200)]
avwait: Better handling of deserialised timecode framerates
Now that timecodes support proper serialisation / deserialisation, a
timecode might have an invalid fps_n / fps_d even without using the
target-time-code-string property. Detect those cases and set fps_n/fps_d
properly.
Vivia Nikolaidou [Thu, 9 Nov 2017 10:08:35 +0000 (12:08 +0200)]
decklink: Remove unused "bflags" variable
We are ignoring all its flags anyway, so let's remove it altogether.
Vivia Nikolaidou [Thu, 9 Nov 2017 09:44:17 +0000 (11:44 +0200)]
decklink: Ignore some driver-set timecode flags
The "fields" flag is ignored because currently GStreamer doesn't support
having only top or only bottom fields inside a frame. The "drop frame"
flag is ignored because some occurrences have been spotted where it
wasn't set while it should have been. In practice, when we have 29.97 or
59.94 FPS, it's always drop-frame.
https://bugzilla.gnome.org/show_bug.cgi?id=790112
Vivia Nikolaidou [Wed, 8 Nov 2017 22:16:21 +0000 (00:16 +0200)]
decklink: Don't crash when getting hw serial number doesn't return OK
If the return value isn't OK, it means we might be getting data that
points to an invalid memory address. That shouldn't make us crash.
Justin Kim [Mon, 31 Jul 2017 05:38:34 +0000 (14:38 +0900)]
srt: Introduce SRT source and sink
SRT[0] is an open source transport technology[1] that optimizes
streaming performance across unpredictable networks.
Although SRT is based on UDP, it works like connection-oriented
protocol. However, it doesn't mean that the SRT server or client
is necessarily to link to a receiver or a sender so, here, the
pairs of source and sink elements are introduced.
- srtserversink: SRT server to feed SRT stream
- srtclientsrc: SRT client to get SRT stream from srtserversink
- srtclientsink: SRT client to send SRT stream
- srtserversrc: SRT server to listen from srtclientsink
[0] https://github.com/Haivision/srt
[1] http://www.srtalliance.org/
https://bugzilla.gnome.org/show_bug.cgi?id=785730