Sebastian Dröge [Mon, 4 May 2015 09:23:16 +0000 (11:23 +0200)]
opusdepay: Set multistream=FALSE on the Opus caps
The RTP Opus mapping only allows mono/stereo, and not multistream Opus
streams.
Jose Antonio Santos Cadenas [Mon, 4 May 2015 08:35:55 +0000 (10:35 +0200)]
opusheader: Do not include rate in caps if it is 0
As expressed in gst_opus_header_create_caps, value 0 means unset.
Setting rate value to 0 make negotiation with decoder fail.
https://bugzilla.gnome.org/show_bug.cgi?id=748875
Matthieu Bouron [Mon, 4 May 2015 06:06:35 +0000 (08:06 +0200)]
androidmedia: Fix slice-height for Tegra 3 devices
https://bugzilla.gnome.org/show_bug.cgi?id=748867
Edward Hervey [Fri, 13 Mar 2015 15:07:15 +0000 (16:07 +0100)]
androidmedia: Add support for COLOR_FormatYUV420Flexible
https://bugzilla.gnome.org/show_bug.cgi?id=747126
Edward Hervey [Wed, 25 Mar 2015 16:43:59 +0000 (17:43 +0100)]
androidmedia: Add suport for Intel color formats
https://bugzilla.gnome.org/show_bug.cgi?id=747126
Sreerenj Balachandran [Sat, 2 May 2015 15:06:18 +0000 (18:06 +0300)]
h264parse: Fix profile and level setting in caps
Don't use the apis in codec-utils to extract the profile and level
syntax elements since it is wrong if there are emulation prevention
bytes existing in the byte-stream data.
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Jan Schmidt [Sun, 3 May 2015 13:08:15 +0000 (23:08 +1000)]
glcolorconvert: Improve passthrough check when no conversion is needed.
Make the passthrough check contingent on only the fields we
can modify being unchanged, and pre-compute it when caps
change instead of checking on each buffer. Makes the passthrough
more lenient if consumers are lax about making input and output
caps complete.
Thiago Santos [Fri, 1 May 2015 22:39:58 +0000 (19:39 -0300)]
wrappercamerabinsrc: handle when source creation fail
Remember to set the source to NULL state as adding it to the pipeline
will set it to the READY state.
Thiago Santos [Fri, 1 May 2015 22:31:45 +0000 (19:31 -0300)]
wrappercamerabinsrc: fix element linking order
Video source should be linked to videocrop and not to
videoconvert as it is done in the main linking path
Nirbheek Chauhan [Fri, 13 Mar 2015 00:40:52 +0000 (06:10 +0530)]
tests: Add a check for the new compositor pad-is-obscured optimization
We verify that all the buffers on an obscured sinkpad are skipped by overriding
the map() function in the GstVideoMeta of the buffers to set a variable when
called. We also test that the buffers do get mapped when they're not obscured.
Blame^WCredit for the GstVideoMeta map() idea goes to Tim.
https://bugzilla.gnome.org/show_bug.cgi?id=746147
Nirbheek Chauhan [Sat, 18 Apr 2015 09:40:00 +0000 (15:10 +0530)]
compositor: Only map the frame from a buffer if it will be used
It's a waste of resources to map it if it won't be converted
or used at all. Since we moved the frame mapping down, we need
to use the GST_VIDEO_INFO accessor macros now in the code above
that instead of the GST_VIDEO_FRAME accessor macros.
https://bugzilla.gnome.org/show_bug.cgi?id=746147
Nirbheek Chauhan [Sat, 18 Apr 2015 09:39:02 +0000 (15:09 +0530)]
compositor: use accessor macros for consistency
https://bugzilla.gnome.org/show_bug.cgi?id=746147
Nirbheek Chauhan [Sat, 18 Apr 2015 09:39:02 +0000 (15:09 +0530)]
compositor: Skip pads that are completely obscured by a higher zorder pad
For each frame, compare the frame boundaries, check if the format contains an
alpha channel, check opacity, and skip the frame if it's going to be completely
overwritten by a higher zorder frame. The check is O(n^2), but that doesn't
matter here because the number of sinkpads is small.
More can be done to avoid needless drawing, but this covers the majority of
cases. See TODOs. Ideally, a reverse painter's algorithm should be used for
optimal drawing, but memcpy during compositing is small compared to the CPU used
for frame conversion on each pad.
https://bugzilla.gnome.org/show_bug.cgi?id=746147
Sreerenj Balachandran [Thu, 30 Apr 2015 16:08:25 +0000 (19:08 +0300)]
h265parse: Fix source caps to report cropped dimensions
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Fri, 10 Apr 2015 12:34:40 +0000 (15:34 +0300)]
h265parse: Fix the memory freeing of stored VPS nals
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Thu, 30 Apr 2015 15:36:35 +0000 (18:36 +0300)]
h265parse: Fix profile, tier and level setting in caps
Don't use the apis in codec-utils to extract the profile,tier and level
syntax elements since it is wrong if there are emulation prevention
bytes existing in the byte-stream data.
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Fri, 17 Apr 2015 12:15:33 +0000 (15:15 +0300)]
codecparser: h265: Fix nal unit size checking
The EOS and EOB nals have the size 2 which is the size of
nal unit header itself. The gst_h265_parser_identify_nalu()
is not required to scan start code again in this case.
In other cases, for a valid nalunit the minimum required size
is 3 bytes (2 byte header and at least 1 byte RBSP payload)
Sreerenj Balachandran [Fri, 17 Apr 2015 12:03:34 +0000 (15:03 +0300)]
codecparser: h265: Calculate crop rectangle dimensions
Sreerenj Balachandran [Fri, 17 Apr 2015 12:01:57 +0000 (15:01 +0300)]
codecparser: h265: Fix parsing multiple SEI messages in a single SEI Nal
An SEI Nal can have more than one SEI message.
Change in API: the gst_h265_parser_parse_sei()
Sebastian Dröge [Thu, 30 Apr 2015 19:32:29 +0000 (21:32 +0200)]
srtpdec: Make sure to send caps events downstream before any segment events
Upstream might not give us a caps event (dtlssrtpdec) because it might be an
RTP/RTCP mixed stream, but we split the two streams anyway and should report
proper caps downstream if possible.
Fixes "sticky event misordering" warnings with dtlssrtpdec.
Luis de Bethencourt [Thu, 30 Apr 2015 09:50:19 +0000 (10:50 +0100)]
rtjpeg: remove unused quality property
Matthew Waters [Thu, 30 Apr 2015 01:15:40 +0000 (11:15 +1000)]
gl: readd glupload/download onto element pads
Allows insertion of gl elements into non-gl pipelines without converter
(upload/download) elements.
https://bugzilla.gnome.org/show_bug.cgi?id=743974
Matthew Waters [Wed, 29 Apr 2015 12:55:00 +0000 (22:55 +1000)]
Revert "glvideomixer: implement with glmixerbin"
This reverts commit
0fb56738a14391f248aa0be8756adeaf978baa0c.
Matthew Waters [Wed, 29 Apr 2015 12:38:00 +0000 (22:38 +1000)]
Revert "glimagesink: implement as a bin"
This reverts commit
8a0017e21d5f9a8507f0593c6b24f723aa415258.
Matthew Waters [Wed, 29 Apr 2015 12:32:33 +0000 (22:32 +1000)]
Revert "glimagesink: forward ALL the properties on the bin"
This reverts commit
4be45e5f30dc6121f2769323603447f591ca4a0a.
Matthew Waters [Wed, 29 Apr 2015 12:32:20 +0000 (22:32 +1000)]
Revert "glimagesink: add pixel-aspect-ratio property on the bin"
This reverts commit
2ba6bb9b9325b63f58a9ff0b2c82fa28759dcabc.
Andoni Morales Alastruey [Wed, 29 Apr 2015 07:57:52 +0000 (09:57 +0200)]
ksvideosrc: don't timestamp buffers for muxed streams
Andoni Morales Alastruey [Wed, 29 Apr 2015 19:37:56 +0000 (21:37 +0200)]
ksvideosrc: fix header size for muxed streams
Sreerenj Balachandran [Wed, 29 Apr 2015 16:39:14 +0000 (19:39 +0300)]
codecparser: h265: Fix the number of tile rows/columns parsing
The possible minimum value for num_tile_columns_minus1 and num_tile_rows_minus1
is zero (7.4.3.3).
https://bugzilla.gnome.org/show_bug.cgi?id=748641
Luis de Bethencourt [Wed, 29 Apr 2015 16:20:58 +0000 (17:20 +0100)]
mixmatrix: remove unused property enum items
These two properties have been there since the origin of the element but they
aren't used. Removing them.
Edward Hervey [Wed, 29 Apr 2015 13:41:07 +0000 (15:41 +0200)]
adaptivedemux: Fix comparision logic
We can't answer the SEEKING query if we do *not* have the manifest
Edward Hervey [Wed, 29 Apr 2015 08:56:24 +0000 (10:56 +0200)]
aiff: Re-add noinst_HEADERS instruction
Was removed in the previous android cleanup commit
Руслан Ижбулатов [Tue, 28 Apr 2015 21:43:56 +0000 (21:43 +0000)]
GstDeviceProvider implementation for WIN Kernel Streaming plugin
gst_ks_device_provider_probe() is a no-braier, just runs ks_enumerate_devices()
and reports the results.
Monitoring is a bit more tricky. We have to create a dummy message-processing
window and register device change notifications for it.
As kernel streaming can (and should) be used for audio capture and audio
playback, this change also has certain placeholders for such.
https://bugzilla.gnome.org/show_bug.cgi?id=747757
Jan Schmidt [Tue, 28 Apr 2015 16:30:05 +0000 (02:30 +1000)]
glimagesink: Cache caps for passing to the client draw call
Don't convert the GstVideoInfo to caps on every draw call,
just cache the caps and pass them into the GstSample.
Jan Schmidt [Tue, 28 Apr 2015 16:20:09 +0000 (02:20 +1000)]
glupload: Make upload method static caps non-const.
Retrieving a GstStaticCaps does a one time internal
initialisation and caches it - they can't be stored as
const structures.
Tim-Philipp Müller [Tue, 28 Apr 2015 16:24:04 +0000 (17:24 +0100)]
opus: fix includes and compilation against opus in non-standard prefix
https://bugzilla.gnome.org/show_bug.cgi?id=748594
Mersad Jelacic [Tue, 28 Apr 2015 14:58:21 +0000 (16:58 +0200)]
opus: don't use deprecated gst_buffer_new_and_alloc
Use the helper function available in the base class instead.
https://bugzilla.gnome.org/show_bug.cgi?id=748585
Tim-Philipp Müller [Tue, 28 Apr 2015 15:06:47 +0000 (16:06 +0100)]
de265dec: use g_get_num_processors() if available
And provide home-made fallback for older GLib versions,
so that we can later find these and remove them when
we bump the GLib requirement (which is certainly going
to happen before 2.0).
https://bugzilla.gnome.org/show_bug.cgi?id=748495
Tim-Philipp Müller [Tue, 28 Apr 2015 15:02:27 +0000 (16:02 +0100)]
gst: remove some unnecessary glib version checks
We require 2.32, no need to check for anything older
than that.
Guillaume Desmottes [Tue, 28 Apr 2015 09:28:39 +0000 (11:28 +0200)]
mxf: fix descriptor leak
Free the existing descriptor array, if any, before replacing it.
Fix leaks with the
validate.file.playback.scrub_forward_seeking.test-mpeg2-mp3_mxf scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=748580
Guillaume Desmottes [Tue, 28 Apr 2015 08:13:35 +0000 (10:13 +0200)]
tsdemux: fix taglist leak
If the stream which is about to be removed still has a ref on a tag list we
should drop it.
Fix a leak which was occasionally happening with the
validate.file.playback.change_state_intensive.tron_en_ge_aac_h264_ts scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=748576
Jimmy Ohn [Mon, 27 Apr 2015 13:44:28 +0000 (22:44 +0900)]
mpegtspacketizer: fix find_subtable() return value
find_subtable() returns a pointer, so return NULL and
not FALSE when nothing is found.
https://bugzilla.gnome.org/show_bug.cgi?id=748527
Edward Hervey [Tue, 28 Apr 2015 12:52:36 +0000 (14:52 +0200)]
win32: update defs
Matthew Waters [Tue, 28 Apr 2015 10:46:52 +0000 (20:46 +1000)]
glmemory: remove uneeded unref
The call to _gl_mem_alloc_data will unref and NULLify 'dest' for us.
We just need to return.
https://bugzilla.gnome.org/show_bug.cgi?id=744246
Matthieu Bouron [Tue, 28 Apr 2015 07:37:59 +0000 (09:37 +0200)]
glimagesink: Use gst_pad_get_pad_template_caps in ::get_caps()
Matthew Waters [Tue, 28 Apr 2015 10:11:07 +0000 (20:11 +1000)]
glupload: provide the sink template caps that could be used
https://bugzilla.gnome.org/show_bug.cgi?id=746399
Thiago Santos [Mon, 27 Apr 2015 22:28:57 +0000 (19:28 -0300)]
examples: gst-camera: add zoom property to UI
Add a slider to modify the zoom in camerabin
Thiago Santos [Mon, 27 Apr 2015 21:33:37 +0000 (18:33 -0300)]
examples: gst-camera: remove widgets deprecated in GTK3.0
VBox and HBox are now simply Box
Thiago Santos [Mon, 27 Apr 2015 18:41:04 +0000 (15:41 -0300)]
examples: gst-camera: update to GTK3
When opening the .ui file it complains about being for GTK 2 and
automatically updates it to GTK3. Commit this version and update
the makefile
Thiago Santos [Mon, 27 Apr 2015 16:41:44 +0000 (13:41 -0300)]
wrappercamerabinsrc: remove unused code
The structure is created and never used anymore. Remove it.
Thiago Santos [Mon, 27 Apr 2015 16:24:54 +0000 (13:24 -0300)]
wrappercamerabinsrc: use digitalzoom element
Replace videocrop ! videoscale ! capsfilter with the digitalzoom
bin that has the same pipeline internally and already updates
the capsfilter automatically when caps change, removing this code
from wrappercamerabinsrc and making it cleaner.
Thiago Santos [Tue, 28 Apr 2015 00:14:02 +0000 (21:14 -0300)]
digitalzoom: change videocrop parameters before passing caps event
Avoids one extra uneeded renegotiation if the elements are already
configured to their final property values when the caps event
goes through.
Also avoids hitting bug https://bugzilla.gnome.org/show_bug.cgi?id=748344
Thiago Santos [Wed, 22 Apr 2015 16:06:30 +0000 (13:06 -0300)]
digitalzoom: also skip internal pipeline in upstream caps query
To avoid going through our capsfilter which would limit the choices.
Thiago Santos [Wed, 22 Apr 2015 16:05:42 +0000 (13:05 -0300)]
digitalzoom: prevent assertion when caps is any
Thiago Santos [Wed, 22 Apr 2015 02:10:05 +0000 (23:10 -0300)]
camerabin: digitalzoom: create a bin element for digital zooming
It contains videocrop ! videoscale ! capsfilter and implements digital
zooming.
At this moment, it is a private element of the camerabin plugin.
This will remove some code used in wrappercamerabinsrc to make
code clearer and digitalzoom can potentially be used by other
applications in the future, it has nothing camerabin specific.
Xavier Claessens [Mon, 27 Apr 2015 14:11:41 +0000 (10:11 -0400)]
egl: Use maximum bits per color instead of minimum
https://bugzilla.gnome.org/show_bug.cgi?id=748425
Руслан Ижбулатов [Sun, 26 Apr 2015 20:55:03 +0000 (20:55 +0000)]
libde265: W32 thread count support
This code is imported from GLib g_get_num_processors(). This function
was added in 2.36 but we depend on 2.32.
https://bugzilla.gnome.org/show_bug.cgi?id=748495
Руслан Ижбулатов [Sun, 26 Apr 2015 21:00:06 +0000 (21:00 +0000)]
libde265: Fix format string for gsize
https://bugzilla.gnome.org/show_bug.cgi?id=748496
Руслан Ижбулатов [Sun, 26 Apr 2015 21:03:45 +0000 (21:03 +0000)]
spandsp: Don't use the private field 'missing_samples'
https://bugzilla.gnome.org/show_bug.cgi?id=748497
Luis de Bethencourt [Mon, 27 Apr 2015 13:56:06 +0000 (14:56 +0100)]
mpegdemux: remove unused property enum item
The property enum item has been there since the origin of the element but it
has never been used. Removing it.
Matthieu Bouron [Mon, 27 Apr 2015 12:49:59 +0000 (14:49 +0200)]
glfiltercube: Don't initialize multiple shaders on renegotiation
Luis de Bethencourt [Mon, 27 Apr 2015 09:55:13 +0000 (10:55 +0100)]
Rename property enums from ARG_ to PROP_
Property enum items should be named PROP_ for consistency and readability.
Matthieu Bouron [Mon, 27 Apr 2015 08:24:00 +0000 (10:24 +0200)]
glimagesink: Remove unused stop function
Matthew Waters [Mon, 27 Apr 2015 06:04:50 +0000 (16:04 +1000)]
glimagesink: unref the pool in the correct place
Otherwise we could hold a pool to a context that is never going to be used.
https://bugzilla.gnome.org/show_bug.cgi?id=748405
Matthieu Bouron [Mon, 27 Apr 2015 08:01:53 +0000 (10:01 +0200)]
gltransformation: Unref shader in ::stop()
Matthew Waters [Mon, 27 Apr 2015 05:20:56 +0000 (15:20 +1000)]
gl: unref display/other-context in the correct place
Otherwise state changes from PLAYING->READY->PAUSED will cause there to
to be no display configured on the element.
https://bugzilla.gnome.org/show_bug.cgi?id=748405
Sreerenj Balachandran [Fri, 10 Apr 2015 11:08:43 +0000 (14:08 +0300)]
codecparsers: h265: add helpers to convert quantization matrices
Add utility functions to convert quantization matrices from zig-zag scan
order into raster scan order and vice-versa
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Fri, 10 Apr 2015 11:07:56 +0000 (14:07 +0300)]
codecparser: h265: skip byte alignment bits while parsing slice header
Skip the byte alignment bits as per the logic of byte_alignment()
provided in hevc specification. This will fix the calculation of
slice header size.
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Fri, 10 Apr 2015 11:07:35 +0000 (14:07 +0300)]
codecparser: h265: Fix the NumDeltaPocs calculation
Always use the equation provided in spec (7-57) for finding
the NumDeltaPocs
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Fri, 10 Apr 2015 11:04:17 +0000 (14:04 +0300)]
codecparser: h265: Fix the NumPocTotalCurr calculation
The NumPocToalCurr should be calculated for all B and P slices.
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sreerenj Balachandran [Fri, 10 Apr 2015 10:59:50 +0000 (13:59 +0300)]
codecparser: h265: Fix nal size calculation for EOS and EOB
https://bugzilla.gnome.org/show_bug.cgi?id=747613
Sebastian Dröge [Sun, 26 Apr 2015 19:42:03 +0000 (21:42 +0200)]
glfilter: De-camelcase onInitFBO() vfunc
Sebastian Dröge [Sun, 26 Apr 2015 19:39:06 +0000 (21:39 +0200)]
glfilter: Remove onStart/onStop vfuncs, and unused onReset()
onStart/onStop are just duplicates of the basetransform ones, onReset
was never called but was used everywhere when stop should've been used.
Lubosz Sarnecki [Tue, 21 Apr 2015 07:43:58 +0000 (09:43 +0200)]
gltransformation: don't initialize multiple shaders on renegotiation
https://bugzilla.gnome.org/show_bug.cgi?id=748407
* delete shader if one exists
* set it to NULL after unrefing
Sebastian Dröge [Sun, 26 Apr 2015 19:11:17 +0000 (21:11 +0200)]
glcolorconvert: Fix compiler warning
gstglcolorconvertelement.c:230:19: error: unused variable 'in_structure'
[-Werror,-Wunused-variable]
GstStructure *in_structure = gst_caps_get_structure (caps, 0);
^
Ilya Konstantinov [Tue, 14 Apr 2015 22:24:45 +0000 (01:24 +0300)]
avfvideosrc: drop frames we get before we have a clock
https://bugzilla.gnome.org/show_bug.cgi?id=748054
Matthew Waters [Sun, 26 Apr 2015 18:33:41 +0000 (20:33 +0200)]
glbasefilter: Unref other context in finalize, and display in READY->NULL
https://bugzilla.gnome.org/show_bug.cgi?id=748405
Matthieu Bouron [Sun, 19 Apr 2015 17:16:55 +0000 (19:16 +0200)]
glcolorconvert: Keep colorimetry and chroma-site fields if passthrough
https://bugzilla.gnome.org/show_bug.cgi?id=748141
Tim-Philipp Müller [Sun, 26 Apr 2015 17:04:16 +0000 (18:04 +0100)]
Remove obsolete Android build cruft
This is not needed any longer.
Yujin Lee [Sat, 18 Apr 2015 15:55:50 +0000 (00:55 +0900)]
vtdec: fix build error with clang
This commit fixes a simple build error by clang with
by clang with [-Werror,-Wtautological-pointer-compare] options.
https://bugzilla.gnome.org/show_bug.cgi?id=748110
Sebastian Dröge [Sun, 26 Apr 2015 17:08:00 +0000 (19:08 +0200)]
adaptivedemux: Only answer the duration query in non-live mode
Stefan Sauer [Sat, 25 Apr 2015 16:50:52 +0000 (18:50 +0200)]
audiovisualizer: fix the license from GPL to LGPL
This was a copy'n'paste buf in the initial commit done by myself.
Stefan Sauer [Sat, 25 Apr 2015 16:46:41 +0000 (18:46 +0200)]
audiovisualizer: fix the license from GPL to LGPL
This was a copy'n'paste buf in the initial commit done by myself.
Tim-Philipp Müller [Sat, 25 Apr 2015 12:38:08 +0000 (13:38 +0100)]
examples: motioncells: remove GPL3 code we don't need
If 95% of the code of an example app consists of GObject
code, maybe that's defeating the point a little. So just
remove a lot of that and trim down the example to the
absolute minimum. Also removes the last remaining GPL3
licensed code in -bad.
Tim-Philipp Müller [Sat, 25 Apr 2015 11:52:04 +0000 (12:52 +0100)]
examples: motioncells: simplify property setting
Tim-Philipp Müller [Sat, 25 Apr 2015 11:48:28 +0000 (12:48 +0100)]
examples: motioncells: port to 1.x
Robert Jobbagy [Wed, 19 Nov 2014 23:33:44 +0000 (00:33 +0100)]
examples: motioncells: relicense opencv example to LGPLv2
Thiago Santos [Fri, 24 Apr 2015 17:04:55 +0000 (14:04 -0300)]
tests: camerabin: add tests for GstPhotography image capture
GstPhotography enables new paths in wrappercamerabinsrc that allows
the source to be notified about the capture caps and provide an
alternative caps if desired bypassing the negotiation (this doesn't
seem like a good idea these days). To make sure it keeps working
until we remove it from the API in favor of standard caps negotiation
features this test was added.
It adds 3 extra tests with a simple test source that will:
1) Test that capturing with ANY caps work
2) Test that capturing with a fixed caps work
3) Test that capturing with a fixed caps and having the source
pick a different resolution from GstPhotography API works
by having wrappercamerabinsrc crop the capture to the final
requested dimensions
Thiago Santos [Fri, 24 Apr 2015 17:19:50 +0000 (14:19 -0300)]
wrappercamerabinsrc: Rework cropping for zoom and dimension reduction
wrappercamerabinsrc has a videocrop element to be used for
zooming and for cropping when input caps is different when used
with the GstPhotography interface. The zooming part needs
the following elements:
capsfilter ! videocrop ! videoscale ! capsfilter
The capsfilters should always have the same caps to ensure the
zooming is done and preserves dimensions, unless when it is needed
to do more cropping due to input dimensions those caps
need to be modified accordingly to preserve the output dimensions.
This, however, makes it hard to get caps negotiation to work properly
as we need to have different caps in the capsfilters to account for
the extra cropping needed. It could be simple for fixed caps but it
gets tricky with unfixed ones.
To solve this, this patch splits the zooming and dimension reduction
cropping into 2 separate videocrop elements. The first one does
the dimension cropping, which is only needed when the GstPhotography
API is used and the source provides a caps that is different than
what is requested, while the second is dedicated to zoom crop only.
The first part of the pipeline goes from:
src ! videoconvert ! capsfilter ! videocrop ! videoscale ! capsfilter
to
src ! videocrop ! videoconvert ! capsfilter ! videocrop ! videoscale ! capsfilter
It might add an extra overhead in the image capture as the image might need
to be cropped twice but this can be solved by enabling videocrop to use
crop metas so only the later one does the real cropping.
It also makes the code a bit simpler.
Thiago Santos [Fri, 24 Apr 2015 17:17:51 +0000 (14:17 -0300)]
wrappercamerabinsrc: remove obsolete comment
This is already handled in another place and doesn't make sense
in the function context anymore
Thiago Santos [Fri, 24 Apr 2015 17:16:24 +0000 (14:16 -0300)]
wrappercamerabinsrc: error out if source fails to prepare for capture
Post an error when preparing the image capture through photography
interface fails
Thiago Santos [Fri, 24 Apr 2015 17:13:34 +0000 (14:13 -0300)]
wrappercamerabinsrc: intersect instead of compare for equality
Intersect is enough to check if the requested caps are compatible
with what the source is going to provide. Equality will be too strict.
Thiago Santos [Fri, 24 Apr 2015 17:13:16 +0000 (14:13 -0300)]
wrappercamerabinsrc: fix typo
Thiago Santos [Fri, 24 Apr 2015 05:22:54 +0000 (02:22 -0300)]
camerabin: tests: remove unused macros
Those macros were with the wrong name (likely a copy n paste mistake)
and were unused.
Thiago Santos [Thu, 23 Apr 2015 17:28:11 +0000 (14:28 -0300)]
tests: camerabin: remove obsolete check for 0.10 feature
Luis de Bethencourt [Fri, 24 Apr 2015 15:48:23 +0000 (16:48 +0100)]
remove unused enum items PROP_LAST
This were probably added to the enums due to cargo cult programming and are
unused.
Matthew Waters [Fri, 24 Apr 2015 07:13:10 +0000 (17:13 +1000)]
glimagesink: balance change_state display ref/unref
the display was being unreffed on the incorrect state change causing
invalid state when changing from PLAYING/PAUSED->READY->PAUSED/PLAYING.
Sebastian Dröge [Thu, 23 Apr 2015 15:43:36 +0000 (17:43 +0200)]
adaptivedemux: Don't claim to be live when answering the LATENCY query
Even for "live" streams we are not live in the GStreamer meaning of the word.
We don't produce buffers that are timestamped based on their "capture time"
and our clock, but just based on whatever timestamps the stream might contain.
Also even if we wanted to claim to be live, that wouldn't work well as we
would have to return GST_STATE_CHANGE_NO_PREROLL when going from READY to
PAUSED, which we can't. We first need data to know if we are "live" or not.
Sebastian Dröge [Thu, 23 Apr 2015 15:39:46 +0000 (17:39 +0200)]
hlsdemux: Use the downloader of the base class instead of creating our own
The one of the base class is completely unused because we override all
the downloading here, so let's just use that one instead.
Sebastian Dröge [Thu, 23 Apr 2015 15:36:49 +0000 (17:36 +0200)]
hlsdemux: Don't error out if we can't match variant playlists after updating
It's better to just select some random variant playlist instead of stopping,
chances are that it's still continuing to work and we might just have to
select a different variant again later.