Alessandro Decina [Fri, 21 Jul 2017 06:59:28 +0000 (16:59 +1000)]
gl/meson: OSX support (CGL and Cocoa)
[Matthew Waters]: minor additions such as -fobjc-arc and relying on
dependency rather than cc.find_library()
Norbert Wesp [Wed, 1 Aug 2018 11:59:45 +0000 (13:59 +0200)]
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
Nicolas Dufresne [Wed, 1 Aug 2018 02:41:16 +0000 (22:41 -0400)]
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
freyr [Mon, 30 Jul 2018 07:03:11 +0000 (10:03 +0300)]
gl/gbm: allow headless mode
Don't require an output for the GBM backend.
https://bugzilla.gnome.org/show_bug.cgi?id=794716
Carlos Rafael Giani [Thu, 19 Jul 2018 09:16:05 +0000 (11:16 +0200)]
gl: Add switches for explicitely enabling/disabling PNG and JPEG support
https://bugzilla.gnome.org/show_bug.cgi?id=796833
Carlos Rafael Giani [Thu, 19 Jul 2018 08:30:54 +0000 (10:30 +0200)]
gl: Add switch for explicitely enabling/disabling GBM support
https://bugzilla.gnome.org/show_bug.cgi?id=796833
Nirbheek Chauhan [Tue, 31 Jul 2018 18:02:42 +0000 (23:32 +0530)]
meson: Fix build with x11 dependency is disabled
gtk_x11_dep is used unconditionally in tests/icles/meson.build
Nirbheek Chauhan [Tue, 31 Jul 2018 07:58:59 +0000 (13:28 +0530)]
meson: Fix detection of cdparanoia library
Without this the pkg-config file is required when the plugin is enabled.
Sebastian Dröge [Fri, 27 Jul 2018 12:15:34 +0000 (15:15 +0300)]
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
Nirbheek Chauhan [Wed, 25 Jul 2018 02:05:05 +0000 (07:35 +0530)]
meson: Add feature options for all plugins
GL dependency detection is still automagic.
https://bugzilla.gnome.org/show_bug.cgi?id=795107
Sebastian Dröge [Wed, 25 Jul 2018 12:03:59 +0000 (15:03 +0300)]
gl: Also don't leak floating references to elements set via properties
Fixup for
58ac815eae6ed468d1db60a54a1bd34d6324c28c. Floating references
are such a mess.
Sebastian Dröge [Wed, 25 Jul 2018 11:23:36 +0000 (14:23 +0300)]
gl: Don't steal callers reference when setting non-floating elements via properties
Introduced by
fbef9220d3dc2f785081c4766901aab2ecfaed10. The code there
is only correct for elements we get from signals.
George Kiagiadakis [Tue, 24 Jul 2018 12:09:25 +0000 (15:09 +0300)]
audio-buffer: fix typo in assignment that causes buggy behavior
George Kiagiadakis [Wed, 14 Feb 2018 11:55:06 +0000 (13:55 +0200)]
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
George Kiagiadakis [Wed, 14 Feb 2018 11:11:37 +0000 (13:11 +0200)]
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
Nicolas Dufresne [Sat, 21 Jul 2018 13:13:27 +0000 (09:13 -0400)]
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.
Tim-Philipp Müller [Sat, 21 Jul 2018 10:12:09 +0000 (11:12 +0100)]
meson: examples: fix wrong keyword for gtk examples
Nicolas Dufresne [Sat, 21 Jul 2018 02:07:04 +0000 (22:07 -0400)]
meson: Build gl/gtk examples
Justin Kim [Fri, 5 Jan 2018 07:07:54 +0000 (16:07 +0900)]
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
Seungha Yang [Wed, 18 Jul 2018 10:53:26 +0000 (19:53 +0900)]
xvimage: Fix symbol redefine build error
https://bugzilla.gnome.org/show_bug.cgi?id=796827
Nicolas Dufresne [Tue, 17 Jul 2018 15:43:40 +0000 (11:43 -0400)]
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
Wonchul Lee [Thu, 1 Sep 2016 06:14:37 +0000 (15:14 +0900)]
urisourcebin: Rename urisourcebin variable and query functions
https://bugzilla.gnome.org/show_bug.cgi?id=770693
Seungha Yang [Fri, 11 May 2018 11:25:34 +0000 (20:25 +0900)]
urisourcebin: Set streams-aware flag
https://bugzilla.gnome.org/show_bug.cgi?id=777213
https://bugzilla.gnome.org/show_bug.cgi?id=775132
Iñigo Huguet [Mon, 16 Jul 2018 14:01:34 +0000 (16:01 +0200)]
gl/build: fixed failed compilation due to missing EGLuint64KHR typedef
[Matthew Waters]: add meson differences
https://bugzilla.gnome.org/show_bug.cgi?id=796820
Nicolas Dufresne [Tue, 17 Jul 2018 15:51:49 +0000 (11:51 -0400)]
Revert "glupload: Only offer DMABuf caps feature if using EGL"
This reverts commit
bc9afe724360cbbe5489ca1e1ea44f077810aca4.
Nicolas Dufresne [Tue, 17 Jul 2018 15:43:40 +0000 (11:43 -0400)]
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.
Olivier Crête [Mon, 16 Jul 2018 21:09:02 +0000 (17:09 -0400)]
docs: libs: Add new symbols to section file
Guillaume Desmottes [Mon, 16 Jul 2018 11:12:50 +0000 (13:12 +0200)]
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
Nicolas Dufresne [Mon, 9 Jul 2018 18:03:04 +0000 (14:03 -0400)]
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
George Kiagiadakis [Tue, 13 Feb 2018 13:04:04 +0000 (15:04 +0200)]
tests: audio: test gst_audio_buffer_reorder_channels() also with non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796743
George Kiagiadakis [Tue, 13 Feb 2018 11:24:32 +0000 (13:24 +0200)]
libs: audio: implement planar buffer support in gst_audio_buffer_reorder_channels()
https://bugzilla.gnome.org/show_bug.cgi?id=796743
George Kiagiadakis [Mon, 12 Feb 2018 12:45:44 +0000 (14:45 +0200)]
audiorate: fix support for non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796741
George Kiagiadakis [Fri, 18 May 2018 13:22:47 +0000 (16:22 +0300)]
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
George Kiagiadakis [Fri, 18 May 2018 13:22:32 +0000 (16:22 +0300)]
tests: audio: add unit tests for planar audio support in gst_audio_buffer_clip()
https://bugzilla.gnome.org/show_bug.cgi?id=796740
George Kiagiadakis [Thu, 8 Feb 2018 12:34:23 +0000 (14:34 +0200)]
libs: audio: implement support for non-interleaved audio in gst_audio_buffer_clip()
https://bugzilla.gnome.org/show_bug.cgi?id=796740
Matthew Waters [Thu, 12 Jul 2018 03:13:04 +0000 (13:13 +1000)]
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.
George Kiagiadakis [Wed, 11 Jul 2018 15:29:52 +0000 (18:29 +0300)]
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.
George Kiagiadakis [Mon, 12 Feb 2018 13:33:49 +0000 (15:33 +0200)]
adder: remove non-interleaved layout from caps
adder needs more than just trivial work to support planar buffers properly
because it currently reads sub-buffers from GstCollectPads in order for all
of them to have matching sizes. In planar mode, this means it would truncate
some channels and mix them up in strange ways. It only works if all input
buffers in all sink pads have matching sizes.
George Kiagiadakis [Wed, 7 Feb 2018 16:17:07 +0000 (18:17 +0200)]
audioresample: implement support for non-interleaved buffers
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Fri, 9 Feb 2018 15:07:48 +0000 (17:07 +0200)]
tests: audioconvert: add tests for planar audio
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Fri, 9 Feb 2018 12:29:57 +0000 (14:29 +0200)]
tests: audioconvert: add support for specifying the layout on tests
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Thu, 1 Feb 2018 16:08:51 +0000 (18:08 +0200)]
audioconvert: implement support for converting between interleaved and non-interleaved layouts
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Thu, 1 Feb 2018 15:00:06 +0000 (17:00 +0200)]
libs: audio-converter: complete code to support non-interleaved audio buffers
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Thu, 1 Feb 2018 11:23:53 +0000 (13:23 +0200)]
libs: audio-resampler: add support for consuming non-interleaved input buffers
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Wed, 31 Jan 2018 17:28:57 +0000 (19:28 +0200)]
libs: audio-channel-mixer: add support for non-interleaved audio buffers
https://bugzilla.gnome.org/show_bug.cgi?id=705986
George Kiagiadakis [Wed, 11 Jul 2018 11:48:57 +0000 (14:48 +0300)]
tests/check/Makefile.am: link audiotestsrc test with libgstaudio
Needed for the new planar audio unit test
George Kiagiadakis [Wed, 31 Jan 2018 15:41:32 +0000 (17:41 +0200)]
tests: audiotestsrc: add unit test for non-interleaved audio output
https://bugzilla.gnome.org/show_bug.cgi?id=796739
George Kiagiadakis [Wed, 31 Jan 2018 15:39:05 +0000 (17:39 +0200)]
audiotestsrc: implement producing non-interleaved audio buffers
https://bugzilla.gnome.org/show_bug.cgi?id=796739
Matthew Waters [Tue, 10 Jul 2018 10:03:12 +0000 (20:03 +1000)]
gl/utils: fixup matrix math again for column major
e4bf9ed8f060021151cd57e2b00493ed696cb47b was not quite right and changed
the wrong thing. Intead we needed to change the multiplication order
and should have kept the previous to/from matrices as is done in this
patch.
Guillaume Desmottes [Mon, 9 Jul 2018 08:48:54 +0000 (10:48 +0200)]
videopool: display expected size in warning message
Display the size computed from the caps when rejecting a pool
configuration because the buffer size is too small.
https://bugzilla.gnome.org/show_bug.cgi?id=796768
Olivier Crête [Fri, 20 Oct 2017 16:36:55 +0000 (18:36 +0200)]
videosink: Set processing deadline to 15ms
This roughly corresponds to one frame at 60fps, and leave 5ms
of max_lateness to not change the existing behaviour.
https://bugzilla.gnome.org/show_bug.cgi?id=640610
Sebastian Dröge [Fri, 6 Jul 2018 07:51:37 +0000 (10:51 +0300)]
parsebin: Don't try to continue autoplugging a parser if we got raw caps
Otherwise we'll fail with an unhelpful message that no decoder for the
raw caps was found if a container contains raw media.
Edward Hervey [Fri, 6 Jul 2018 11:48:09 +0000 (13:48 +0200)]
typefindfunctions: Bail out on huge EBML chunks
We can't handle/store more than guint32 anyway
Edward Hervey [Fri, 6 Jul 2018 11:46:17 +0000 (13:46 +0200)]
typefindfunctions: Use guint32 for sizes
This brings it in sync with the type used with gst_type_find_*() API
Edward Hervey [Fri, 6 Jul 2018 11:12:51 +0000 (13:12 +0200)]
typefindfunctions: Use types of same size/signedness
Where applicable/possible
George Kiagiadakis [Thu, 8 Feb 2018 13:20:09 +0000 (15:20 +0200)]
tests: audio: add unit test for GstAudioBuffer & GstAudioMeta
https://bugzilla.gnome.org/show_bug.cgi?id=751605
George Kiagiadakis [Wed, 7 Feb 2018 12:36:01 +0000 (14:36 +0200)]
libs: audio: Implement GstAudioBuffer & GstAudioMeta
Library bits to support non-interleaved audio
https://bugzilla.gnome.org/show_bug.cgi?id=751605
Tim-Philipp Müller [Fri, 29 Jun 2018 09:54:36 +0000 (10:54 +0100)]
meson: rtsp now also depends on libgstbase
Edward Hervey [Fri, 29 Jun 2018 06:53:48 +0000 (08:53 +0200)]
rtsp: Also use libgstbase for introspection module
Sebastian Dröge [Fri, 29 Jun 2018 06:08:46 +0000 (08:08 +0200)]
rtsp: Link to libgstbase for GstDataQueue
wangzq [Thu, 28 Jun 2018 12:13:04 +0000 (20:13 +0800)]
audiobasesrc: Round down segsize to an integer number of samples
https://bugzilla.gnome.org/show_bug.cgi?id=796704
Sebastian Dröge [Thu, 28 Jun 2018 08:19:19 +0000 (10:19 +0200)]
rtspconnection: Use GstQueueArray instead of GQueue for the queued messages
memeka [Tue, 26 Jun 2018 02:48:27 +0000 (12:18 +0930)]
gl: check for EGL_KHR_platform_gbm for non-MESA gbm implementations
https://bugzilla.gnome.org/show_bug.cgi?id=796694
Tim-Philipp Müller [Sun, 24 Jun 2018 11:35:20 +0000 (13:35 +0200)]
gl: fix build on iOS
Tim-Philipp Müller [Sun, 24 Jun 2018 11:19:21 +0000 (13:19 +0200)]
gl: fix build on Windows
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
gl: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
rtp: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
pbutils: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
tag: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
video: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
audio: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Tim-Philipp Müller [Sat, 23 Jun 2018 19:33:16 +0000 (21:33 +0200)]
app: Update for g_type_class_add_private() deprecation in recent GLib
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
Matthew Waters [Fri, 22 Jun 2018 12:43:08 +0000 (22:43 +1000)]
glcontextegl: only dump configs once
Matthew Waters [Fri, 22 Jun 2018 12:40:55 +0000 (22:40 +1000)]
glcontextegl: Fix android build without ES3 tokens
Mathieu Duponchelle [Wed, 20 Jun 2018 02:41:24 +0000 (04:41 +0200)]
rtspdefs: Add gst_rtsp_generate_digest_auth_response_from_md5
Passwords are usually not stored in clear text, usually
the A1 section of the response is stored as is in .htdigest
files.
https://bugzilla.gnome.org/show_bug.cgi?id=796636
Matthew Waters [Thu, 21 Jun 2018 07:47:09 +0000 (17:47 +1000)]
gl/tests: matrix use the affine matrix setter to convert matrices
Removes some duplicated matrices that didn't really need to be
hardcoded.
Matthew Waters [Thu, 21 Jun 2018 07:36:39 +0000 (17:36 +1000)]
glcontextegl: dump the list of EGLConfig's available
Matthew Waters [Mon, 18 Jun 2018 12:24:13 +0000 (22:24 +1000)]
gl: use dependency fallbacks to get at a possible gl-headers subproject
We would make the subproject conditional on the wrap-mode=nodownload
however get_option('wrap-mode') or similar is not available from
meson.build files as the wrap-mode is meant to be used automatically.
Instead use the dependency fallback mechanism to get at the subproject
where possible i.e. when downloading is allows and only add the compat
includes when we have a valid internal dependency from the gl-headers
subproject.
https://bugzilla.gnome.org/show_bug.cgi?id=796534
Sebastian Dröge [Mon, 18 Jun 2018 10:28:15 +0000 (13:28 +0300)]
oggdemux: Make sure that events are writable before changing their seqnum
Matthew Waters [Fri, 15 Jun 2018 03:14:12 +0000 (13:14 +1000)]
gl/tests: add extension/version parsing checks
Vivia Nikolaidou [Wed, 13 Jun 2018 12:29:46 +0000 (15:29 +0300)]
discoverer: Don't crash when running with -v if channel-mask==0 and >7 channels
For e.g. 16-channel audio, if the channel mask is 0 (which it usually
is), gst_audio_channel_positions_from_mask would get confused,
ultimately leading into a crash.
https://bugzilla.gnome.org/show_bug.cgi?id=796578
Edward Hervey [Wed, 13 Jun 2018 11:19:54 +0000 (13:19 +0200)]
videoencoder: Keep the segment position in sync
If the start of the segment is modified, the position should be
modified accordingly
https://bugzilla.gnome.org/show_bug.cgi?id=796576
Mathieu Duponchelle [Mon, 11 Jun 2018 16:32:28 +0000 (18:32 +0200)]
sdp: Add new constructor, sdp_message_from_text
Helper function for bindings, in python for example
users can now replace:
res, msg = GstSdp.SDPMessage.new()
GstSdp.sdp_message_parse_buffer(bytes(text.encode()), msg)
with:
res, msg = GstSdp.SDPMessage.new_from_text(text)
https://bugzilla.gnome.org/show_bug.cgi?id=796563
Nicolas Dufresne [Mon, 11 Jun 2018 17:51:47 +0000 (13:51 -0400)]
videopool: Removed unused private caps member
Tim-Philipp Müller [Thu, 7 Jun 2018 16:42:35 +0000 (17:42 +0100)]
Revert "gl/meson: add support for using bundled headers in a subproject"
This reverts commit
82c43ff9a32f1c1d113cd6e1e8d046b7ab64422d.
Reverting for the time being, since it trips up build bots
that don't have network connectivity.
We ideally shouldn't have a subproject that's used unconditionally.
Matthew Waters [Thu, 7 Jun 2018 03:58:43 +0000 (13:58 +1000)]
glalpha: fix compilation with msvc
It doesn't define M_PI
Matthew Waters [Wed, 6 Jun 2018 07:27:15 +0000 (17:27 +1000)]
gl/meson: add support for using bundled headers in a subproject
This is most useful when building on windows which does not ship the
necessary OpenGL headers.
Matthew Waters [Thu, 7 Jun 2018 03:48:10 +0000 (13:48 +1000)]
gl: add subproject for necessary GL headers for building
Originally for windows with the GL/glext.h and GL/wglext.h but can be
extended for other headers
Thomas Bluemel [Wed, 1 Nov 2017 16:25:49 +0000 (10:25 -0600)]
audiobasesink: Improve clock skew corrections.
The external time should be moved only as much as needed
to get back to the ideal center point, so that the clock
is still allowed to drift both directions after the correction.
This reduces excessive back and forth corrections that were
caused by the assumption of a linear drift.
https://bugzilla.gnome.org/show_bug.cgi?id=788006
Matthew Waters [Wed, 6 Jun 2018 07:24:26 +0000 (17:24 +1000)]
gl/meson: force the gl dependency to use pkg-config
Meson has an internal override for dependency('gl') which we do not want
to use as it assumes too many things. Force meson to only search for
gl.pc.
Matthew Waters [Mon, 4 Jun 2018 12:34:04 +0000 (22:34 +1000)]
gl/meson: don't define GST_EXPORTS
The intended use (msvc) doesn't currently like it and will fail to
resolve symbols at runtime.
Matthew Waters [Mon, 4 Jun 2018 12:32:03 +0000 (22:32 +1000)]
gldownloadelement: fix build with msvc
msvc doesn't like #ifdef inside macro expansion
Matthew Waters [Wed, 23 May 2018 16:49:54 +0000 (02:49 +1000)]
gl/utils: Fix NDC conversion matrices for column-majorness
The matrices were converting the wrong values with non-diagonal-only matrices.
e.g. a typical yflip matrix in [-1,1]^3 such as
1 0 0 0
0 -1 0 0
0 0 1 0
0 0 0 1
Would have actually required a matrix like this in [0,1]^3
1 0 0 0
0 -1 0 0
0 0 1 0
0 -2 0 1
Which is
1. not consistent with our multiplication convention and would require
transposing matrices or changing our multiplication order (from what is
generally used on opengl matrix guides/tutorials).
2. Produces incorrect values when input with actual vertices accounting for
the difference in multiplication order. e.g. some vertices multiplied by
the yflip matrix using vertex * yflip(== transpose(yflip) * vertex):
vertex: -> result: expected:
vec4(1,0,1,1) -> vec4(1,-2,1,1) vec4(1,1,1,1)
vec4(1,1,1,1) -> vec4(1,-3,1,1) vec4(1,0,1,1)
With the updated values, we now get the expected values.
Includes a test for this behaviour and the example above
Edward Hervey [Tue, 5 Jun 2018 15:30:47 +0000 (17:30 +0200)]
playsink: Properly propagate SEGMENT seqnum
When flushing chains, make sure the FLUSH events have seqnum
that are consistent with the current SEGMENT seqnum
Edward Hervey [Tue, 5 Jun 2018 15:29:53 +0000 (17:29 +0200)]
streamsynchronizer: Properly propagate seqnum on EOS event
Edward Hervey [Tue, 5 Jun 2018 15:24:55 +0000 (17:24 +0200)]
rtpbasedepayload: Properly propagate segment seqnum
This wasn't done previously and the outgoing SEGMENT events had
seqnums which weren't consistent with the upstream ones
Edward Hervey [Tue, 5 Jun 2018 15:24:05 +0000 (17:24 +0200)]
oggdemux: Properly relay seqnum of segments
Not all cases were handled regarding properly propagating the
seqnum of SEGMENT events on all downstream segment-related events
Edward Hervey [Wed, 30 May 2018 09:39:40 +0000 (11:39 +0200)]
subparse: Don't read beyond array
If num_open_tags is 0, we shouldn't try to get the "last" open tag
since there isn't any.
Edward Hervey [Wed, 30 May 2018 08:56:12 +0000 (10:56 +0200)]
ogg: Avoid undefined granule shift
A granule is a 64bit signed integer, shifting by 63 or more is
undefined and most likely an indication that the stream is
corrupted or invalid.
Detected by oss-fuzz
Tim-Philipp Müller [Tue, 22 May 2018 12:59:58 +0000 (13:59 +0100)]
docs: Fix typos