| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
`#ifdef` will, of course, evaluate to 1 in this case. We want `#if`.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In commit fd806628a8 (839cc3926 in the stable branch) I changed the
segment size to match exactly the buffer size. I missed that this is
only valid in exclusive mode and in shared mode the buffer size is
a multiple of the device period.
Revert the logic for the shared mode.
https://bugzilla.gnome.org/show_bug.cgi?id=796354
https://bugzilla.gnome.org/show_bug.cgi?id=796858
|
|
|
|
| |
crossfading
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
255 will easily become 0 in the blending function as they expect
the maximum value to be 255.
Can be reproduce with
gst-launch-1.0 videotestsrc pattern=ball ! c.sink_0 \
videotestsrc pattern=snow ! c.sink_1 \
compositor name=c \
sink_0::zorder=0 sink_1::zorder=1 sink_0::crossfade-ratio=0.5 \
background=black ! \
videoconvert ! xvimagesink
crossfade-ratio +/- 0.001 makes it work correctly and the same happens
at e.g. 0.25, 0.75, N*0.0625
https://bugzilla.gnome.org/show_bug.cgi?id=796846
|
|
|
|
|
|
|
|
|
|
| |
The mxsfb-drm driver has been added to the kernel long ago and will now
be the default display driver for NXP i.MX28, i.MX6SX and i.MX7D
processors so now is a good time to add it to kmssink.
Also, this is used in the upcoming i.MX8MQ and i.MX8MM processors.
https://bugzilla.gnome.org/show_bug.cgi?id=796873
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds entry for new DRM driver from xilinx
called "xlnx" which supports atomic modesetting.
We have kept entry for older DRM driver "xilinx_drm"
for backward compatility with a note describing
deprecation.
Signed-off-by: Devarsh Thakkar <devarsht@xilinx.com>
https://bugzilla.gnome.org/show_bug.cgi?id=795228
|
|
|
|
|
|
|
|
| |
This adds the sun4i DRM driver to the list of DRM drivers in kmssink.
The driver allows displaying video in either the main plane or an
overlay plane.
https://bugzilla.gnome.org/attachment.cgi?bugid=794839
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When negotiation is triggered by receiving caps on our sink pad
probes, we could encounter a race condition where need-negotiation
is emitted and the application requires the creation of an offer
before the current caps were actually updated.
This led to retrieving incomplete caps when creating the offer,
using find_codec_preferences -> pad_get_current_caps.
Instead, as we save the caps in the probe callback anyway, it is better
and thread safe to use these if they were set.
https://bugzilla.gnome.org/show_bug.cgi?id=796801
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=796731
|
| |
|
|
|
|
|
|
|
| |
Otherwise we end up trying to flush before
sample rate of SoundTouch is set
https://bugzilla.gnome.org/show_bug.cgi?id=796613
|
|
|
|
|
|
| |
This was wreaking havoc when used with a downstream audiomixer.
https://bugzilla.gnome.org/show_bug.cgi?id=796603
|
|
|
|
|
|
|
|
|
| |
When max is GST_CLOCK_TIME_NONE in the query, it should not
be set in the query handler, this otherwise could lead to
impossible situations, where the minimum latency ended up
greater than the maximum.
https://bugzilla.gnome.org/show_bug.cgi?id=796603
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The flush function immediately returned when pitch->next_buffer_offset
was 0.
This is clearly wrong, as next_buffer_offset can be 0 when a single
input buffer has been received, and no output buffer has been produced
before receiving EOS.
Simply remove that condition.
https://bugzilla.gnome.org/show_bug.cgi?id=796603
|
|
|
|
|
|
|
| |
gst_video_colorimetry_to_string() returns allocated memory which
must be freed.
https://bugzilla.gnome.org/show_bug.cgi?id=796596
|
| |
|
| |
|
|
|
|
|
|
| |
Update the license blurb in camconditionalaccess.[hc] from GPL to LGPL.
The plugin is LGPL and the GPL header in those two files was just a
copy/paste mistake.
|
|
|
|
| |
Fix a leaked string when building RTX info.
|
|
|
|
|
|
|
|
|
|
| |
Refactor transportsendbin, and change the way
pads are blocked on dtlssrtpenc so that they
don't interfere with state changes.
As well as being easier to read, this fixes
spurious failures shutting down webrtcbin
if DTLS negotiation hasn't completed yet.
|
|
|
|
|
|
|
| |
Move the errant piece of dtlssrtpenc state change
management from dtlstransport in the Webrtc libs,
into the transportsendbin that does the rest of
the element management so it's all in one place.
|
|
|
|
| |
Rename the dtlstransport debug category to webrtcdtlstransport.
|
|
|
|
|
|
| |
Release references in pad blocks and release the memory in the
dispose function too, in case the state change doesn't get
run (because calling the parent state change fails).
|
|
|
|
|
|
|
|
|
|
| |
Move freeing of the pad blocks back to before we call the
GstBin state change function, as there's something racy
going on on the build server otherwise, where the pads don't
unblock during downward state changes.
This is a bit of a stab in the dark, since I can't recreate
the build server failure locally.
|
|
|
|
| |
Those are GObjects not GstBins
|
|
|
|
|
|
|
| |
Fixes random crashes when an allocated webrtcbin isn't
given fresh 0-filled memory in its allocation. It works
mostly because GMutex and GCond are automatically initialised
in that case.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When changing state downward, we can't set pads
to inactive if they are blocked, it will deadlock
trying to acquire the streaming lock.
Just calling the parent state change function
will do the correct things to unblock probes and
set the pad inactive, so let it do that and
remove the probes after the parent state change
function has run
https://bugzilla.gnome.org/show_bug.cgi?id=796682
|
|
|
|
|
|
|
|
|
|
| |
This lets users call gst_pad_get_current_caps on newly-added
pads to easily determine what to plug them into.
We cannot copy sticky events unconditionally in core,
see #719437
https://bugzilla.gnome.org/show_bug.cgi?id=796387
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=796429
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=795044
|
|
|
|
|
|
|
|
| |
change
Check if duration is changed before emitting duration-changed signal
https://bugzilla.gnome.org/show_bug.cgi?id=796491
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=796623
|
| |
|
|
|
|
|
| |
* If the seek was handled upstream, use that SEGMENT seqnum
* Use the proper invalid default value
|
|
|
|
|
|
|
|
|
| |
It is completely legal to have packets with zero sizes.
Zero-sized packet indicates header with only Start Code.
One eg: is user data packet. The patch allows having
GstMpegVideoPacket with zero sizes.
https://bugzilla.gnome.org/show_bug.cgi?id=796477
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The calculation for the frame count in the non-aligned case resulted in
a one too low buffer frame count.
This resulted in:
1) exclusive mode not working as the frame count has to match
exactly there.
2) Buffer underruns in shared mode as the current write() code doesn't
handle catching up to low buffer levels (fixed in the next commit)
To fix just use the wasapi API to get the buffer size which will always
be correct.
https://bugzilla.gnome.org/show_bug.cgi?id=796354
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=796354
|
|
|
|
|
|
|
|
|
|
| |
S_FALSE is a valid return value which does not indicate an error.
For example IAudioClient_Stop() returns S_FALSE when it is already stopped.
Use the FAILED macro instead which just checks if an error occured or not.
This fixes spurious warnings when using the wasapisink element.
https://bugzilla.gnome.org/show_bug.cgi?id=796280
|
|
|
|
|
|
|
| |
CoTaskMemFree has a different calling convention than GDestroyNotify
and things crash at least with MinGW.
https://bugzilla.gnome.org/show_bug.cgi?id=796280
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Regardless of LIVE or VOD, "a manifest has next period but
currently EOSed" state is meaning that it's time to advance period.
Previous behavior of adpativedemux, however, was able to period
advancing only for VOD case, since the adaptivedemux tried to
update and wait new manifest without respecting existence of the next period.
https://bugzilla.gnome.org/show_bug.cgi?id=781183
|
|
|
|
|
|
|
| |
_get_next_fragment_timestamp() returns relative timestamp to period start.
But gst_mpd_client_stream_seek() uses absolute MPD timeline.
https://bugzilla.gnome.org/show_bug.cgi?id=781183
|
|
|
|
|
|
| |
The currrent example was broken since 1.8.3 it seems.
https://bugzilla.gnome.org/show_bug.cgi?id=786304
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unless we only have sparse streams. In this case we will consider them.
It fixes a bug happening when first observed timestamp comes from a
sparse stream and other streams don't have a valid timestamp, yet. Thus
leading the timestamp from sparse stream to be the start of the
following segment. In this case, if the timestamp is really bigger than
non-sparse stream (audio/video), it will lead the pipeline to clip
samples from the non-parse stream.
https://bugzilla.gnome.org/show_bug.cgi?id=744469
|
|
|
|
|
| |
Output any colorimetry information extracted from the stream
into the caps.
|