| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
Actual code is checking for a NULL terminator and a ';' terminator,
for backward compat, in a chained way that cause all events being rejected.
The proper condition is to reject the events when terminator isn't
in ['\0', ';'] set.
https://bugzilla.gnome.org/show_bug.cgi?id=758151
|
|
|
|
|
| |
Add a simple test that checks proper serialization/deserialization
of custom events with rtpgstpay and rtpgstdepay.
|
|
|
|
|
|
|
| |
We would queue 5 consective packets before considering a reset and a proper
discont here. Instead of expecting the next output packet to have the current
seqnum (i.e. the fifth), expect it to have the first seqnum. Otherwise we're
going to drop all queued up packets.
|
|
|
|
|
|
|
|
|
|
|
| |
auds.blockalign is set once the first caps arrive. If
gst_avi_mux_stop_file() is called before this happens then auds.blockalign
is zero and gst_avi_mux_audsink_set_fields() cause a crash:
[...]
avipad->parent.hdr.rate = avipad->auds.av_bps / avipad->auds.blockalign;
[...]
https://bugzilla.gnome.org/show_bug.cgi?id=758912
|
|
|
|
|
|
|
| |
Makes sure upstream will unblock and return the thread so that
seeking can continue
https://bugzilla.gnome.org/show_bug.cgi?id=758861
|
|
|
|
|
|
|
|
|
|
|
|
| |
negative and positive numbers
This fixes seeking if the first entries in the samples table are negative. The
binary search would always fail on this as the array would not be sorted if
interpreting the negative numbers as huge positive numbers. This caused us to
always output buffers from the beginning after a seek instead of close to the
seek position.
Also add a case to the comparison function for equality.
|
|
|
|
|
|
| |
inactive_cond is not being cleared resulting in memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=757924
|
| |
|
|
|
|
|
|
|
| |
When the cenc aux info index is out of moof boundaries, keep track of
it and parse the beginning of the mdat box, before the first sample.
https://bugzilla.gnome.org/show_bug.cgi?id=755614
|
|
|
|
|
| |
This is needed to make sure that child processes don't inherit the video
device fd which can cause problems with some drivers.
|
|
|
|
| |
Don't write time as e.g. 11:9:42
|
|
|
|
|
|
| |
Or else flvdemux don't understand it
https://bugzilla.gnome.org/show_bug.cgi?id=754435
|
|
|
|
|
|
| |
Add a basic test using speex data to verify timestamping.
https://bugzilla.gnome.org/show_bug.cgi?id=754435
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For the MS/VfW codec ids, we want to write DTS timestamps instead
of PTS because that's what everyone else seems to do (and it's also
how it is in AVI). So for those input formats we use the buffer DTS
instead of the PTS. However, if there's no DTS set but only the PTS
then just take the PTS instead of dropping the input buffer. This
is useful especially for I-frame only codecs like JPEG and huffyuv,
but should also be fine as fallback in general.
Fixes regression with input JPEG frames that only have PTS set on them.
https://bugzilla.gnome.org/show_bug.cgi?id=756967
|
|
|
|
|
|
|
| |
Negotiation to audio/x-raw,format=S8 was not possible because S8 does
not have a bit order so we ended up doing `if (!entry.fourcc) goto refuse_caps;`
https://bugzilla.gnome.org/show_bug.cgi?id=756387
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=756388
|
|
|
|
|
|
| |
actually releases pads
https://bugzilla.gnome.org/show_bug.cgi?id=753622
|
|
|
|
|
|
|
|
|
|
| |
Instead, delay it until all request pads have been released. This is
because the release_pad() vfunc requires the multiqueue and muxer to
be there in order to release their request pads as well. If those
elements are destroyed earlier, release_pad() does not work, no
pads are released and some resources are leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=753622
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We have to reverse all samples in a buffer before processing them to properly
have continuous data from one buffer to another. As a result we will have a
negative applied rate and a rate of 1.0.
Also make sure that input buffers are correctly clipped to the segment,
otherwise our calculations are going to go wrong.
Also copy over the segment event's sequence number to the output segment while
we're at it.
https://bugzilla.gnome.org/show_bug.cgi?id=757033
|
| |
|
|
|
|
|
|
|
| |
It was always being set to 0, making the resulting stream broken
for the receiver
https://bugzilla.gnome.org/show_bug.cgi?id=756422
|
|
|
|
|
|
| |
It's not available on older OSX and we can as well use memchr() here.
https://bugzilla.gnome.org/show_bug.cgi?id=756154
|
|
|
|
|
|
| |
mapped buffer is not being unmapped during failures
https://bugzilla.gnome.org/show_bug.cgi?id=756231
|
|
|
|
|
|
| |
Free the event after being handled to prevent memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=756799
|
|
|
|
|
|
|
|
|
|
|
| |
If the QtDemuxStream are re-used they may already have caps which used
to be leaked.
Reproduced using the
validate.dash.playback.seek_forward.dash_exMPD_BIP_TC1 validate
scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=756561
|
|
|
|
|
|
| |
Free the stream and its sub items instead of just the stream
https://bugzilla.gnome.org/show_bug.cgi?id=756544
|
|
|
|
|
|
|
| |
When getting date from taglist, the memory should be freed after
using it.
https://bugzilla.gnome.org/show_bug.cgi?id=756171
|
|
|
|
|
|
|
| |
When getting sample from taglist, the memory should be freed after
using it.
https://bugzilla.gnome.org/show_bug.cgi?id=756068
|
|
|
|
|
|
|
|
| |
Buffer is added to the internal cache, and pushed only when accumulated
buffer duration crosses 200 ms. So when the chain ends, the buffer accumulated
is not freed. Freeing the cache when the state changes from PAUSED to READY.
https://bugzilla.gnome.org/show_bug.cgi?id=754212
|
|
|
|
|
|
|
| |
This can be useful for applications that need to track the created fragments
(to log them in a recording database, for example)
https://bugzilla.gnome.org/show_bug.cgi?id=750108
|
|
|
|
|
|
|
| |
In the absence of a video stream, the first stream will be used as
reference.
https://bugzilla.gnome.org/show_bug.cgi?id=753617
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mux_start_time refers to the running_time of the buffer
that goes first in the output file. Normally this time is
0, so this variable is initialized to 0 during the state
change to PAUSED.
However, when dealing with dynamic pipelines and starting
a recording while the pipeline has already run for a while,
the running_time of the first buffer is > 0 and this causes
a problem with detecting the end of the first file(s) when
splitting by duration, because the code will later compare
the threshold_time with (last buffer running_time - mux_start_time)
and will get it wrong until mux_start_time advances enough
to make this difference < threshold_time, creating empty files
in the meantime.
https://bugzilla.gnome.org/show_bug.cgi?id=753624
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=755773
|
|
|
|
|
|
|
|
|
|
|
|
| |
We don't necessarily have full control over the input tags, so
it's possible that the ISRC tag contains a longer string than
expected, in which case we'd write over the end of the static-size
13 byte buffer that is FLAC__StreamMetadata_CueSheet_Track::isrc.
Make sure to only copy the ISRC if it's not too long, and make
sure the buffer we write to is always NUL-terminated by using
g_strlcpy().
CID 1324931.
|
|
|
|
|
|
|
| |
We now allocate memory via GstAllocator and as such can handle arbitrary
alignments, not only <= G_MEM_ALIGN.
https://bugzilla.gnome.org/show_bug.cgi?id=755708
|
|
|
|
|
|
|
|
|
| |
On reading LOAS config, flag v=1 and vA=1 combination can occur, leading to warning
"Spec says "TBD"...". Returning TRUE on this case while parameters 'sample_rate' and
'channels' are pointing to uninitialized values can end on setting random values as
rate and channels on src caps.
https://bugzilla.gnome.org/show_bug.cgi?id=755611
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Otherwise we end up considering the values did not change and we wrongly
work with the old video format (which will lead to wrong
behaviour/segfaults).
https://bugzilla.gnome.org/show_bug.cgi?id=755621
|
|
|
|
|
|
|
|
|
|
|
| |
eceb2ccc739092d964d78945e19c2ecedbd214e2 broke segment seeks by always
accumulating segments manually when activating a segment. This is only
needed when handling edit lists, not when activating a segment because of a
seek. Do the accumulation when switching edit list segments instead.
This fixes segment seeks again, while keeping edit lists playback working.
https://bugzilla.gnome.org/show_bug.cgi?id=755471
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=755463
|
| |
|
|
|
|
|
|
|
| |
The same memory leaks were fixed in identical fashion for
vorbisdepay in 06efeff5d979576a252e5dae57f46d6445b1df12 in 2009.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755277
|
|
|
|
|
|
|
|
|
| |
* use g_list_free_full(), don't iterate elements maually when freeing
* call gst_rtp_*_pay_clear_packet(), don't duplicate its code
* use gst_buffer_unref() to clarify that it is buffers being released,
instead of refering directly to gst_mini_object_unref()
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755277
|