Hyunil [Wed, 20 Dec 2017 12:15:34 +0000 (21:15 +0900)]
Remove unused CFLAG
Change-Id: I0b65a3c22dd5ef56f581c321d50d74eaf20dba42
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Eunhae Choi [Fri, 8 Dec 2017 02:23:38 +0000 (11:23 +0900)]
adaptive: extract variant info
- extract variant info
- apply the user-agent, cookie info
Change-Id: I38ec2e0b0248924716a010b3781b6939eb790e36
Eunhae Choi [Mon, 4 Dec 2017 10:01:02 +0000 (19:01 +0900)]
adaptive: avoid pad switching
Change-Id: I29fae423a03e4d642866a218058ca2efa9486f06
Eunhae Choi [Wed, 1 Nov 2017 13:14:06 +0000 (22:14 +0900)]
Merge tizen patch based on 1.12.2
except waylandsink,
tizen will use previous waylandsink which is included gst-plugins-tizen.
Change-Id: I9c47a204c953ecaec4f1ae6396126228d666d0bb
eunhae choi [Fri, 20 Oct 2017 04:31:57 +0000 (04:31 +0000)]
Merge "Add rotation of spatial audio (first order ambisonics)" into tizen
Hyunil [Wed, 18 Oct 2017 08:05:01 +0000 (17:05 +0900)]
Waylandsink : Add checking MMVideoBuffer for GstBuffer of Codec Bufferpool
Change-Id: Iafcbcd827682a4000a0f7283454ecdee1f94d142
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Hyunil [Tue, 10 Oct 2017 01:53:42 +0000 (10:53 +0900)]
waylandsink: Use handle num and plane num of MMVideoBuffer
Change-Id: If2e5296125fa2e5a17f198ccb00b8796914e5729
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Mykola Alieksieiev [Wed, 27 Sep 2017 15:55:48 +0000 (18:55 +0300)]
Add rotation of spatial audio (first order ambisonics)
Change-Id: I11d28fa80d652411233a0a631af482620196b0fd
Signed-off-by: Mykola Alieksieiev <m.alieksieie@samsung.com>
JunSeok, Kim [Mon, 18 Sep 2017 05:20:49 +0000 (14:20 +0900)]
wldisplay: change version of tizen_policy from 1 to 7.
Changing version of tizen_policy from 1 to 7 because of tizen_extensions
version up.
Change-Id: I9e4cd83219ae9af10760cab2915e50202d4ab44c
Gilbok Lee [Tue, 12 Sep 2017 04:19:25 +0000 (13:19 +0900)]
dashdemux/hlsdemux/adaptivedemux: Fix build warning and apply coding rule
Change-Id: Ic5606190134d9b62e2b82121bf1e8ac3111b123f
Lukasz Pawelczyk [Tue, 4 Jul 2017 14:06:26 +0000 (16:06 +0200)]
Make gstfragmented use OpenSSL instead of Nettle
Change-Id: I3f180f5ba3e9a2eb593f1183d845ee1050a9f52f
Gilbok Lee [Mon, 4 Sep 2017 08:31:05 +0000 (17:31 +0900)]
hlsdemux: Fix crash when NETTLE is not used
hlsdemux: Fix bug for getting variant stream info
Change-Id: Ibe39e0749723d5ef41b927beb6066f91336e35b0
Sebastian Dröge [Fri, 14 Jul 2017 11:03:37 +0000 (14:03 +0300)]
Release 1.12.2
Sebastian Dröge [Fri, 14 Jul 2017 10:35:02 +0000 (13:35 +0300)]
Update .po files
Sebastian Dröge [Fri, 14 Jul 2017 10:23:03 +0000 (13:23 +0300)]
po: Update translations
Edward Hervey [Thu, 13 Jul 2017 10:57:12 +0000 (12:57 +0200)]
adaptivedemux: Workaround for live seek ranges when advancing
This is a workaround for a regression introduced by
f4190a49c04f1d5d174cebba0bc9a03a7ec721c2
( adaptivedemux: Check live seeking range more often )
The goal of the previous commit was to be able to cope with non-1.0
rates on live streams which have a "seeking window" (i.e. the server
keeps around quite a bit of the live stream so you can seek back into
it).
Without that commit, two different kind of issues would happen:
* When doing reverse playback, you would never check whether you
are outside of the seekable region. And would then continuously
try to download fragments that are no longer present.
* When doing fast forward, you would end up requesting fragments
which are not present yet.
In order to determine whether one was *really* outside of the seekable
window, we check whether the current stream position is still
within the seekable region.
The *problem* though with that commit is that it assumes that subclasses
will return continuously updated seeking ranges (i.e. dependent on the
current time), which is *NOT* the case.
For example:
* dashdemux does use the current UTC to determine the seekable region
* hlsdemux uses the values from the last updated manifest
Therefore if one downloads fragments faster than realtime, for HLS
we would end up at the end of the last manifest seekable range, and
the previous commit would consider the stream as being ended... which
is not the case.
In the long run, we need to figure out a way to cope with non-1.0
rates on live streams for all types of stream (including HLS).
https://bugzilla.gnome.org/show_bug.cgi?id=783075
Thiago Santos [Sat, 13 May 2017 22:17:57 +0000 (15:17 -0700)]
adaptivedemux: small refactor to avoid repeated code
Move segment event update to a function
https://bugzilla.gnome.org/show_bug.cgi?id=773159
Edward Hervey [Tue, 9 May 2017 09:41:49 +0000 (11:41 +0200)]
adaptivedemux: Handle prepared streams on seeks
This is a race that was exposed by the {hls|dash}.scrub_forward_seeking
validate test.
The "race" is that a subclass might want to change format, causing
a new stream to be created (but not exposed/switched yet) and put on the
prepared_streams list. That stream will have values (including pending
segment) from the pre-seek state.
Before the stream is exposed/switched, a new seek comes in and the stream
values get updated ... but the ones that will be changed don't get updated
causing them to push out wrong segments once they are exposed.
https://bugzilla.gnome.org/show_bug.cgi?id=773159
Sebastian Dröge [Tue, 11 Jul 2017 17:54:25 +0000 (20:54 +0300)]
mxfdemux: Create index table arrays with a big enough size
Sebastian Dröge [Tue, 11 Jul 2017 17:53:22 +0000 (20:53 +0300)]
mxfdemux: Initialize index table entries completely in all cases
When seeking backwards into a previously unseen location, we wouldn't
fully initialize them and playback would fail later.
Thiago Santos [Tue, 30 May 2017 05:47:10 +0000 (22:47 -0700)]
dashdemux: update manifest streams correctly if pads aren't exposed
In some cases, it is possible that we need to update the manifest before
pads have been exposed at all. If there are no current pads, just expose
the next prepared streams. This doesn't handle the case where a manifest
update would happen while a live streams is changing periods, which is a
type of use case that we're unaware of real usages yet.
https://bugzilla.gnome.org/show_bug.cgi?id=783028
Edward Hervey [Tue, 30 May 2017 13:27:37 +0000 (15:27 +0200)]
dashdemux: Implement a default presentation delay
Have a fallback presentation delay is great (if not present in the
manifest), having an actual default value is better.
https://bugzilla.gnome.org/show_bug.cgi?id=783244
Hyunil [Wed, 12 Jul 2017 01:40:42 +0000 (10:40 +0900)]
waylandsink : update last_sample in paused state when signal_handoffs is set to zero
Change-Id: I640d8f10d54c573a615d7b1126374ac5ad62c515
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Philippe Renon [Mon, 10 Jul 2017 15:35:32 +0000 (17:35 +0200)]
directsoundsrc: Properly pass pLockedBuffer by reference when calling IDirectSoundCaptureBuffer_Lock
https://bugzilla.gnome.org/show_bug.cgi?id=784755
Nicolas Dufresne [Thu, 6 Jul 2017 21:20:56 +0000 (17:20 -0400)]
kmssink: Don't leak GEM primed from DMABuf
This otherwise breaks DMABuf reclaiming. This is not visible from
userspace, but inside the kernel, the DRM driver will hold a ref to the
DMABuf object. With a V4L2 driver allocating those DMABuf, it then
prevent changing the resolution and re-allocation new buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=782774
Eunhae Choi [Thu, 6 Jul 2017 08:04:57 +0000 (17:04 +0900)]
adaptivedemux: add streaming variant control
- add property to set max bandwidth/width/height limit
- add msg posting to share the current streaming variant
Change-Id: I9d58c3331a5cab6b2fc09a7b0cfdf25fb84a39be
Sebastian Dröge [Wed, 5 Jul 2017 14:04:46 +0000 (17:04 +0300)]
mxfdemux: For intra-only streams, always output DTS=PTS
Sebastian Dröge [Wed, 5 Jul 2017 12:48:57 +0000 (15:48 +0300)]
mxfdemux: Fix integer overflow in partition position comparison function
Sebastian Dröge [Wed, 5 Jul 2017 10:59:12 +0000 (13:59 +0300)]
mxfmetadata: Set field-order correctly for interlaced video
Sebastian Dröge [Wed, 5 Jul 2017 10:52:25 +0000 (13:52 +0300)]
mxfmetadata: Use display width/height instead of stored width/height
Stored values contain padding and alignment, and should only be used as
fallback if neither display values nor sampled values exist.
Sebastian Dröge [Tue, 4 Jul 2017 21:48:36 +0000 (00:48 +0300)]
mxfdemux: Don't include any KLV packets between header metadata and index table segments in calculations
Minor fixup of last commit.
Sebastian Dröge [Tue, 4 Jul 2017 17:01:37 +0000 (20:01 +0300)]
mxfdemux: Allow filler and other KLV packets between index table segments
While only filler packets should be allowed, for good measure also skip
any other KLV packets in the range where there could be index table
segments.
This fixes parsing of partitions with multiple index table segments,
which are separated by a filler packet, or other packets.
Sebastian Dröge [Tue, 27 Jun 2017 12:01:22 +0000 (15:01 +0300)]
mxfmux: Write temporal offset and correct keyframe offset into index table
https://bugzilla.gnome.org/show_bug.cgi?id=784027
Sebastian Dröge [Tue, 27 Jun 2017 07:47:44 +0000 (10:47 +0300)]
mxfdemux: Take temporal reordering from the index table into account
This is needed to know the PTS, without that we only know the DTS and
using that also for the PTS is wrong unless we have an intra-only codec.
If we can't get the temporal reordering from the index table, don't set
any PTS for non-intra-only codecs and let decoders figure out something.
https://bugzilla.gnome.org/show_bug.cgi?id=784027
Sebastian Dröge [Tue, 27 Jun 2017 12:41:48 +0000 (15:41 +0300)]
mxfdemux: Include duration in response to SEEKING query
Jan Schmidt [Wed, 21 Jun 2017 15:01:40 +0000 (01:01 +1000)]
configure: Add --with-moc/uic/rcc options
For cross-compiling, it's easier to be able to specify the
actual paths to the tools
Tim-Philipp Müller [Mon, 3 Jul 2017 09:11:42 +0000 (10:11 +0100)]
ttml: fix linking to libgstvideo
https://bugzilla.gnome.org/show_bug.cgi?id=784439
Eunhae Choi [Fri, 30 Jun 2017 02:08:34 +0000 (11:08 +0900)]
vtenc: fix caps leak
Change-Id: Id805bc620ff72b3fa113cd8e85d12e693493cf60
Matthew Waters [Wed, 28 Jun 2017 04:45:18 +0000 (14:45 +1000)]
gl: reset gl->DrawBuffer to the necessary values
GL_COLOR_ATTACHMENT0 when a framebuffer is bound
GL_BACK if no framebuffer is bound
https://bugzilla.gnome.org/show_bug.cgi?id=784210
Hyunjun Ko [Wed, 28 Jun 2017 03:17:37 +0000 (12:17 +0900)]
glmemory: reset the draw buffer to GL_BACK
The draw buffer should be reset to GL_BACK since the framebuffer is already
unbound.
https://bugzilla.gnome.org/show_bug.cgi?id=784210
Gilbok Lee [Tue, 27 Jun 2017 05:50:03 +0000 (14:50 +0900)]
Fix memory leak (wrong usage gst_caps_from_string)
Change-Id: I8575e7aba0ea2e2ed9706e0a0e9a8ff16ab2ab45
Signed-off-by: Gilbok Lee <gilbok.lee@samsung.com>
Hyunil [Thu, 22 Jun 2017 01:10:02 +0000 (10:10 +0900)]
Waylandsink : Removing unsupported video formats from video caps of TIZEN
Change-Id: I461c414be916e74caa50583447ff283bd9121b96
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Sebastian Dröge [Tue, 20 Jun 2017 16:19:51 +0000 (19:19 +0300)]
gl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again
And remove gstgldisplay_cocoa.h instead, which got moved to the
installed headers earlier.
Sebastian Dröge [Tue, 20 Jun 2017 09:06:59 +0000 (12:06 +0300)]
Release 1.12.1
Sebastian Dröge [Tue, 20 Jun 2017 08:24:55 +0000 (11:24 +0300)]
Update .po files
Sebastian Dröge [Tue, 20 Jun 2017 08:09:34 +0000 (11:09 +0300)]
po: Update translations
Eunhae Choi [Mon, 19 Jun 2017 01:55:58 +0000 (10:55 +0900)]
rtph265depay : fix mem leak
Change-Id: I6ed5269baca45d8ef2b11aa0647a65a72f33100f
Eunhae Choi [Fri, 16 Jun 2017 09:40:29 +0000 (18:40 +0900)]
directfb: fix mem leak
Change-Id: Id5069d045f280114a18dda098659a0096f8cb301
Reynaldo H. Verdejo Pinochet [Fri, 16 Jun 2017 16:43:35 +0000 (09:43 -0700)]
dvb: src: fix use of wrong array index for tune signal
Erroneous value made "TUNE" overwrite "TUNNING_FAIL" ....
Thibault Saunier [Thu, 15 Jun 2017 18:13:14 +0000 (14:13 -0400)]
mxfdemux: Do not try to serialize unresolved metadatas
When retrieving the `mxfdemux.structure` property, it leads to an
assertion as metadatas need to be resolved for the call to
mxf_metadata_base_to_structure to be valid.
Eunhae Choi [Fri, 16 Jun 2017 07:51:50 +0000 (16:51 +0900)]
mpegpsmux: fix mem leak
Change-Id: I6825deeac82524c18b666498a168707978e0ef80
Sebastian Dröge [Mon, 12 Jun 2017 19:29:01 +0000 (22:29 +0300)]
glupload: Fix DirectVIV uploader for formats with a single plane
We have to pass the "height" as height = vmeta->offset[1] / width to the
API, which of course does not work well for formats with only a single
plane. Use the whole memory size instead of the offset in that case.
Seungha Yang [Sun, 4 Jun 2017 11:23:36 +0000 (20:23 +0900)]
adaptivedemux: Clear "cancelled" on uridownloader before processing manifest
Previous commit let demux call gst_uri_downloader_cancel() on _demux_reset().
Note that, _demux_reset() called during PAUSED_TO_READY and READY_TO_PAUSED.
And, it will set "cancelled" on uridownloader which blocks the use of
uridownloader. The issue is that, subclass can use the uridownloader not only
live streaming for manifest update, but also for fetching another manifests
such as variant and rendition m3u8 of hls streaming. So to unblock it,
demux should clear "cancelled" before processing initial manifest.
https://bugzilla.gnome.org/show_bug.cgi?id=783401
Mathieu Duponchelle [Wed, 31 May 2017 00:46:01 +0000 (02:46 +0200)]
adaptivedemux: release the manifest lock ...
before broadcasting preroll.
The deadlock was as follows:
-> The subclass pushes a buffer on a newly-created stream in T1
-> We take the preroll lock in T1, to handle_preroll
-> The demuxer is stopped in T2, we take the MANIFEST_LOCK
-> T1 starts blocking because it received a reconfigure event
and needs to take the MANIFEST_LOCK
-> T2 deadlocks because it now wants the preroll_lock.
https://bugzilla.gnome.org/show_bug.cgi?id=783255
Thiago Santos [Tue, 30 May 2017 05:28:21 +0000 (22:28 -0700)]
adaptivedemux: do not erase data while updates-loop is running
Make sure the manifest update loop is stopped before proceeding with the
resetting of the manifest data. Otherwise, the updates loop will try to
use it and it leads to a segfault
https://bugzilla.gnome.org/show_bug.cgi?id=783028
Thiago Santos [Tue, 30 May 2017 05:26:09 +0000 (22:26 -0700)]
mpdparser: remove duplicate free of client data
https://bugzilla.gnome.org/show_bug.cgi?id=783028
Mathieu Duponchelle [Wed, 31 May 2017 01:14:04 +0000 (03:14 +0200)]
adaptivedemux: make sure to free all "old streams"
As we release the MANIFEST_LOCK in stop_tasks,
demux->priv->old_streams can be set, we need to free these
otherwise we may end up trying to dispose elements in the
READY state.
https://bugzilla.gnome.org/show_bug.cgi?id=783256
Edward Hervey [Wed, 31 May 2017 08:58:39 +0000 (10:58 +0200)]
dashdemux: Remove wrong assertion
This is wrong because:
* If the rate is negative we should check for the *previous* period
* adaptivedemux already does the proper checks before calling this
method
Edward Hervey [Fri, 26 May 2017 15:30:10 +0000 (17:30 +0200)]
adaptivedemux: Fix debugging message
GstSegment position is a guint64 and not a gint64
CID #1409910
Edward Hervey [Thu, 25 May 2017 07:48:53 +0000 (09:48 +0200)]
adaptivedemux: Check live seeking range more often
The live seeking range was only checked when doing actual seeks. This was
assuming that the rate would always be 1.0 (i.e. the playback would
advance in realtime, and therefore fragments would always be available
since the seeking window moves at the same rate).
With non-1.0 rates, this no longer becomes valid, and therefore we need
to check whether we are still within the live seeking range when advancing.
https://bugzilla.gnome.org/show_bug.cgi?id=783075
Seungha Yang [Tue, 16 May 2017 14:20:44 +0000 (23:20 +0900)]
dashdemux: Initialize sidx_position to GST_CLOCK_TIME_NONE
If a manifest has non-zero presentation time offset
(i.e., earliest presentation time specified by sidx box is not zero),
the initial sidx position shouldn't be zero. Since we cannot define
exact sidx position until parsing sidx box, set the value to unknown.
https://bugzilla.gnome.org/show_bug.cgi?id=782693
Eunhae Choi [Mon, 12 Jun 2017 08:34:08 +0000 (17:34 +0900)]
opencv: fix mem leak
Change-Id: Id26dc8effeed06a789bda89f95aa6aed663fc5ab
Aaron Boxer [Sat, 10 Jun 2017 11:56:48 +0000 (07:56 -0400)]
openjpegdec: fix display artifacts for RGB 8-bit
https://bugzilla.gnome.org/show_bug.cgi?id=783626
Vincent Penquerc'h [Mon, 5 Jun 2017 14:31:52 +0000 (15:31 +0100)]
jpeg2000sampling: fix critical when sampling is missing from caps
This can happen with real files
Vincent Penquerc'h [Wed, 7 Jun 2017 15:17:50 +0000 (16:17 +0100)]
openjpeg: guard against invalid memory access on crafted files
Tim-Philipp Müller [Thu, 18 May 2017 09:58:20 +0000 (10:58 +0100)]
Fix up package name and origin in some plugins
Scott D Phillips [Thu, 18 May 2017 17:36:50 +0000 (10:36 -0700)]
msdk: enc: set pts and dts, fix inverted sync_point flag
Set the pts and dts on the frame that we receive from the msdk.
Also fix the inverted logic in setting sync points, previously we
were marking all frames as sync points except IDRs.
https://bugzilla.gnome.org/show_bug.cgi?id=782801
Jeremy Hiatt [Thu, 1 Jun 2017 01:15:05 +0000 (01:15 +0000)]
glutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask()
eunhae choi [Fri, 9 Jun 2017 04:27:22 +0000 (04:27 +0000)]
Merge "Added gst.h for undefined symbol problem" into tizen
Sejun Park [Fri, 9 Jun 2017 03:55:40 +0000 (12:55 +0900)]
Added gst.h for undefined symbol problem
Change-Id: I6793516a18871d932e3bf29010b89b02417d1833
Hyunil [Fri, 9 Jun 2017 00:45:40 +0000 (09:45 +0900)]
Waylandsink: Add plane_size info to tbm_surface for s/w codec output
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Change-Id: I8579f88ea423dac399153ac66deb7e192cd0b154
eunhae choi [Thu, 8 Jun 2017 03:42:22 +0000 (03:42 +0000)]
Merge "apply CVE patch for security weakness" into tizen
Hyunil [Wed, 7 Jun 2017 10:38:52 +0000 (19:38 +0900)]
Waylandsink : Add SN21 video format
Change-Id: Icc7587b4c5aacf3d7d5f7380cdaaedf99075056f
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Hyunil [Wed, 7 Jun 2017 06:45:21 +0000 (15:45 +0900)]
Waylandsink : Add plane size info to tbm_surface
Change-Id: I042dc83f489bda38526a4b156c575f42eff4568a
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
Sejun Park [Wed, 7 Jun 2017 07:18:10 +0000 (16:18 +0900)]
apply CVE patch for security weakness
Change-Id: Ie7c401f1424312e2e6c2193df990525d30439083
Thibault Saunier [Tue, 6 Jun 2017 18:58:55 +0000 (14:58 -0400)]
videoparse: Fix property handling
Usage of GstValueArray was wrong and frame-stride does not exist in
rawvideoparse
Wim Taymans [Thu, 1 Jun 2017 14:00:50 +0000 (16:00 +0200)]
pcapparse: endianness fix
Also swap the linktype after we detected that we need to do
byteswapping. Fixes a problem with reading pcap files generated
on a machine with different endianness.
Sejun Park [Thu, 1 Jun 2017 07:20:56 +0000 (16:20 +0900)]
apply CVE patch for security weakness
Change-Id: Ie64713714465e8ea9a0e0cf2c1f3e55e42de6fa9
Haihua Hu [Thu, 25 May 2017 03:05:47 +0000 (11:05 +0800)]
glformat: fix the usage of GST_GL_RGB565
GL_RGB565 is sized internal glformat, the corresponding glformat
should be GL_RGB and type is GL_UNSIGNED_SHORT_565. Otherwise will
return GL_INVALID_ENUM when creating texture.
https://bugzilla.gnome.org/show_bug.cgi?id=783066
Edward Hervey [Thu, 25 May 2017 14:42:03 +0000 (16:42 +0200)]
adaptivedemux: Don't create invalid event
tags could potentially be NULL
Matthew Waters [Fri, 2 Dec 2016 06:51:57 +0000 (17:51 +1100)]
adaptivedemux: retry download MAX_DOWNLOAD_RETRY_COUNT times before erroring
What we want is to retry downloading the fragment on 4xx/5xx errors
however returning EOS will cause waiting for a manifest update for live
(which may be a really long time) or stop everything for non-live.
Change that to only return EOS/ERROR once we've reached the error limit.
https://bugzilla.gnome.org/show_bug.cgi?id=776609
fvanzile [Thu, 23 Feb 2017 23:42:08 +0000 (15:42 -0800)]
glcontext: keep a ref to the active thread
With the macOS/iOS implementations, the active thread can change
multiple times over the life of a pipeline which would expose a race in
the thread tracking.
Fix by taking a ref on the active thread while the context is active.
https://bugzilla.gnome.org/show_bug.cgi?id=779202
Simon Himmelbauer [Thu, 18 May 2017 12:23:14 +0000 (15:23 +0300)]
qt: Use GST_GL_HAVE_PLATFORM_CGL instead of GST_GL_HAVE_PLATFORM_COCOA
The latter is not used/available anymore since years. Also fix a typo
in the include path for the Cocoa GL display header.
Sebastian Dröge [Thu, 18 May 2017 11:34:04 +0000 (14:34 +0300)]
amcvideodec: Unref downstream caps after usage
https://bugzilla.gnome.org/show_bug.cgi?id=782771
Sebastian Dröge [Thu, 18 May 2017 08:42:17 +0000 (11:42 +0300)]
h265parse: Fix calculation of codec_data buffer size
Haihua Hu [Wed, 17 May 2017 08:26:38 +0000 (16:26 +0800)]
glformat: Add missing GST_GL_RGB565 in some switch statement
https://bugzilla.gnome.org/show_bug.cgi?id=782736
Sebastian Dröge [Wed, 10 May 2017 13:59:42 +0000 (15:59 +0200)]
decklink: Always use the video stream time for audio too
The audio packet times can be completely unrelated to the video stream
time, depending on the card. While this looks like a bug in the driver,
just always using the video stream time (which is correct) works as a
workaround for now.
Sebastian Dröge [Wed, 17 May 2017 14:38:01 +0000 (17:38 +0300)]
cocoa: Install gstgldisplay_cocoa.h
It's needed by e.g. qmlglsink.
Carlos Rafael Giani [Tue, 9 May 2017 21:59:04 +0000 (23:59 +0200)]
gl/viv-fb: Fix user-choice string comparisons
https://bugzilla.gnome.org/show_bug.cgi?id=782921
Sebastian Dröge [Mon, 15 May 2017 13:37:14 +0000 (16:37 +0300)]
decklinkvideosink: Copy min(gstreamer_stride, decklink_stride) per line
Instead of just bpp * width, which might be more than we can copy.
Vincent Penquerc'h [Fri, 12 May 2017 09:01:10 +0000 (10:01 +0100)]
h264parse: fix caps leak in renegotiation
Vincent Penquerc'h [Fri, 12 May 2017 09:00:56 +0000 (10:00 +0100)]
h265parse: fix caps leak in renegotiation
Vincent Penquerc'h [Tue, 9 May 2017 09:32:05 +0000 (10:32 +0100)]
jpeg2000parse: fix negotiation with j2c and jpc both allowed upstream
If upstream supports both, but downstream supports only jpc, j2c
would have been selected as the first in the caps.
https://bugzilla.gnome.org/show_bug.cgi?id=782221
Nirbheek Chauhan [Tue, 9 May 2017 10:36:10 +0000 (16:06 +0530)]
directsoundsrc: Use a GstClockID to wait instead of Sleep()
The main advantage is that our sleeps can be interrupted in case of
an src_reset(). Earlier, we would need to wait for a read to complete
before we could do a reset, which could take a long time.
https://bugzilla.gnome.org/show_bug.cgi?id=781249
Sebastian Dröge [Tue, 9 May 2017 09:25:20 +0000 (11:25 +0200)]
glmemory: Only use glDrawBuffer if available
Otherwise fall back to glDrawBuffers. Also check if glReadBuffer exists
before using it.
glDrawBuffer does not exist for GLES, only glDrawBuffers does.
https://bugzilla.gnome.org/show_bug.cgi?id=782376
Scott D Phillips [Mon, 8 May 2017 18:01:39 +0000 (11:01 -0700)]
meson: Ignore msvc warnings in C++ as well
We were only ignoring the listed msvc warnings for C language
files and not C++. This was working by the coincidence that we did
not have any instances of these warnings in C++ files. Lately the
build of decklink has been fixed on windows, and it has an
instance of one of these warnings in a C++ file.
https://bugzilla.gnome.org/show_bug.cgi?id=782345
Nirbheek Chauhan [Thu, 4 May 2017 23:00:59 +0000 (04:30 +0530)]
decklink: Fix linking on MinGW
MinGW does not provide comsupp.lib, so there's no implementation of
_com_util::ConvertBSTRToString. Use a fallback implementation that
uses wcstombs() instead.
On MinGW we also truncate the name to 100 chars which should be fine.
Nirbheek Chauhan [Thu, 4 May 2017 22:32:29 +0000 (04:02 +0530)]
decklink: Fix building on Windows
BSTR is already a pointer to a string
Nirbheek Chauhan [Thu, 4 May 2017 22:31:38 +0000 (04:01 +0530)]
meson: Fix decklink building on Windows
Needs comsuppw, and does not need libdl or pthread.
Nirbheek Chauhan [Wed, 3 May 2017 17:20:27 +0000 (22:50 +0530)]
directsoundsrc: Use latency-time and buffer-time settings
Earlier, the plugin was ignoring those settings and blindly setting
buffer-time to 2 seconds and latency-time to 200ms, which forced all
pipelines to have a minimum latency of 200ms + sink latency.
The values of segsize and segtotal were also not derived correctly.
Now we obey these values, and you can get close to the previous
behaviour by setting buffer-time and latency-time manually. Note that
they are set in microseconds.
As a consequence, when we haven't received enough data from the
device, we now sleep for a time proportional to the data remaining.
However, Directsound is a deprecated API so it maintains its own
software ringbuffer which updates at arbitrary intervals. Hence we
might have to wait a full segsize to get the last 10% of data. To
avoid tight loops, we clamp our sleep floor at 10ms.
In my testing, this keeps the wakeups not-too-high (proportional to
the latency-time set on the source). Further improvements should be
made by fixing the WASAPI audio source plugin instead of this.
Directsound is deprecated and as the comments explain, it is
impossible to get low latency, decent quality, or good performance
from it.
Based on a patch by Sebastian Dröge <sebastian@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=781249