Commit graph

19734 commits

Author SHA1 Message Date
Tim-Philipp Müller
8178688b69 meson: update available gl_winsys in options list 2018-08-12 00:09:20 +01:00
Tim-Philipp Müller
553de4906f meson: tag: check for zlib and support compressed id3v2 tag if found
https://bugzilla.gnome.org/show_bug.cgi?id=793995
2018-08-11 18:51:33 +01:00
Matthew Waters
91bc6f63f6 glviewconvert: fix output when a transformation matrix is used
If we have a transformation matrix, we have no idea where in the output
the video is going to endup.  It might also be different and not cover
the entire output.

We need to clear the output to remove any previous data in the backing
texture.

Found from
https://stackoverflow.com/questions/51707229/python-gstreamer-for-dynamic-control-of-element-properties
2018-08-10 22:46:34 +10:00
Bastian Köcher
efa9bdccf9 meson: fix install dir for generated header files
Nixos installs into a non-standard includedir, so need
to take account of the 'includedir' option instead of
just hard-coding 'include' here.

https://bugzilla.gnome.org/show_bug.cgi?id=794856
2018-08-10 12:43:38 +01:00
Tim-Philipp Müller
7e9d6720ca gst-play: use Fisher-Yates shuffle for shuffling the playlist 2018-08-10 12:28:41 +01:00
Sebastian Dröge
0340c7e1f8 tagdemux: Propagate flow returns from gst_type_find_helper_get_range() properly
Instead of considering every failed typefinding as an error, even in
case of e.g. GST_FLOW_FLUSHING.
2018-08-08 12:46:43 +02:00
Thibault Saunier
7757e07f68 rtsp: Include gstreamer-base gir dir in autotools 2018-08-06 14:18:12 -04:00
Matthew Waters
3d22e7d9da gl/meson: fix macos additions for non-macos platforms
"gst-libs/gst/gl/meson.build:655:20: ERROR:  Unknown variable "quartzcore_dep"."
2018-08-03 19:06:00 +10:00
Alessandro Decina
06b8792a5f gl/meson: OSX support (CGL and Cocoa)
[Matthew Waters]: minor additions such as -fobjc-arc and relying on
dependency rather than cc.find_library()
2018-08-03 12:53:10 +10:00
Norbert Wesp
574607702b Add GBM_CFLAGS and define EGL_PLATFORM_GBM_MESA
Building an image with yocto for an 'am335x' processor will fail,
because 'gbm.h' can not be found and 'EGL_PLATFORM_GBM_MESA' is not defined.

So simply adding define of 'EGL_PLATFORM_GBM_MESA' in 'gstgldisplay_egl.c'
and adding 'GBM_CFLAGS' in 'gst-gl.m4' to get rid of this errors and complete
a full build process.

ERRORs were:
-----------
gst-plugins-base-1.14.1/gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h:24:10:
fatal error: gbm.h: No such file or directory
  #include <gbm.h>
           ^~~~~~~

