| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=757895
|
|
|
|
|
|
|
|
| |
If tsdemux never receives data for a stream, the corresponding pad will never
be added and stream->active will remain FALSE. When the stream is removed, the
pad will not be unreffed and will be leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=757873
|
|
|
|
|
|
| |
It is up to the element handling the seek to send flush events
downstream, otherwise we end up with a situation where upstream
would get unexpected GST_FLOW_FLUSHING
|
|
|
|
|
|
| |
Differentiate the vp8/vp9 bitstream based on fourcc.
https://bugzilla.gnome.org/show_bug.cgi?id=757251
|
|
|
|
|
|
|
|
| |
Allows baseclass to handle it from there
Related to:
https://bugzilla.gnome.org/show_bug.cgi?id=756563
|
|
|
|
|
|
|
|
|
|
| |
Store and copy input state fields when setting the
output state of the decoder. Avoids problems like
the framerate set by an upstream element being ignored
Related to:
https://bugzilla.gnome.org/show_bug.cgi?id=756563
|
|
|
|
|
|
|
| |
Makes sure the mngr struct reflects a clean state
for the next frame, avoiding failures like:
https://bugzilla.gnome.org/show_bug.cgi?id=756563
|
|
|
|
|
|
| |
When getting sample from taglist, the memory is not being freed resulting in memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=756070
|
|
|
|
|
|
|
|
| |
Build error due to wrong argument type in debug message
aagg->priv->offset and next_offset are of type int64, but uint64
formatter is being used in logs. Changing all those to int64
https://bugzilla.gnome.org/show_bug.cgi?id=756065
|
|
|
|
|
|
|
| |
instead of always using 0. Otherwise we might output a lot of silence in the
beginning instead of outputting from the relevant position.
https://bugzilla.gnome.org/show_bug.cgi?id=755623
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The buffer timestamps in the collect function will already be
running time, don't try to convert them again to running time,
this would yield CLOCK_TIME_NONE now that the segment is shifted
to account for negative dts.
This fixes x264enc ! mpegtsmux ! hlssink, which was broken
because mpegtsmux would send a downstream key unit event with
running time NONE and then hlssink would immediately send
another one upstream and it would just be a flood of force
keyframe events in both directions after the first one. This
would then break hlssink because it uses multifilesink in
next-file=key-unit-event mode, and starting a new file after
every few kB does not work well for HLS.
|
|
|
|
|
|
| |
U and V were inverted
https://bugzilla.gnome.org/show_bug.cgi?id=755239
|
|
|
|
|
| |
This makes the audiomixer unit test time out in master.
Broke with 587e7c4
|
|
|
|
|
|
|
|
| |
We might've queued up a GAP buffer that is only partially inside the current
output buffer (i.e. we received it too late!). In that case we should only
skip the part of the GAP buffer that is inside the current output buffer, not
also the remaining part. Otherwise we forward this pad too far into the future
and break synchronization.
|
|
|
|
| |
Fixes compiler warnings when extra debugging is enabled at compile time.
|
|
|
|
|
| |
The state change function was implemented, but not installed,
making the compiler complain about the unused function.
|
|
|
|
|
| |
Disable code that warns about unused variables when G_DISABLE_ASSERT
is defined, as it is in tarballs and pre-releases.
|
|
|
|
|
|
|
|
|
| |
Derive from GstVideoSink so that preroll frames will automatically
get rendered too, unless the show-preroll-frame property is set to
FALSE. Fixes intervideosrc only picking up frames if intervideosink
is in PLAYING state.
https://bugzilla.gnome.org/show_bug.cgi?id=755049
|
|
|
|
|
|
|
|
| |
Fix the negotiation of GstVideoOverlayComposition by checking
intersection with the peer caps, rather than just accept-caps,
which might only check the pad template.
https://bugzilla.gnome.org/show_bug.cgi?id=755113
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We have to queue buffers based on their running time, not based on
the segment position.
Also return running time from GstAggregator::get_next_time() instead of
a segment position, as required by the API.
Also only update the segment position after we pushed a buffer, otherwise
we're going to push down a segment event with the next position already.
https://bugzilla.gnome.org/show_bug.cgi?id=753196
|
|
|
|
|
|
| |
position
https://bugzilla.gnome.org/show_bug.cgi?id=753196
|
|
|
|
|
|
|
|
|
|
|
|
| |
If any of the arguments to CLAMP are unsigned integers, the comparison causes
an automatic conversion of the signed int to unsigned, which causes -1 to become
UINT_MAX and get clamped to the high value of the CLAMP instead of 0.
See 716 at http://c0x.coding-guidelines.com/6.3.1.8.html
Also add a test for this.
https://bugzilla.gnome.org/show_bug.cgi?id=754576
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=753152
|
|
|
|
|
|
|
|
| |
x/y/w/h are signed integers. As can be seen in GstCompositorPad.
The prototype for clamp_rectangle was wrong. This commit reverts the change
and fixes the prototype.
This reverts commit bca444ea4a84c39e9989681f892f6e4cb2033cf9.
|
| |
|
|
|
|
|
|
|
|
| |
CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative
number since it is an unsigned integer. Removing that check and only checking if
it is bigger than max by using MIN().
CID 1320707
|
|
|
|
| |
See https://bugzilla.gnome.org/show_bug.cgi?id=754157
|
|
|
|
|
|
|
|
|
|
| |
As it's recursive, gst_pad_get_allowed_caps() may also return
empty for anything incompatible downstream. EMPTY is not valid caps
value for gst_caps_fixate(). This lead to assertion and then crash.
Ideally, the negotiate function should be re-factored to have a return
value, and we could make the negotiation fails earlier.
https://bugzilla.gnome.org/show_bug.cgi?id=754122
|
|
|
|
|
|
|
|
|
|
| |
The obscured check in compositor was using the dimensions of the pad to clamp
the h/w of the pad instead of the output resolution, and was doing an incorrect
calculation to do so. Fix that by simplifying the whole calculation by using
corner coordinates. Also add a test for this bug which fell through the cracks,
and just skip all the obscured tests if the pad's alpha is 0.0.
https://bugzilla.gnome.org/show_bug.cgi?id=754107
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tsdemux latency should always be added to the minimum
latency (which is always a valid clock time value). The
"cleanup" in commit a1f709c2 made it so that it would not
be added if upstream reported 0 as minimum latency (as
e.g. udpsrc would). This broke playback of live mpeg-ts
streaming in some cases, leading to playback stutter due
to a too-small configured latency for the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=751508
|
|
|
|
|
|
|
|
|
|
|
| |
In gst_live_adder_chain() function, calls to gst_buffer_copy_region() can lead
to assertion as 'offset + size <= bufsize' is not respected.
Indeed 'offset' and 'size' parameters are calculated through calling gst_live_adder_length_from_duration(),
and thus gst_util_uint64_scale_int_round().
Depending on the nearest integers, rounded values 'offset' and 'size' can then trigger the assertion.
This case mainly occurs when 'skip' value is > 0 in chain function process.
https://bugzilla.gnome.org/show_bug.cgi?id=753759
|
|
|
|
|
|
|
| |
It is faster than doing a query that propagates downstream and
should be enough
Elements: openjpegenc, schroenc, webpenc, pnmenc
|
|
|
|
|
|
|
| |
It is faster than doing a query that propagates downstream and
should be enough
Elements: faac, gsmenc, opusenc, sbcenc, voamrwbenc, adpcmenc, sirenenc
|
|
|
|
|
|
| |
Instead of squashing all upstream tags
https://bugzilla.gnome.org/show_bug.cgi?id=679768
|
|
|
|
|
|
|
| |
A variable can't be two values at once. We want to stop if it's not the
actual ts *AND* not the other ts
CID #1316475
|
|
|
|
|
|
|
|
| |
Avoids useless check of downstream caps when handling an
accept-caps query
Elements: dtsdec, faad, gsmdec, mpg123audiodec, opusdec,
sbcdec, adpcmdec, sirendec
|
|
|
|
|
|
|
|
| |
Avoids useless check of downstream caps when handling an
accept-caps query
Elements: daaladec, libde265dec, openjpegdec, rsvgdec, schrodec,
webpdec, pnmdec, vmncdec, openexrdec
|
|
|
|
|
|
|
| |
Call handle_nal for each NAL in the STAP-A RTP packet. This makes sure
we correctly extract the SPS and PPS.
https://bugzilla.gnome.org/show_bug.cgi?id=730999
|
|
|
|
|
|
|
|
| |
The payloader didn't copy anything so far, the depayloader copied every
possible meta. Let's make it consistent and just copy all metas without
tags or with only the video tag.
https://bugzilla.gnome.org/show_bug.cgi?id=751774
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=753228
|
|
|
|
|
|
|
|
|
|
| |
A race condition in the state change function may cause buffers to be
unreffed while they are still used by the streaming thread in
gst_rtp_h265_pay_send_vps_sps_pps() resulting in a crash. Chain up to the
parent class first in the state change function to make sure streaming
has stopped and only then free those buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=741381
|
|
|
|
|
|
|
|
|
|
|
| |
The SPS struct might be filled out by a call to
gst_h264_parser_parse_subset_sps, which fills out
dynamically allocated data and requires a call
to gst_h264_sps_clear() to free it. Also make sure
to clear out any allocated SPS data when returning
an error.
https://bugzilla.gnome.org/show_bug.cgi?id=753306
|
|
|
|
|
|
|
| |
Do a quick check with the pad template caps as it is enough. Users
should have figured the appropriate full caps on a previous caps query
https://bugzilla.gnome.org/show_bug.cgi?id=753623
|
|
|
|
|
|
|
| |
Do a quick check with the pad template caps as it is enough. Users
should have figured the appropriate full caps on a previous caps query
https://bugzilla.gnome.org/show_bug.cgi?id=753623
|
|
|
|
|
|
|
| |
Fixes a buffer leak that would occur if the pipeline was shutdown while a
SPS/PPS header was being created.
https://bugzilla.gnome.org/show_bug.cgi?id=741271
|
|
|
|
|
|
|
|
| |
The payloader didn't copy anything so far, the depayloader copied every
possible meta. Let's make it consistent and just copy all metas without
tags or with only the video tag.
https://bugzilla.gnome.org/show_bug.cgi?id=751774
|
|
|
|
|
|
|
|
|
| |
When playing mts files with embedded subtitles, the buffer is mapped,
but not unmapped at the end resulting in a memory leak.
Also unref event in handle_dvd_event as it takes ownership of the event.
https://bugzilla.gnome.org/show_bug.cgi?id=753539
|
|
|
|
|
|
|
|
| |
When playing mts files with embedded subtitles, there are few event leaks.
Events are supposed to be transfer full. So if not forwarding the event,
they need to be freed.
https://bugzilla.gnome.org/show_bug.cgi?id=753539
|
|
|
|
|
|
| |
Related to: https://bugzilla.gnome.org/show_bug.cgi?id=753430
https://bugzilla.gnome.org/show_bug.cgi?id=753228
|
|
|
|
|
|
|
|
|
|
| |
codec_data changed
h264parse and gstrtph264depay do the same, let's keep the behaviour
consistent. As we now include the codec_data inside the stream, this causes
less caps renegotiation.
https://bugzilla.gnome.org/show_bug.cgi?id=753228
|