Stéphane Cerveau
65e0bc21a5
mpeg123: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
fb29c4b07f
libpng: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
abd5c40691
lame: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
dd3496c830
libcaca: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
13a4c15b99
jpeg: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
a633f4b12e
jack: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
f86147cb6d
gdk_pixbuf: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
e4d26e69d3
gtk: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
762e3c31b5
flac: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Stéphane Cerveau
0b257dd1d5
dv: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Julian Bouzas
c428f0080b
aalib: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:13 +02:00
Sebastian Dröge
860b74d6e2
shout2: Don't register signal without class handler with G_SIGNAL_RUN_CLEANUP
...
There is no class handler to run during the CLEANUP stage.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/913 >
2021-03-26 09:31:11 +00:00
Matthew Waters
612102fdbc
gst: don't use volatile to mean atomic
...
volatile is not sufficient to provide atomic guarantees and real atomics
should be used instead. GCC 11 has started warning about using volatile
with atomic operations.
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719
Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/911 >
2021-03-18 19:52:53 +11:00
Vladimir Menshakov
4de3ddad15
wavpackdec: Add floating point format support
...
This commit negotiate F32 audio format if MODE_FLOAT used in wavpack file.
Wavpack float mode is always in 32-bit IEEE format.
The following pipeline plays distorted audio if source file is encoded in float mode:
gst-launch-1.0 filesrc ... ! wavpackparse ! wavpackdec ! pulsesink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/894 >
2021-03-08 15:19:57 +02:00
Tim-Philipp Müller
c854e6bd39
meson: allow libdv subproject fallback
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/854 >
2021-01-14 19:13:03 +00:00
Matthew Waters
9d14ae4740
qml: add some docs on display and contexts
...
Especially considering some dynamic pipeline scenarios.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/822 >
2020-11-20 07:49:40 +00:00
Sebastian Dröge
e3c16d0194
qmlglsink: Keep old buffers around a bit longer if they were bound by QML
...
We don't know exactly when QML will stop using them but it should be
safe to unref them after at least 2 more buffers were bound.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/810 >
2020-11-11 11:37:27 +00:00
Dinesh Manajipet
aa264e6b07
qmlglsink: Set qtitem's implicit width/height
...
This can be useful to let the layouts automatically resize qtitem
and also easily query a video's width/height from QML
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/802 >
2020-11-02 13:53:46 +00:00
Thibault Saunier
e0b708ea4a
vpx: Fix the check to unfixed/unknown framerate to set bitrate
...
0/1 means unknown framerate not X/0 (which is illegal).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/782 >
2020-10-22 15:53:24 -03:00
Bastien Reboulet
27ecd2c30d
qmlglsink: fix crash when created/destroyed in quick succession
...
The crash is caused by a race condition where the render thread
calls a method on the QtGLVideoItem instance that was
previously destroyed by the main thread.
Also, less frequently, QtGLVideoItem::onSceneGraphInitialized
is called when QQuickItem::window is null, also causing a crash.
Fixes #798
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/777 >
2020-10-20 18:12:20 +00:00
John-Mark Bell
ba4b9971e9
vp8enc: expect bps for temporal-scalability-target-bitrate.
...
Consistency with target-bitrate is less surprising and with
modern libvpx additional configuration is required to make
temporal scaling work.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728 >
2020-10-16 09:25:10 +00:00
John-Mark Bell
d9cedee042
vp8enc: finish support for temporally scaled encoding
...
- introduce two new properties:
* temporal-scalability-layer-flags:
Provide fine-grained control of layer encoding to the
outside world. The flags sequence should be a multiple of
the periodicity and is indexed by a running count of encoded
frames modulo the sequence length.
* temporal-scalability-layer-sync-flags:
Specify the pattern of inter-layer synchronisation (i.e.
which of the frames generated by the layer encoding
specification represent an inter-layer synchronisation).
There must be one entry per entry in
temporal-scalability-layer-flags.
- apply temporal scalability settings and expose as buffer
metadata.
This allows the codec to allocate a given frame to the correct
internal bitrate allocator. Additionally, all the
non-bitstream metadata needed to payload a temporally scaled
stream is now attached to each output buffer as a
GstVideoVP8Meta.
- add unit test for temporally scaled encoding.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/728 >
2020-10-16 09:25:10 +00:00
Haakon Sporsheim
23bb84c868
vpxdec: request a sync point on decoder errors
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/725 >
2020-09-14 13:19:10 +00:00
Jérôme Laheurte
44d4eaab7c
jpegdec: check buffer size before dereferencing. Fixes #541
...
Some cameras (Panacast) have buggy drivers/firmware which send
invalid JPEG frames, containing no data, which makes jpegdec
crash because it assumes the frame is at least 2 bytes long.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/723 >
2020-09-10 09:47:35 +00:00
Mathieu Duponchelle
39fcc7f58f
vp9enc: expose row-mt property
...
With recent libvpx versions, multithreading can be enabled on
a per-tile basis, instead of on a per tile-column basis.
In combination with the new tile-rows property, this allows the
encoder to make much better use of the available CPU power.
Bump minimum libvpx version to 1.7.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707 >
2020-09-09 18:05:31 +00:00
Mathieu Duponchelle
fe6b59d0cc
vpxenc: change default for deadline to good quality
...
Having the deadline set to best quality causes the encoder
to be absurdly slow, most real-life users will want the good
quality tradeoff instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707 >
2020-09-09 18:05:31 +00:00
Mathieu Duponchelle
13cf3fe2a6
vp9enc: expose tile-columns and tile-rows properties
...
Based on patch by Stian Selnes <stian@pexip.com>.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707 >
2020-09-09 18:05:31 +00:00
Mathieu Duponchelle
e61932c358
vpxenc: add configure_encoder virtual method
...
For subclasses to expose format-specific properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/707 >
2020-09-09 18:05:31 +00:00
Jakub Adam
cce71d5cd5
vpx: Support GST_VIDEO_FORMAT_I422_10LE
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705 >
2020-09-08 21:09:09 +00:00
Jakub Adam
87d0464259
vpx: Support GST_VIDEO_FORMAT_I420_10LE
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705 >
2020-09-08 21:09:09 +00:00
Jakub Adam
5ed50669cf
vp9enc: support GST_VIDEO_FORMAT_Y444
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/705 >
2020-09-08 21:09:09 +00:00
Dmitriy Purgin
e695991508
gstqmlgl: build on Windows with qmake without pkgconfig; update instructions on building for Windows
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/591 >
2020-08-24 23:31:47 +00:00
Matthew Waters
625e56d3b4
qmlgloverlay: fix multiple elements with Qt 5.15
...
With Qt 5.15 multiple qmlgloverlay elements would produce:
ASSERT: "!m_gl->property(QSG_RENDERCONTEXT_PROPERTY).isValid()" in file /path/to/qt5/qtdeclarative/src/quick/scenegraph/qsgdefaultrendercontext.cpp, line 121
Workaround by setting the (seeminigly unused) property before
initialization.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/695 >
2020-08-10 15:52:21 +10:00
Matthew Waters
3296a03d73
build: update for gl pkg-config file split
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/680 >
2020-08-07 07:58:29 +00:00
Raul Tambre
b471f75ea0
QtGLVideoItem: Use QSharedPointer::data() for better compatibility
...
Older Qt versions didn't have QSharedPointer::get(), which is just a modern alias for QSharedPointer::data().
FAILED: ext/qt/libgstqmlgl.so.p/qtitem.cc.o
c++ -Iext/qt/libgstqmlgl.so.p -Iext/qt -I../ext/qt -I. -I.. -I../gst-libs -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/gstreamer-1.0 -I/usr/include/orc-0.4 -I/usr/lib/aarch64-linux-gnu/gstreamer-1.0/include -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtQml -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtQuick -I/usr/include/aarch64-linux-gnu/qt5/QtX11Extras -I/usr/include/libdrm -flto -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=c++11 -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Winit-self -Wmissing-include-dirs -Wno-multichar -Wvla -Wpointer-arith -g -fdebug-prefix-map=/opt/good/src=. -Wformat -Werror=format-security -O3 -march=native -Wno-error -Wdate-time -fPIC -pthread -DHAVE_CONFIG_H -DHAVE_QT_X11 -DHAVE_QT_EGLFS -MD -MQ ext/qt/libgstqmlgl.so.p/qtitem.cc.o -MF ext/qt/libgstqmlgl.so.p/qtitem.cc.o.d -o ext/qt/libgstqmlgl.so.p/qtitem.cc.o -c ../ext/qt/qtitem.cc
In file included from /usr/include/gstreamer-1.0/gst/gst.h:55:0,
from /usr/include/gstreamer-1.0/gst/video/video.h:23,
from ../ext/qt/qtitem.cc:27:
../ext/qt/qtitem.cc: In destructor ‘virtual QtGLVideoItem::~QtGLVideoItem()’:
../ext/qt/qtitem.cc:138:86: error: ‘class QSharedPointer<QtGLVideoItemInterface>’ has no member named ‘get’
GST_INFO ("%p Destroying QtGLVideoItem and invalidating the proxy %p", this, proxy.get());
^
/usr/include/gstreamer-1.0/gst/gstinfo.h:682:31: note: in definition of macro ‘GST_CAT_LEVEL_LOG’
(GObject *) (object), __VA_ARGS__); \
^~~~~~~~~~~
../ext/qt/qtitem.cc:138:3: note: in expansion of macro ‘GST_INFO’
GST_INFO ("%p Destroying QtGLVideoItem and invalidating the proxy %p", this, proxy.get());
^
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/673 >
2020-07-15 12:38:50 +00:00
Michael Olbrich
83beb9211b
souphttpsrc: don't fail when seeking past the end of the content
...
Range errors are already turned into EOS when the size is not known.
Do the same thing if the request as outside the known content size.
This can be triggered by seeking in a queue2:
- Ensure that the range containing the end of the file is available.
- Seek into this range from a different range.
- queue2 creates a seek event with start=<file-size>
- this results in a "Requested Range Not Satisfiable" error
Fixes #452
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/385 >
2020-07-10 11:41:55 +00:00
Michael Olbrich
d4b50d7915
souphttpsrc: don't update the size on error
...
Any data corresponding length in the message is not part of the requested
file.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/385 >
2020-07-10 11:41:55 +00:00
Matthew Waters
88775c2e18
qt/gloverlay: fix using OpenGL after destroying Qml
...
Qml somewhat unhelpfully seems to uncurrent our OpenGL context on its
destruction. Work around that by uncurrenting and recurrenting again.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/632 >
2020-07-10 06:11:48 +00:00
Sebastian Dröge
c194390ce9
flacenc: Pass audio info from set_format() to query_total_samples() explicitly
...
This fixes writing of the seek table header.
gst_audio_encoder_get_audio_info() will still return old/unset audio
info until set_format() has actually returned, which then results in
query_total_samples() to always return 0.
Thanks to Jacob Kauffmann for debugging this and finding the main cause.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/756
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/661 >
2020-07-03 06:55:38 +00:00
Nirbheek Chauhan
099712338f
qt: Rework how we find the Qt QPA header
...
Instead of querying the Qt include path from the dependency or from
qmake, rely on the qt5qml_dep to set the include path to QtGui
correctly, and look for the header inside the private includedir.
Then we can use that path to include the header directly.
Reported in https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/780#note_548092
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/640 >
2020-06-28 00:16:53 +05:30
Nirbheek Chauhan
ed457fe08f
qt: Only check for moc-qt5/moc in PATH if not cross-compiling
...
This is an extra check that's only needed for working around Linux
distribution packaging. `moc` is not required in the cross file.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/640 >
2020-06-28 00:16:53 +05:30
Mathieu Duponchelle
1863259ab8
vpxenc: mark all properties as GST_DOC_SHOW_DEFAULT
...
When generating the cache we inspect the base class through
an instance of one of its subclasses. We don't want potential
assignments in subclasses initialization to leak into the
base class documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/641 >
2020-06-24 16:45:27 +02:00
Thibault Saunier
95efaf9d56
vpx: Fix links to baseclass properties
2020-06-23 12:47:44 -04:00
Mathieu Duponchelle
c897fe2b73
docs: mark more types as plugin API
2020-06-23 10:25:55 -04:00
Tim-Philipp Müller
8c8b788f73
shout2: advertise documentation caps properly
...
shout2send caps depend on what the libshout2
version in question supports, but the
documentation caps should always be the same.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/635 >
2020-06-19 10:32:45 +01:00
Guillaume Desmottes
27ced4c8e6
pulse: fix discovery of newly added devices
...
Fix regression introduced in 7bc5e28d85
preventing the device provider to send the device-added message for new
devices.
By early returning the patch was discarding add/remove events.
Fix #735
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/626 >
2020-06-18 14:05:42 +00:00
Matthew Waters
6fba2e3dd3
qt/gloverlay: reset OpenGL state after Qt drawing
...
Reset to the original OpenGL state as required by the GStreamer OpenGL
API contract. Fixes output with a glimagesink element downstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/623 >
2020-06-12 07:23:19 +00:00
Matthew Waters
ffe4d09efc
qt/gloverlay: reset current OpenGL context after Qt
...
Qt may replace the drawable with its own which breaks output if Qt is
not displaying the resulting video as used with e.g. glimagesink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/623 >
2020-06-12 07:23:19 +00:00
Mathieu Duponchelle
f63299ff2f
plugins: uddate gst_type_mark_as_plugin_api() calls
2020-06-06 00:42:25 +02:00
Mikhail Fludkov
7b390a8bbd
vpxenc: Add new bit-per-pixel property to select a better "default" bitrate
...
As part of this also change the default bitrate value to 0. The default
value was 256000 previously. In reality, if the property was not set the
bitrate value would be scaled according to the resolution which is not
very intuitive behavior. It is better to use 0 for this purpose. Now
together with newly introduced property "bits-per-pixel" 0 means to
assign the bitrate according to resolution/framerate.
The default bitrates are now
- 1.2Mbps for VP8 720p@30fps
- 0.8Mbps for VP9 720p@30fps
and scaled accordingly for different resolutions/framerates.
Previously the default bitrate was also not scaled according to the
framerate but only took the resolution into account.
This also fixes the side effect of setting bitrate to 0. Previously
encoder would not produce any data at all.
Addition from Sebastian Dröge <sebastian@centricular.com> to assume
30fps if no framerate is given in the caps instead of not calculating
any bitrate at all.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/611 >
2020-06-04 20:14:03 +00:00
Mathieu Duponchelle
37c619f995
plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types
2020-06-03 22:44:09 -04:00
Stian Selnes
44e4de43da
vpxdec: Check that output width and height != 0
...
For VP8 it's possible to signal width or height to be 0, but it does
not make sense to do so. For VP9 it's impossible. Hence, we most
likely have a corrupt stream. Trying to negotiate caps downstream with
either width or height as 0 will fail with something like
gst_video_decoder_negotiate_default: assertion 'GST_VIDEO_INFO_WIDTH (&state->info) != 0' failed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/610 >
2020-06-02 23:59:20 +03:00
Seungha Yang
1b8df15b78
speex: Fix crash on Windows caused by cross-CRT issue
...
Use speex_header_free() to free memory which was allocated by
library. Cross-CRT issue should not happen on 1.17 Cerbero build
but might happen custom build or so.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/606 >
2020-05-29 00:54:10 +09:00
Matthew Waters
8a8c8afc86
qtoverlay: add the root item as a property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/595 >
2020-05-20 19:37:32 +00:00
Raul Tambre
37c1b1e13f
qtglrenderer.cc: Fix compiling
...
46bfb7d247
fixed a format warning without checking if it actually compiled.
toUtf8() returns QByteArray so we need to assign it to a temporary variable to be able to get the raw string data from it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/593 >
2020-05-15 19:20:45 +03:00
Raul Tambre
46bfb7d247
qtglrenderer.cc: Fix -Wformat-security warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/592 >
2020-05-15 06:07:25 +00:00
Nirbheek Chauhan
fbd4afc64c
meson: Pass native: false to add_languages()
...
This is needed for cross-compiling without a build machine compiler
available. The option was added in 0.54, but we only need this in
Cerbero and it doesn't break older versions so it should be ok.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/589 >
2020-05-13 19:25:33 +05:30
Nirbheek Chauhan
553ac050f0
meson: Make C++ compiler detection not be automagic
...
It is now controlled by the qt5 and/or taglib options. We won't
silently fail to build taglib now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587 >
2020-05-12 04:33:43 +05:30
Nirbheek Chauhan
d67a658daf
meson: Fix gstgl checks for qt and gtk
...
Also rename from build_ to have_, which is more accurate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587 >
2020-05-12 04:32:01 +05:30
Nirbheek Chauhan
2ecba800bf
meson: Revamp qt5qml plugin and example build code
...
Stricter and simpler. For example, now we properly error out when
gstreamer-gl-1.0 was not found when the qt5 plugin is enabled or when
a C++ compiler is not enabled.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587 >
2020-05-12 04:30:13 +05:30
nian.yan
1944564d76
jpegenc: remove meta copy in jpegenc
...
GstVideoEncoder takes care of the Meta copy, so there is no need in
jpegenc
Fixes http://gstreamer-devel.966125.n4.nabble.com/jpegenc-copy-GstMeta-twice-tt4693981.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/576 >
2020-05-06 08:38:46 +00:00
Matthew Waters
7f6fb07f85
qt/x11: also pass the window for gstgl -> qt context
...
Removes this warning from Qt:
QGLXContext: Multiple configs for FBConfig ID -1
QSGContext::initialize: depth buffer support missing, expect rendering errors
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/575 >
2020-04-27 18:19:31 +10:00
Matthew Waters
05108c2898
qt: perform surface creation in the main thread
...
As is required when creating a QWindow instance set out in the Qt
documentation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/575 >
2020-04-27 18:19:31 +10:00
Sebastian Dröge
3fdfd54b02
gdkpixbufoverlay: Use GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS for the supported formats
...
We don't do any blending by ourselves since a while now.
Note that this is a regression in "supported" formats: previously
ARGB64 was supported, for example, but in practice it caused blending to
not take place at all.
2020-03-27 08:55:45 +00:00
Matthew Waters
8be5c780bb
qmlgloverlay: fix usage without an qmlglsink in the pipeline
...
Without a qmlglsink, we need to retrieve the window system display
ourselves rather than relying solely on qmlglsink to have priority on
the choice of display.
2020-03-24 10:24:36 +00:00
Matthew Waters
6397d2f910
qmlgloverlay: don't leak resources freed on a different GL thread
...
deleting a QOpenGLFrameBufferObject needs to occur on the same thread it
was created on in order to actually free the relevant resources
immediately. Otherwise, they will be queued for deletion and not freed
until the associated QOpenGLContext is destroyed.
2020-03-23 14:05:18 +11:00
Matthew Waters
818dde2e02
qt: reorganize include defines
2020-03-20 21:23:03 +00:00
Dmitriy Purgin
40a82104ea
gstqmlgl: Link to opengl32.lib on MinGW
2020-03-20 06:25:28 +00:00
Matthew Waters
7a25fb5b08
qt: add a qml overlay filter element [part 2]
...
It takes a qml scene description and renders it using a possible input
stream.
Currently supported on GLX and WGL.
Follow up to (as that MR had an old version of the commit):
- https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/475
- 4778d7166a
: qt: add a qml overlay filter element
2020-03-19 17:26:54 +11:00
Matthew Waters
4778d7166a
qt: add a qml overlay filter element
...
It takes a qml scene description and renders it using a possible input
stream.
Currently supported on GLX and WGL.
2020-03-18 11:22:39 +00:00
Matthew Waters
21acf312f0
qt: don't always activate/deactivate our GstGLContext
...
Techincally it is enough to activate at the beginning and then forget.
2020-03-18 11:22:39 +00:00
Matthew Waters
a1f53b4f46
qmlglsink: propagate the context up the the application
...
Allows the application to be notified of the OpenGL context creation.
2020-03-18 11:22:39 +00:00
Matthew Waters
5e9f80c79a
qtitem: fix leak of caps
2020-03-18 11:22:39 +00:00
Niels De Graef
4f4997a935
wavpack: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
34a934d8d4
vpx: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
5406208f0d
twolame: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
58d74f0ec5
taglib: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
e5c9538d2a
speex: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
e6c3a524ce
soup: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
5ccd5659c4
shout2: Use G_DECLARE_FINAL_TYPE
2020-03-16 12:35:42 +01:00
Niels De Graef
59ac993a91
raw1394: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
91c55bd920
qt: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
a9ff9fe94e
pulse: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
0da5b42bcc
mpg123: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
45d7dfedb8
libpng: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
2cf28f3021
libcaca: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
0811b8d719
lame: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
f4841754ec
jack: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
9f494290d5
gtk: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
e45a13ca2b
gdk_pixbuf: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
9fa9ea2162
flax: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
51448ea5f1
dv: Use G_DECLARE_FINAL_TYPE
2020-03-16 09:20:07 +01:00
Niels De Graef
5bd3fcf726
cairo: Use G_DECLARE_FINAL_TYPE
2020-03-12 19:24:57 +01:00
Niels De Graef
9ad65fa60b
aalib: Use G_DECLARE_FINAL_TYPE
2020-03-12 19:22:21 +01:00
Sebastian Dröge
fc3bb4c549
jpegdec: Configure JPEG chroma-siting for YUV formats
2020-03-09 21:34:08 +02:00
Milian Wolff
3e0d557744
qmlgl: ensure Qt defines GLsync to fix compile on some platforms
...
By explictly including QtGui/qopengl.h we force the code path that
defines GLsync in the Qt-specific way. Without that, some platforms
failed to compile the qmlgl plugin, since neither Qt nor gstreamer
defined GLsync then, leading to e.g.:
```
make[4]: Entering directory '/.../gst-plugins-good-1.16.1/ext/qt'
CXX libgstqmlgl_la-qtitem.lo
In file included from gstqtgl.h:32,
from qtitem.h:27,
from qtitem.cc:28:
/.../usr/include/gstreamer-1.0/
gst/gl/gstglfuncs.h:93:17: error: expected identifier before ‘*’ token
ret (GSTGLAPI *name) args;
^
/.../usr/include/gstreamer-1.0/
gst/gl/glprototypes/sync.h:27:1: note: in expansion of macro
‘GST_GL_EXT_FUNCTION’
GST_GL_EXT_FUNCTION (GLsync, FenceSync,
^~~~~~~~~~~~~~~~~~~
```
2020-03-05 03:21:48 +00:00
Jake Barnes
2ffb52499f
souphttpsrc: Fix cookies property
...
Disable session sharing and cookie jar when cookies property is set.
The cookie jar actually replaces or removes any existing Cookie header
set on the message, so the cookies property was effectively being
ignored. There doesn't appear to be a way to inject the cookies into the
jar without having to specify matching domains etc., so it's not
possible to simulate the old behaviour of unconditionally sending the
cookies with all messages, besides simply disabling the cookie jar.
2020-02-21 08:56:10 +00:00
Julien Isorce
88ce7397fc
vp8enc/vp8enc: set 1 for the default value of VP8E_SET_STATIC_THRESHOLD
...
In Google webrtc, the setting VP8E_SET_STATIC_THRESHOLD is set to 1
(except when the content is known to be static very often in which
case it is set to 100, i.e. when sharing screen with Google Hangouts).
The cpu usage drops a lot when using 1 for above setting because it
allows the encoder to skip static/low content blocks. The current
0 default value uses too much cpu and confuses the user regarding
the cpu usage expectations. User expects vp8enc to use low cpu by
default.
Documentation of VP8E_SET_STATIC_THRESHOLD:
https://github.com/webmproject/libvpx/blob/master/vpx/vp8cx.h#L188
chromium/webrtc:
b484ec0082/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc (822)
Closes #58
2020-01-28 02:41:50 +00:00
Nicolas Dufresne
83e9d4f70d
jpegdec: Check return value of gst_buffer_map()
...
Without this check, the element will crash instead of returning an
error.
2020-01-27 22:59:34 +00:00
Eric Marks
d6961235e8
aasink & cacasink: add filter aatv & cacatv
...
Add transform filter capabilities to aasink and cacasink in the form of new elements aatv and cacatv.
2019-12-28 23:01:19 +00:00