Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Update the current format, bits and pstride.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741187
|
|
Avoid a memory leak
|
|
We now depend on git commit f1cfa5, "orcc: allow setting custom
backup function"
|
|
Use the new orc feature to set a custom backup function.
|
|
Avoid using a constant.
Avoid doing saturated adds, results are not supposed to overflow here.
Rework the C backup function a little in preparation for custom backup
functions in ORC.
See https://bugzilla.gnome.org/show_bug.cgi?id=741015
|
|
Segments are added to the pending events, and pushing a segment
is mandatory before sending EOS.
+ Adds a test.
https://bugzilla.gnome.org/show_bug.cgi?id=740853
|
|
The previous code was setting keytarget to target
to make sure the keyframe found for each pad was
indeed before the target.
Then if target == keytarget, it assumed a keyframe had been
found, which was not the case if target was before the first frame
in the file.
This patch checks that a keyframe was indeed found, and if not
seeks to 0, without bisecting again.
Assuming default gst qa assets in $HOME/gst-validate
seek_before_first_frame.scenario:
description, seek=true, handles-states=true
pause, playback-time=0.0
seek, playback-time=0.0, start=0.0, flags=accurate+flush
seek, playback-time=0.0, start=0.01, flags=accurate+flush
seek, playback-time=0.0, start=0.1, flags=accurate+flush
GST_DEBUG=*theoradec*:2 gst-validate-1.0 playbin \
uri=file://$HOME/gst-validate/gst-qa-assets/medias/ogg/vorbis_theora.0.ogg \
--set-scenario seek_before_first_frame.scenario
https://bugzilla.gnome.org/show_bug.cgi?id=741097
|
|
Otherwise we endup with bogus caps intersection (from the pad template
caps and not from what the actual hardware/device supports)
https://bugzilla.gnome.org/show_bug.cgi?id=738131
|
|
Decide if we need chroma resampling by checking if we have a progressive
or interlaced chroma resampler.
|
|
Only do dithering when one of the quantizers is > 1.
|
|
Using gst_util_uint64_scale_int() causes slight drift
which accumulates over time.
https://bugzilla.gnome.org/show_bug.cgi?id=741045
|
|
|
|
Fix the dither option.
Add a new option to set the quantizer
|
|
Add the disabled orc functions in #if 0 lines for when we can enable
them.
|
|
Use the new dither object to perform dithering.
Add option to select dithering method.
Add option to quantize to a specific value
|
|
|
|
Add a new object that implements various dithering methods.
|
|
Only change the volume if requested
|
|
NetBSD does not have ESTRPIPE.
https://bugzilla.gnome.org/show_bug.cgi?id=740952
|
|
TRUE is 1, but every other non-zero value is also considered true. Comparing
for equality with TRUE would only consider 1 but not the others.
|
|
In some cases, the user might want the stream outputted by encodebin to
be in the exact same format during all the stream. We should let the
user specify when this is the case. This commit add some API in the
GstEncodingProfile to determine whether the format can be renegotiated
after the encoding started or not.
API:
gst_encoding_profile_set_allow_dynamic_output
gst_encoding_profile_get_allow_dynamic_output
https://bugzilla.gnome.org/show_bug.cgi?id=740214
|
|
Seem to work fine.
|
|
They just seem to blow up for some reason that needs investigating.
|
|
|
|
Work with any installed URI handler
Add some more debug output
|
|
and GstVideoInfo is a bug
It will cause the frame to be initialized with inconsistent values that then
later can cause crashes or any other kind of interesting and hard to debug
bugs.
|
|
From 7bb2bce to ef1ffdc
|
|
Now that it's implemented we can use it, which is a minor
optimisation when the image to overlay gets cropped on the
left.
|
|
In cases where we just call orc directly this is somewhat
superfluous, but let's do it anyway for consistency. In
other cases the compiler can hopefully use this to optimise
memory access a little.
|
|
Add support for x offset in almost all unpack methods.
Fix naming of source and dest pixels.
Add const to source pixels.
|
|
unpack_i420 does not need extra code to handle odd widths, the orc code
already handles it fine.
|
|
Unbreak ABI by changing to the old property name again.
https://bugzilla.gnome.org/show_bug.cgi?id=740798
|
|
Before we were setting them to PAUSED and (much) later connecting to
their source pad caps notify signal.
There was a race where that demuxer was pushing a caps and later a buffer
on its source pad when we were not even connected to its source pad caps notify
signal leading to decodebin missing the information and not keeping on
building the pipeline on CAPS event thus the demuxer was posting an ERROR
(not linked) message on the bus. This need to be done for 'simple
demuxers' because those have one ALWAYS source pad, not like usual demuxers
that have several dynamic source pads.
A "simple demuxer" is a demuxer that has one and only one ALWAYS source
pad.
https://bugzilla.gnome.org/show_bug.cgi?id=740693
|
|
There was a race where:
1) we would put the element to PAUSED
2) It would get data sent to it from upstream
3) It would thus send caps
3) caps_notify_cb would continue autoplugging
4) caps would flow downstream, the last pad would get exposed
5) we were still not done sending the sticky events
Taking the stream lock on the new element's sinkpad and only
releasing it when sticky events have all been sent prevents
the caps from reaching the source pad of the element before
we're all set.
https://bugzilla.gnome.org/show_bug.cgi?id=740694
|
|
Used e.g. by UltraViolet.
|
|
In the same vein as 74e9640a.
|
|
When the amount of pixels/lines matches the amount we can combine,
combine the adds and multiplies and do the scale as a separate
operation.
|
|
Combine add and scale of multiple lines/pixels to reduce the amount of
read and writes to temporary memory.
|
|
So we can also show running time or stream time, not just the
buffer time stamps.
|
|
|
|
Adjust the filter parameters so that they use the same number of taps
and method as the old ones.
Add some new filters
|
|
|
|
Improve quality of variable taps on all methods by reusing the lanczos
parameters where possible.
|
|
when using variable taps and when we are limiting the number of taps,
recalculate the lanczos parameters to match the clamped value.
Set the max number of taps to 128
|
|
up the audio chain
Otherwise the following can happen:
1. set mute=true
2. play media1 (Ok)
3. play media without audio (audiochain removed)
4. play media2 (audiochain created, mute=*false*)
https://bugzilla.gnome.org/show_bug.cgi?id=740675
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=740675
|
|
|
|
Don't return NEARLY_CERTAIN just based on 4 bytes.
Also change media type to audio/x-audible.
https://bugzilla.gnome.org/show_bug.cgi?id=715050
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=715050
|