| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Avoids races setting the window handle from the main thread.
https://bugzilla.gnome.org/show_bug.cgi?id=745633
|
| |
|
|
|
|
|
|
| |
And return 0 isntead of FALSE.
https://bugzilla.gnome.org/show_bug.cgi?id=745455
|
|
|
|
|
|
|
|
| |
Asks the subclass for a potential time offset to apply to each
separate stream, in dash streams can have "presentation time offsets",
which can be different for each stream.
https://bugzilla.gnome.org/show_bug.cgi?id=745455
|
|
|
|
|
|
|
|
|
|
| |
Chaining a downstream pool would lead to two owner of the same
pool. In dynamic pipeline, if one owner is removed from the pipeline
the pool will be stopped, and the rest of the pipeline will fail
since the pool will now be flushing. Also fix proposed pool caching,
filter->pool was never set, never unrefed.
https://bugzilla.gnome.org/show_bug.cgi?id=745705
|
| |
|
|
|
|
|
|
|
| |
of on every caller
... and let glmixer actually transform the caps it is supposed to transform
instead of inventing new caps.
|
|
|
|
|
|
| |
This reverts commit 78215be0dfbb4e8ed4f249e161a94c644328d28d.
because it broke glvideomixer with custom caps features.
|
| |
|
|
|
|
|
|
|
| |
In case the original caps were missing some optional fields like
interlace-mode. We assume default values for those everywhere,
but they can still cause negotiation to fail if a downstream element
expects the field to be there and at a specific value.
|
|
|
|
|
| |
The debug category won't have been created/activated if it's not a
valid display
|
|
|
|
|
|
| |
We need to update the uploader format if that caps have changed.
https://bugzilla.gnome.org/show_bug.cgi?id=745549
|
|
|
|
| |
Introduced by a12ca13750a15300ab3c718ebde2984dc3d587b3
|
|
|
|
|
|
|
|
| |
Otherwise the pipeline stalls when running
more than one glimagesink with gst-launch.
Also only register the custom nsapp loop
when setting up the nsapp from gstgl.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
We also need to recalculate the offset, since otherwise the frame
mapping will be forward two lines in the U and V planes (I420) due
to gst_video_info_align() round up the Y plane to a even number of
lines.
https://bugzilla.gnome.org/show_bug.cgi?id=745054
|
|
|
|
|
|
| |
Make sure we support offset and video alignment when downloading too.
This is currently not used (plane_start is always 0), but it makes
the code correct if we want to use that later.
|
|
|
|
|
|
|
|
| |
Provide the right size to GL when uploading. Using maxsize is wrong
since we offset the data point with the memory offset and video
alignement offset.
https://bugzilla.gnome.org/show_bug.cgi?id=744246
|
|
|
|
|
|
|
| |
Provide the right size to GL when downloading. This fixes downloading
from GLMemory that where created for libav.
https://bugzilla.gnome.org/show_bug.cgi?id=744246
|
|
|
|
|
|
|
|
| |
When the memory is partial copy, the texture size and videoinfo no
longer make sense. As we cannot guess what the application wants, we
safely copy into a sysmem memory.
https://bugzilla.gnome.org/show_bug.cgi?id=744246
|
|
|
|
|
|
|
|
| |
This implements support for GstAllocationParams and memory alignments.
The parameters where simply ignored which could lead to crash on
certain platform when used with libav and no luck.
https://bugzilla.gnome.org/show_bug.cgi?id=744246
|
|
|
|
|
|
| |
Fixes EGLImage usage on raspberry pi
https://bugzilla.gnome.org/show_bug.cgi?id=743914
|
|
|
|
|
| |
The same functionality is duplicated in the default latency querying
now.
|
|
|
|
|
|
|
|
|
|
| |
When trying to render buffers with meta:GLTextureUpload the glimagesink crashes
with a segmentation fault.
This patch workarounds this crash setting to NULL the method implementation
after free.
https://bugzilla.gnome.org/show_bug.cgi?id=745206
|
|
|
|
|
|
|
|
|
|
| |
When setting a new window handle, we need to ensure all implementations
will detect the change.
For that we deactivate the context before setting the window handle, then
reactivate the context
https://bugzilla.gnome.org/show_bug.cgi?id=745090
|
|
|
|
|
|
|
| |
When (re)activating the context, the backing window handle might have changed.
If that happened, destroy the previous surface and create a new one
https://bugzilla.gnome.org/show_bug.cgi?id=745090
|
| |
|
|
|
|
|
|
|
|
| |
Causes the following warning on clang:
gst-dvb-section.c:567:36: error: format specifies type 'unsigned long' but the argument has type 'int' [-Werror,-Wformat]
descriptors_loop_length, end - 4 - data);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
|
|
|
|
|
| |
There was no real reason why the flag was set. We should be able
to handle it. Fixes last-sample handling on gl sinks
|
| |
|
|
|
|
|
| |
not until we can provide equivalent functionality for other window
implementations.
|
| |
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=744977
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fix a very slow rendering rate regression that only
happens when using gst-launch, i.e. in the case where
the main thread does not run any NSApp loop.
Git bisect reported it has been introduced by the commit
e10d2417e2fe7aa4733c076984339b0d61caa169:
"move to CGL and CAOpenGLLayer for rendering".
Then the commit 7d463576271e5a4cc1070780ba1a69c971e8be1d:
"gstglwindow_cocoa: fix slow render rate" attempted to fix
the slow rendering rate problem when using gst-launch.
At least for me it does not work. I tried several
combinations, for example to flush CA transactions in the
custom app loop, as mentioned in the doc, but the only solution
that fixes the slow rendering is by reducing the loop latency.
From what I tested, no need to put less than 60ms, even if the
framerate has an interval much lower (16.6ms for 60 fps).
|
| |
|
|
|
|
| |
until we can track where the data is/or is going to be.
|
|
|
|
|
|
|
|
|
|
| |
Anytime else, we have no idea how to match up map and unmaps.
We also don't know exactly how the calling code is using us.
Also fixes the case where we're trying to transfer while someone else
is accessing our data pointer or texture resulting in mismatched video
frames.
https://bugzilla.gnome.org/show_bug.cgi?id=744839
|
|
|
|
|
|
|
|
|
| |
One has to use the src_lock anyway to protect the min/max/live so they
can be notified atomically to the src thread to wake it up on changes,
such as property changes. So no point in having a second lock.
Also, the object lock was being held across a call to
GST_ELEMENT_WARNING, guaranteeing a deadlock.
|
| |
|
|
|
|
|
|
|
| |
The downstream segment could have been flushed already, so
need to re-send the segment event before re-sending the tags.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
|
|
|
|
|
|
|
|
|
| |
While gst_aggregator_iterate_sinkpads() makes sure that every pad is only
visited once, even when the iterator has to resync, this is not all we have
to do for querying the latency. When the iterator resyncs we actually have
to query all pads for the latency again and forget our previous results. It
might have happened that a pad was removed, which influenced the result of
the latency query.
|
|
|
|
|
|
| |
It was between another function and its helper function before, which was
confusing when reading the code as it had nothing to do with the other
functions.
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=742684
|
|
|
|
|
|
|
| |
This will match the name of the lock itself. It is also not a stream
lock as it not recursive and not held while pushing.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
|
|
|
|
|
|
|
| |
This lock is not what is commonly known as a "stream lock" in GStremer,
it's not recursive and it's taken from the non-serialized FLUSH_START event.
https://bugzilla.gnome.org/show_bug.cgi?id=742684
|
|
|
|
|
|
| |
Changes no code
https://bugzilla.gnome.org/show_bug.cgi?id=742684
|
|
|
|
|
|
| |
Move the property from subclasses to adaptivedemux, it allows
selecing the percentage of the measured bitrate to be used when
selecting stream bitrates
|