| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Peer query isn't being freed in case of GST_QUERY_SEEKING.
https://bugzilla.gnome.org/show_bug.cgi?id=763974
|
|
|
|
|
|
|
|
|
| |
The parser handles the downstream force-key-unit event incorrectly,
it tries to parse it as an upstream force-key-unit event, does not
check the return value, and then uses uninitialized memory in
"all_headers" boolean variable.
https://bugzilla.gnome.org/show_bug.cgi?id=763793
|
|
|
|
| |
sRGC -> sRGB
|
| |
|
|
|
|
|
|
|
|
|
|
| |
When the sub-class claims a program for later freeing, make
sure it's not left in the hash table, or it can cause crashes on shutdown.
Make sure tsdemux frees any program it has kept around at shutdown
if it wasn't freed already.
https://bugzilla.gnome.org/show_bug.cgi?id=763503
|
|
|
|
|
|
|
|
|
| |
bytestream
Create temporary ParseFrame and copy the nal size buffer region
for each nal unit like we did for h264.
https://bugzilla.gnome.org/show_bug.cgi?id=763494
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a regression from since mpegvideoparser was switched to
use the codecparsing library.
The problem is that the high bit of the profile_and_level is used
to specify non-hierarchical profiles and levels. Unfortunately we
were discarding that information.
Expose that escape bit, and use it in the element
https://bugzilla.gnome.org/show_bug.cgi?id=763220
|
|
|
|
|
|
|
| |
When dealing with accurate seeks, we must send out a segment which
is exactly what is requested.
https://bugzilla.gnome.org/show_bug.cgi?id=763262
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In some cases, the PTS might be smaller than the first observed PCR
value which causes element to apply wraparound leading to bogus
timestamp. To solve this, we only apply it if the PTS-PCR difference is
greater that 1 second to be sure that it's a real wraparound.
Moreover, using unsigned 32 bits values to handle wrapover could end up
with bogus value, so it use pts value to handle it.
Also, convert pcr time to gst time before comparing it to pts.
Since refpcr is expressed in PCR time base while pts is expressed in GStreamer
time.
https://bugzilla.gnome.org/show_bug.cgi?id=743259
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enabling passthorugh mode is causing multiple issue:
For nal aligned multiresoluton streams, passthrough mode
make h264parse unable to advertise the new resoultions.
Also causing issues while parsing MVC streams which have two
separate layers (base-view and non-base-view).
This fix is only a temporary workaround.
For MVC, proper fixes needed in many places:
(handle prefix nal unit, handle non-base-view slice nal extension,
fix the picture_start detection for multi-layer-mvc streams etc)
https://bugzilla.gnome.org/show_bug.cgi?id=758656
|
|
|
|
|
|
|
|
| |
returned by the SDP helpers
The SDP helpers can't know if this is going to be RTP, SRTP, or ....
https://bugzilla.gnome.org/show_bug.cgi?id=762860
|
|
|
|
|
|
| |
They're supposed to be stream_%u and not recv_rtp_src_%u_%u_%u.
https://bugzilla.gnome.org/show_bug.cgi?id=762860
|
|
|
|
|
|
|
|
|
|
| |
has_current_caps()
Remove calls to gst_pad_has_current_caps() which then go on to call
gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
use gst_pad_get_current_caps() and check for NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=759539
|
|
|
|
|
|
|
|
|
|
| |
Set fallback channel layout on files with more than two
channels. Not clear where to retrieve the real layout from
or what the default layout is for AIFF files, the spec
only seems to specify some layout for up to 6 channels
and the file in question doesn't have a CHAN chunk.
https://bugzilla.gnome.org/show_bug.cgi?id=676425
|
|
|
|
|
|
| |
This hasn't been touched for generations, doesn't work,
and is just causing confusion. We also don't want to
maintain these files manually.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a couple of issues regarding the output of (request)
per-program pads output:
We would never push out PAT sections (ok, that was one reallly stupid
mistake. I guess nobody ever uses this feature ...).
In the case where the PMT section of a program was bigger than one
packet, we would only end up pushing the last packet of that PMT. Which
obviously results in the resulting stream never containing the proper
(complete) PMT.
The problem was that the program is only started (in the base class)
after the PMT section is completely parsed. When dealing with single-program
pads, tsparse only wants to push the PMT corresponding to the requested
program (and not the other ones). tsparse did that check by looking
at the streams of the program...
... but that program doesn't exist for the first packets of the initial
PMT.
The fix is to use the base class program information (if it parsed the
PAT it already has some information, like the PMT PID for a given program)
if the program hasn't started yet.
|
|
|
|
|
|
|
| |
In addition to the fact that it's a sane thing to do for multi-source
pad elements, it also avoids the situation where just using a request
pad (and not the main static pad) would result in the processing
stopping.
|
|
|
|
|
|
|
| |
If subclass is not able to handle seek event, then there is no need to
stop streaming and send flush events. We should simply return FALSE
https://bugzilla.gnome.org/show_bug.cgi?id=758516
|
|
|
|
|
|
|
|
|
| |
tsdemux is not able to handle negative playback rates.
But in mpegtsbase, the same check is not being done.
added a check to not handle negative rate while seeking unless
the same is handled upstream.
https://bugzilla.gnome.org/show_bug.cgi?id=758516
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=761606
|
|
|
|
|
|
|
| |
Resurrected from the Farstream repository and given an
overhaul to fix races, deadlocks etc.
https://bugzilla.gnome.org/show_bug.cgi?id=756252
|
|
|
|
|
|
| |
Use gst_rtp_drop_meta() and the same function prototype for
gst_rtp_copy_meta() to keep consistency with the RTP elements in
gst-plugins-good
|
|
|
|
|
| |
Only consider the access unit complete when the next-occurring VCL NAL unit
has the first bit after its NAL unit header equal to 1.
|
|
|
|
|
|
|
| |
Since commit b77f8e172a3f0be6be5cb4a72e654253404e694f the new value
assigned to mview_mode hasn't been used. That commit changed the following
"if" check to an "else if", which means the original value of mview_mode
is used.
|
|
|
|
|
|
|
|
|
|
| |
h265 versions of the following commits:
f352691a04896d0de3381fe8ee85ada948bd6337
try the current caps before querying downstream
72bc7d7f736a10117fedb8e1d4013a4946cfefbc
increase caps equality check for no codec_data
https://bugzilla.gnome.org/show_bug.cgi?id=761014
|
|
|
|
|
|
|
|
| |
When converting from avc to byte-stream, there will not be any codec_data
in the src caps. Remove it before the equality check to avoid sending caps
events downstream on every SPS/PPS change.
https://bugzilla.gnome.org/show_bug.cgi?id=761014
|
|
|
|
|
|
|
|
| |
If we have a stream that contains an unchanging SPS/PPS for every video frame,
we don't need to to constantly query downstream for it's supported caps if the
current caps are compatible with the negotiated caps.
https://bugzilla.gnome.org/show_bug.cgi?id=761014
|
| |
|
| |
|
|
|
|
| |
Instead of fully random UUIDs, these should follow a scheme.
|
| |
|
|
|
|
| |
Even if it has 0 entries.
|
| |
|
|
|
|
|
|
| |
the distinguished value
It's invalid to not write them at all.
|
|
|
|
| |
others
|
|
|
|
| |
We have no metadata in it.
|
|
|
|
| |
Some tools complain if essence and index have the same SID.
|
| |
|
|
|
|
|
|
|
| |
Otherwise, behavior will be undefined when no strides/offsets are set
and it will likely go wrong.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
|
|
|
|
|
|
|
|
|
| |
When the framesize is not specified, we try and calculate a size from
the strides and offset information. This was done with the sum of
offsets + the size of the last frame. That is just wrong method. We also
need to account for video meta that may be flipping two planes. An
example is if you convert I420 to YV12 by flipping the two last offsets.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
If yes, we add them to each output buffers and we avoid frame copy.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
|
|
|
|
|
|
|
|
| |
query
And so send an allocation query. This could be used to check whether
downstream element supports some metas or not.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
|
|
|
|
|
|
| |
Otherwise position in stream could be wrong if subclass 'pre_push_frame'
method changes the buffer size.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
|
|
|
|
|
|
|
|
|
| |
To make parser work with image having non-standard strides, plane
offsets or with padding between images.
For now, since element doesn't check for videometa, we can't directly
push buffers when these properties are set so it convert the frame
in the pre_push_buffer method to remove any custom padding.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
|
|
|
|
|
| |
to allow subclass to change other fields of the buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|
|
|
|
|
|
| |
To avoid initializing and filling video info each time we need it.
https://bugzilla.gnome.org/show_bug.cgi?id=760270
|