Sebastian Dröge
23a06f7a31
typefindfunctions: Use memcmp() instead of a strange macro around strncmp()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:43 +00:00
Sebastian Dröge
37a744889c
typefindfunctions: Add various CMAF brands to the MP4 typefinder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:42 +00:00
Sebastian Dröge
041bc2652b
typefindfunctions: Refactor ftyp brands checking
...
Store known brands in arrays and add a helper function to check them.
Also add all the `iso3` to `isob` ISO brands and the `hlsf` ISO
fragmented brand.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:42 +00:00
Sebastian Dröge
66aef5ef46
typefindfunctions: Add various other boxes to the list of known top-level MP4 boxes
...
styp, udta, sidx, ssix, prft, mfra, pdin and meta are in the ISOBMFF
spec and emsg in the CMAF spec.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:42 +00:00
Tim-Philipp Müller
4c665ce043
gst-plugins-base: update translations
...
Fixes #656
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1240 >
2021-10-25 01:11:20 +01:00
Matthew Waters
d4c96bf923
gl/egl: install required egl.h header
...
Fixes build against using the gir.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1227 >
2021-10-22 17:56:41 +11:00
Guillaume Desmottes
47445980a9
streamsynchronizer: set running time offset on events
...
It's cleaner and more generic than overriding the qos events.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1210 >
2021-10-20 14:27:58 +00:00
Tim-Philipp Müller
8dfab0b08c
meson: update for meson.build_root() and .build_source() deprecation
...
-> use meson.project_build_root() or .global_build_root() instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Tim-Philipp Müller
f1bb2c76c6
meson: update for dep.get_pkgconfig_variable() deprecation
...
... in favour of dep.get_variable('foo', ..) which in some
cases allows for further cleanups in future since we can
extract variables from pkg-config dependencies as well as
internal dependencies using this mechanism.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Tim-Philipp Müller
531aa4064a
meson: clean up conditional paths after version bump
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Thibault Saunier
95c1f67d69
discoverer: Set number to stream infos
...
The idea is that we can reference to streams using this unique number,
within the context of that discoverer info. That number should always
be usable to reference the streams for a specific stream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/897 >
2021-10-20 09:16:38 +00:00
Edward Hervey
879526b2e2
discoverer: Don't ref NULL taglist
...
Fixes warning introduced in 064f7bbbfa
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1200 >
2021-10-20 09:47:29 +02:00
Xavier Claessens
eb072600a6
Revert "audio: Merge simd libs into the main one"
...
This reverts commit 4d3a200358
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1194 >
2021-10-19 16:56:35 +00:00
Sebastian Dröge
7cb2dff830
video-overlay-composition: Fix constructor guard to actually allow NULL as parameter
...
And don't use a NULL rectangle later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1195 >
2021-10-19 14:13:24 +00:00
Matthew Waters
d495154068
gl/eagl: fix eagl display creation
...
The GstGLDisplayType of the display was win32 instead of the required eagl.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1188 >
2021-10-19 09:34:43 +00:00
Matthew Waters
49af6a831d
tests/rtp/payload: add test for shrinking extension data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1146 >
2021-10-19 03:26:57 +00:00
Matthew Waters
b7d4d371f9
rtp: also support shrinking the extension data
...
Currently the extension data length specified in the RTP header would
say it was shorter then the data serialised to a packet. When
combining the resulting buffer, the underlying memory would still
contain the extra (now 0-filled) padding data.
This would mean that parsing the resulting RTP packet would potentially
start with a number of 0-filled bytes which many RTP formats are not
expecting.
Such usage is found by e.g. RTP header extension when allocating the
maximum buffer (which may be larger than the written size) and shrinking
to the required size the data once all the rtp header extension data has
been written.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1146 >
2021-10-19 03:26:57 +00:00
Tim-Philipp Müller
bb19b5aa96
vorbisdec: don't emit g_warning() on malformed input data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
2a2d6f7efe
theoradec: don't emit g_warning() on malformed input stream
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
5660743bbf
subparse: don't use g_warning() for malformed input
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
817cb23b9c
tools: Define G_LOG_DOMAIN for various tools as well
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
cf9be70946
gst-plugins-base: define G_LOG_DOMAIN for all libraries
...
Fixes #634
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Mathieu Duponchelle
c3d878e990
audio/video aggregator: make use of new aggregator inactive pad API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/867 >
2021-10-18 22:34:11 +00:00
Philippe Normand
064f7bbbfa
discoverer: Advertise container-specific tags with a new API
...
Since commit a55dafe341
, stream-scoped tags no
longer appeared as top-level tags, introducing a behaviour regression, specially
for MP3 files.
The `gst_discoverer_info_get_tags()` API now returns all tags detected for the
given media, as documented.
A new API is introduced to get container-specific tags,
`gst_discoverer_container_info_get_tags()`. The discoverer tool was adapted to
use it. `gst_discoverer_info_get_tags()` is now deprecated in favor of
`gst_discoverer_container_info_get_tags()` and
`gst_discoverer_stream_info_get_tags()`.
Fixes #759
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1107 >
2021-10-18 20:08:35 +00:00
Tim-Philipp Müller
0a25f22f1b
meson: bump meson requirement to >= 0.59
...
For monorepo build and ugly/bad, for advanced feature
option API like get_option('xyz').required(..) which
we use in combination with the 'gpl' option.
For rest of modules for consistency (people will likely
use newer features based on the top-level requirement).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1084 >
2021-10-18 18:03:19 +01:00
Thibault Saunier
156f2543ca
smartencoder: Force reencoding of vp9 for profiles can't support
...
If the input file is in a profile we won't be able to output (1 or 3 in BGR
format), simply reencode everything for now.
Once we add support for that case we can remove that code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
fec6270205
encoding-profile: ignore more fields when creating for discover info
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
e9fdfade61
smartencoder: Always plug a vp9parse when encoding vp9
...
This way we know that all relevant fields about video format are
added and we avoid renegotiation issues.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
32d36d0e89
smartencoder: Fix renegotiating when reencoding parts of the stream with vpx
...
In the encoded streams we might not have all the information about the
raw video stream, but when reencoding they end up being specified, even
if those are default values.
As vp8 decoders always output frames in some YUV color space we can
ensure that when upstream doesn't specify any value in its caps we
use the default one which is what we end up doing when decoding/reencoding
anyway, so this way downstream (matroskamux in that case) doesn't need
to be able to renegotiate (which it doesn't).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:10:24 -03:00
Thibault Saunier
a75382eaff
meson: Mark newly fdkaac/ogg/vorbis as allow fallback
...
This way when the dep is `auto` we will fallback if the system
dependency is not available.
And use https to get libvorbis
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1171 >
2021-10-16 09:52:23 -03:00
Thibault Saunier
08eac09c12
meson: Fix warning building GstGLEGL
...
We forgot to add the `GstGL` gir as a dependency which was properly
done for GstGLWayland and GstGLX11.
And document why we use a list for `all_libraries`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1168 >
2021-10-16 01:24:45 +00:00
Thibault Saunier
8b7b068d53
meson: Streamline the way we detect when to build documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:28:29 -03:00
Thibault Saunier
6e79932ad9
meson: List libraries and their corresponding gir definition
...
Introduces a `libraries` variable that contains all libraries in a
list with the following format:
``` meson
libraries = [
[pkg_name, {
'lib': library_object
'gir': [ {full gir definition in a dict } ]
],
....
]
```
It therefore refactors the way we build the gir so that we can reuse the
same information to build them against 'gstreamer-full' in gst-build
when linking statically
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:27:30 -03:00
Thibault Saunier
e2dd28a753
meson: Mark files as files()
...
Making it more robust and future proof
And fix issues that it creates
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:27:30 -03:00
Piotrek Brzeziński
a102444c90
video-converter: Fix v210->I420 last line conversion
...
Last line would not be converted correctly if height was an odd number.
Fixed by accounting for data type (8bit vs. 16bit) differences between
respective packing and unpacking functions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/973 >
2021-10-14 21:03:58 +00:00
Piotrek Brzeziński
33ccabd206
video-format: Clean up v210 packing code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/973 >
2021-10-14 21:03:58 +00:00
Piotrek Brzeziński
35a7b19381
video-converter: Add fast paths from I420/YV12, UYVY, Y42B and YUY2 to v210
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/973 >
2021-10-14 21:03:58 +00:00
Matthew Waters
ee1255079b
gl/dmabuf: add some debug logging about why things may fail to be uploaded
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1145 >
2021-10-14 07:41:44 +00:00
Matthew Waters
42597181e2
playbin2/3: autoplug/caps: don't expand caps to ANY
...
Retrieving the pad template caps from a ghost pad returns ANY which when
merged with any other caps will return ANY. ANY is not very specific
and may cause suboptimal code paths in e.g. decoders that assume the
lowest common denominator when presented with ANY caps.
Fixes negotiating dma-buf with vaapidecodebin between glupload in the
video sink element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1144 >
2021-10-14 17:04:26 +11:00
Seungha Yang
0a94da9611
examples: playback-test: Fix for UI resize scenario on Windows
...
Application needs to notify videosink element of video widget resize
via gst_video_overlay_set_render_rectangle() since WM_SIZE event
wouldn't be notified.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1115 >
2021-10-13 07:04:08 +00:00
Olivier Crête
4d3a200358
audio: Merge simd libs into the main one
...
Actually extract the .o objects from the convience libraries and put
them into the main one. Without this, they will just be referenced by
the .pc file, but it will be unusable because they are not installed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1122 >
2021-10-13 01:28:16 +00:00
Olivier Crête
fdd7f9be23
glutils: Export affine transformation functions for gtkglsink
...
Also remove duplicated copy of those functions from the gl plugin
With contributions from Bastien Nocera
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
9b75628101
glvideoflip: Replace GstVideoFlipMethod -> GstVideoOrientationMethod
...
It's the same enum, just drop the renamed copy. But keep the registered
GEnum as it is part of the API.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
b4ca5f386a
glvideoflip: Use the API to parse the image orientation
...
This will reduce the code duplication a little.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
d191e27aca
glimagesink: Use the API to parse the image orientation
...
This will reduce the code duplication a little.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
c898ffceeb
video: Add API to parse the image orientation from a GstTagList
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
a51509c6e7
glimagesink: Replace GstGLRotateMethod with GstVideoOrientationMethod
...
It's the same enum, just drop the renamed copy. But keep the registered
GEnum as it is part of the API.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
ad495089cb
video: Put nicer documentation in GstVideoOrientationMethod
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Tim-Philipp Müller
078f7874fd
gst-play: pick up minus and plus also from navigation events
...
Makes it easier to test playback rate changes with the video
window being in focus.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/928 >
2021-10-12 11:19:22 +00:00
Jan Schmidt
71c3141672
uridecodebin3/urisourcebin: Reusability fixes
...
Improvements to uridecodebin3 and urisourcebin so that they are
reusable across a PAUSED->READY->PAUSED transition.
Disconnect and release decodebin3 request pads when urisourcebin
removes src pads.
In urisourcebin, make sure to remove src pads that are exposed
directly (raw pads and static typefind srcpads) when
cleaning up.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/768
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1100 >
2021-10-10 11:55:19 +00:00