gst-plugins-base-1.14.1/gst-libs/gst/gl/egl/gstgldisplay_egl.c:157:39:
error: 'EGL_PLATFORM_GBM_MESA' undeclared (first use in this function);
did you mean 'EGL_PLATFORM_WAYLAND'?
  ret = _gst_eglGetPlatformDisplay (EGL_PLATFORM_GBM_MESA, (gpointer) display,
                                    ^~~~~~~~~~~~~~~~~~~~~

https://bugzilla.gnome.org/show_bug.cgi?id=796885
2018-08-02 12:17:56 +10:00
Nicolas Dufresne
d2aff7b184 opusdec: Add property to control phase inversion
When enabled, phase-inversion slightly increase stereo quality, but
produce a stream that when downmixed to mono will present important
audio distortion. This patch disables this feature by default and
introduce a property that let user enable it if desired.

https://bugzilla.gnome.org/show_bug.cgi?id=791771
2018-08-01 09:45:07 -04:00
freyr
810d560a2f gl/gbm: allow headless mode
Don't require an output for the GBM backend.

https://bugzilla.gnome.org/show_bug.cgi?id=794716
2018-08-01 14:50:10 +10:00
Carlos Rafael Giani
5576475e0f gl: Add switches for explicitely enabling/disabling PNG and JPEG support
https://bugzilla.gnome.org/show_bug.cgi?id=796833
2018-08-01 14:50:10 +10:00
Carlos Rafael Giani
ad298cf5f5 gl: Add switch for explicitely enabling/disabling GBM support
https://bugzilla.gnome.org/show_bug.cgi?id=796833
2018-08-01 14:50:10 +10:00
Nirbheek Chauhan
be79f74c4d meson: Fix build with x11 dependency is disabled
gtk_x11_dep is used unconditionally in tests/icles/meson.build
2018-07-31 23:32:42 +05:30
Nirbheek Chauhan
28caf92587 meson: Fix detection of cdparanoia library
Without this the pkg-config file is required when the plugin is enabled.
2018-07-31 13:30:46 +05:30
Sebastian Dröge
2f497ed217 tagdemux: Properly propagate gst_pad_pull_range() errors
And don't consider FLUSHING an actual error, just stop in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=796883
2018-07-27 16:23:09 +03:00
Nirbheek Chauhan
eadedc68f8 meson: Add feature options for all plugins
GL dependency detection is still automagic.

https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 18:42:11 +05:30
Sebastian Dröge
3e067ae333 compositor: Don't leak all buffers while crossfading and not all pads are crossfading 2018-07-26 00:20:02 +03:00
Sebastian Dröge
c2a7c93840 gl: Also don't leak floating references to elements set via properties
Fixup for 58ac815eae. Floating references
are such a mess.
2018-07-25 15:03:59 +03:00
Sebastian Dröge
58ac815eae gl: Don't steal callers reference when setting non-floating elements via properties
Introduced by fbef9220d3. The code there
is only correct for elements we get from signals.
2018-07-25 14:35:40 +03:00
George Kiagiadakis
ab2548d78d audio-buffer: fix typo in assignment that causes buggy behavior 2018-07-24 15:09:25 +03:00
Sebastian Dröge
aa3e64c71d compositor: Use 255 as maximum alpha instead of 256
255 will easily become 0 in the blending function as they expect
the maximum value to be 255.

Can be reproduce with

gst-launch-1.0 videotestsrc pattern=ball ! c.sink_0 \
               videotestsrc pattern=snow ! c.sink_1 \
               compositor name=c \
                 sink_0::zorder=0 sink_1::zorder=1 sink_0::crossfade-ratio=0.5 \
                 background=black ! \
               videoconvert ! xvimagesink

crossfade-ratio +/- 0.001 makes it work correctly and the same happens
at e.g. 0.25, 0.75, N*0.0625

https://bugzilla.gnome.org/show_bug.cgi?id=796846
2018-07-23 18:59:33 +03:00
George Kiagiadakis
0ce20cef4f gstaudiodecoder: take into account GstAudioMeta::samples on the output buffers
This is useful if the output buffers are planar and have extra padding
on each plane, in which case size/bpf does not represent the number of
valid samples.

https://bugzilla.gnome.org/show_bug.cgi?id=705977
2018-07-23 15:27:08 +03:00
George Kiagiadakis
2d38d2f1d3 gstaudiodecoder: do not aggregate output if buffers are planar
Aggregation will break the layout, as it concatenates buffers,
and fixing it here would be much more inefficient than configuring
the actual decoder implementation to output larger buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=705977
2018-07-23 15:27:08 +03:00
Nicolas Dufresne
bea4d13a99 meson: gl/gtk tests: Add video_dep to the helper
The gtk helper library includes videooverlay.h hence must have a
dependency on video_dep, this allow removing the dep from the dependant
executables.
2018-07-21 09:13:27 -04:00
Tim-Philipp Müller
5ed774350a meson: examples: fix wrong keyword for gtk examples 2018-07-21 11:12:09 +01:00
Nicolas Dufresne
786c6f4d36 meson: Build gl/gtk examples 2018-07-20 22:45:43 -04:00
Justin Kim
4fa850e3e6 audiorate: accumulate offset by time diff
The fomula, 'offset = time / rate', is correct only if
the rate is never changed. When the rate is changed,
the offset should be re-calculated based on the previous
offset.

https://bugzilla.gnome.org/show_bug.cgi?id=791269
2018-07-19 18:19:19 -04:00
Seungha Yang
83c7dd2335 xvimage: Fix symbol redefine build error
https://bugzilla.gnome.org/show_bug.cgi?id=796827
2018-07-19 12:22:34 +01:00
Nicolas Dufresne
63cf6b4203 glupload: Only offer DMABuf caps feature if using EGL
This was miss-leading VAAPI which was not forcing linear back buffers,
would still export DMABuf. That caused bad rendering as the buffers are
tiled and most likely compressed.

https://bugzilla.gnome.org/show_bug.cgi?id=796822
2018-07-18 09:04:35 -04:00
Seungha Yang
4380d57779 compositor: Update conversion info in property setter
... not in getter. Otherwise, video-converter will not be updated
with new width/height

https://bugzilla.gnome.org/show_bug.cgi?id=796828
2018-07-18 14:41:31 +03:00
Wonchul Lee
53ae7df2e2 urisourcebin: Rename urisourcebin variable and query functions
https://bugzilla.gnome.org/show_bug.cgi?id=770693
2018-07-18 11:11:50 +02:00
Seungha Yang
e3362e459b urisourcebin: Set streams-aware flag
https://bugzilla.gnome.org/show_bug.cgi?id=777213

https://bugzilla.gnome.org/show_bug.cgi?id=775132
2018-07-18 09:22:56 +02:00
Iñigo Huguet
48a0178857 gl/build: fixed failed compilation due to missing EGLuint64KHR typedef
[Matthew Waters]: add meson differences

https://bugzilla.gnome.org/show_bug.cgi?id=796820
2018-07-18 14:02:01 +10:00
Nicolas Dufresne
ae5120a489 Revert "glupload: Only offer DMABuf caps feature if using EGL"
This reverts commit bc9afe7243.
2018-07-17 11:51:49 -04:00
Nicolas Dufresne
bc9afe7243 glupload: Only offer DMABuf caps feature if using EGL
This was miss-leading VAAPI which was not forcing linear back buffers,
would still export DMABuf. That caused bad rendering as the buffers are
tiled and most likely compressed.
2018-07-17 11:43:40 -04:00
Olivier Crête
20566a54e4 docs: libs: Add new symbols to section file 2018-07-16 17:09:02 -04:00
Guillaume Desmottes
86b0802378 rawvideoparse: fix typo in 'plane-offsets' description
The property is 'plane-offsets', not 'plane-offset' so the example in
the description was wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=796817
2018-07-16 13:14:34 +02:00
Nicolas Dufresne
62cb08404b videodecoder: Don't always drain on gaps/discont
V4L2 and OMX decoder don't support draining and keeping reference
frames. As a side effect, these decoder just stops working on
gaps/discont. When this drain was introduced, the commit stated that
this was for TRICKMODE_KEY_UNITS, so only drain if running in this mode.

https://bugzilla.gnome.org/show_bug.cgi?id=796771
2018-07-12 15:25:51 -04:00
George Kiagiadakis
fe8f7dac83 tests: audio: test gst_audio_buffer_reorder_channels() also with non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796743
2018-07-12 13:38:27 +03:00
George Kiagiadakis
e1bc49923f libs: audio: implement planar buffer support in gst_audio_buffer_reorder_channels()
https://bugzilla.gnome.org/show_bug.cgi?id=796743
2018-07-12 13:38:27 +03:00
George Kiagiadakis
09171b11ac audiorate: fix support for non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796741
2018-07-12 13:38:27 +03:00
George Kiagiadakis
b33d70e97f libs: audio: add a new gst_audio_buffer_truncate() function
Essentially this moves the truncation logic out of gst_audio_buffer_clip()
so that it can be used in other places, like in audiorate.

https://bugzilla.gnome.org/show_bug.cgi?id=796740
2018-07-12 12:08:10 +03:00
George Kiagiadakis
adf48c9d3b tests: audio: add unit tests for planar audio support in gst_audio_buffer_clip()
https://bugzilla.gnome.org/show_bug.cgi?id=796740
2018-07-12 11:59:13 +03:00
George Kiagiadakis
9cb09e7269 libs: audio: implement support for non-interleaved audio in gst_audio_buffer_clip()
https://bugzilla.gnome.org/show_bug.cgi?id=796740
2018-07-12 11:59:06 +03:00
Matthew Waters
5518eb26fb gluploadelement: also set the context in decide_allocation
If downstream doesn't perform allocation queries, the context would
never be set and criticals would occur.
2018-07-12 13:15:48 +10:00
Matthew Waters
3a3577f826 glvideomixer: fix default placement when different sized output
i.e. when expanding from 320x240 to 800x600, the resulting frame should
appear in the top left corner, not the middle.

https://bugzilla.gnome.org/show_bug.cgi?id=794401
2018-07-12 12:48:39 +10:00
Daniel Klamt
32c7249c5e glvideomixer: Moves the objects to zero on z axis
Matches the output from a similar glimagesink pipeline when
rotating from an upstream gltransformation passed through
the affine transformation meta with xpos/ypos being set.

https://bugzilla.gnome.org/show_bug.cgi?id=794401
2018-07-12 12:46:40 +10:00
George Kiagiadakis
22373acee3 tests: simple-launch-lines: fixate audioconvert caps now that the layout is also convertable
Because audioconvert can now convert between interleaved and non-interleaved,
this pipeline fails on the upstream capsfilter not being able to fixate its
output caps. This is unavoidable.
2018-07-11 18:29:52 +03:00