He Junyan
ca914f4ac2
codecparsers: nalutils: Add nal_writer_reset_and_get_data help function.
...
We not only want to create a NAL gstmemory, but also need to create and
get the raw data of a NAL writer for the later usage.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1051 >
2022-03-01 10:53:49 +01:00
Guillaume Desmottes
1f02f24828
gs: look for google_cloud_cpp_storage.pc
...
storage_client.pc was legacy and has been removed:
df6fa3611c (diff-bc35ad7c2fe631fd5578a06092412dba81c7ddd27bb25df7e17bb13771799afcL743)
No need to keep looking for storage_client.pc as a fallback as 1.25.0,
our minimum version, already ships google_cloud_cpp_storage.pc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1815 >
2022-03-01 08:10:39 +00:00
jinsl00000
ef4cc9e637
ipcpipeline: fix crash and error on windows with SOCKET or _pipe()
...
The fd was in different meanings on windows:
POSIX read and write use the fd as a file descriptor.
The gst_poll use the fd as a WSASocket.
This patch use WSASocket as default on windows. This is a temporary measure, because IPC has many different implement. There may be a better way in the future.
See #1044
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1791 >
2022-03-01 06:31:51 +00:00
Wu Tong
c60ac7a04b
MSDK: Add _context_query() and avoid compile error on Windows
...
To avoid compile error on Windows, macro definitions are added to suppress va
variables. In the meantime, add function _context_query() to query
context on Windows.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1693 >
2022-02-28 12:54:23 +00:00
Sanchayan Maity
7c9a315578
ldac: Set eqmid in caps
...
We set the eqmid in caps to be usable downstream by rtpldacpay for
knowing the frame count.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1797 >
2022-02-26 17:05:22 +05:30
Vivia Nikolaidou
7cebd5b359
tsmux: Skip empty buffers
...
They can be created e.g. by aggregator when there is a gap. Such buffers
should not be muxed at all.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1611 >
2022-02-25 21:29:43 +00:00
Xavier Claessens
3d8372cc50
devenv: Add some missing GStreamer specific env variables
...
This should make "meson devenv" closer to what "gst-env.py" sets.
- GST_VALIDATE_SCENARIOS_PATH
- GST_VALIDATE_APPS_DIR
- GST_OMX_CONFIG_DIR
- GST_ENCODING_TARGET_PATH
- GST_PRESET_PATH
- GST_PLUGIN_SCANNER
- GST_PTP_HELPER
- _GI_OVERRIDES_PATH
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1768 >
2022-02-25 20:35:26 +00:00
Jan Alexander Steffens (heftig)
e10bd02e1d
fdkaacdec: Support arbitrary channel configs
...
Try to match the config to GStreamer positions. If something doesn't
fit, fall back to a set of unpositioned channels.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1561 >
2022-02-25 18:20:52 +00:00
Jan Alexander Steffens (heftig)
d4b4ffc944
fdkaacdec: Use predefined channel layouts
...
This limits the decoder to the layouts predefined for the encoder
(including the MPEG standard layouts) but greatly simplifies the
implementation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1561 >
2022-02-25 18:20:52 +00:00
Vivia Nikolaidou
e0d5e022a1
tsmux: Lock mux->tsmux, the programs hash table, and pad streams
...
They contain implementations that are not thread-safe (e.g. GList, GHashTable).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1616 >
2022-02-25 17:42:52 +00:00
Mengkejiergeli Ba
b41c70aed5
msdkdec: Fix uninitialized variables
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1731 >
2022-02-25 03:11:29 +00:00
Mengkejiergeli Ba
e1090c152c
msdk: Fix unchecked return values
...
There are several calls of gst_video_info_from_caps and gst_video_frame_copy
without checks for the returned values. This patch adds all necessary
function return checks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1738 >
2022-02-25 02:04:20 +00:00
Seungha Yang
ad73f73356
qsvencoder: Fix caps leak in Linux build
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1769 >
2022-02-22 12:55:26 +00:00
Seungha Yang
20328914dc
qsv: Fix debug category name of qsvallocator
...
Remove gst prefix to make $env:GST_DEBUG="qsv*:6" work for qsvallocator
as well
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1769 >
2022-02-22 12:55:26 +00:00
Mengkejiergeli Ba
108846ed97
bad:docs: Add vaav1dec in documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1773 >
2022-02-22 11:03:28 +00:00
Sebastian Dröge
8ab1c5791b
d3d11: Remove non-existing gst_d3d11_memory_get_type() API from header
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1764 >
2022-02-21 21:26:43 +00:00
Dmitry Osipenko
248f143fa3
v4l2codecs: Support YUV420M format
...
YUV420M format of V4L essentially is I420 with separate memory planes.
It's used by NVIDIA Tegra V4L decoder. Support this format by v4l2codecs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1727 >
2022-02-21 21:58:19 +03:00
Seungha Yang
8ff5f10a40
d3d11screencapturesrc: Use staging buffer pool for performance
...
By using staging pool/buffer, we can avoid per frame
staging texture -> system memory copy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1756 >
2022-02-20 23:43:18 +00:00
Nicolas Dufresne
3d2eb5a04c
doc: Add NV12_16L32S into the cache
...
Autogenerated by CI
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1567 >
2022-02-20 22:32:56 +00:00
Nicolas Dufresne
8883809ef9
v4l2codecs: Enable MediaTek MM21 (NV12_16L32S)
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1567 >
2022-02-20 22:32:55 +00:00
Nicolas Dufresne
3005dbc55a
v4l2codecs: Add support for multi planar buffers
...
V4L2 have some pixel formats that produces 2 dmabuf, this add
support for these format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1567 >
2022-02-20 22:32:55 +00:00
Nicolas Dufresne
bab9041c4b
Port plugins to gst_video_format_info_extrapolate_stride()
...
This reduces code duplication and simplify addition of new
pixel formats into related plugins.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1567 >
2022-02-20 22:32:55 +00:00
Seungha Yang
d49454123e
winscreencap: Remove dxgiscreencapsrc element
...
We have the d3d11screencapturesrc element in d3d11 plugin
which is obviously better than this element in terms of performance
and design, so we don't need to make people be confused by two separate elements.
Let's pick the better implementation and remove unnecessary one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1750 >
2022-02-20 20:04:05 +00:00
Jan Alexander Steffens (heftig)
10904e5580
wpe: Clean up build script
...
Use feature.require to check for gstgl and exit early if 'wpe' is
disabled (don't even check for wpe-webkit-1.1).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1668 >
2022-02-20 14:34:12 +00:00
Seungha Yang
c19d0db454
directshow: Fix build warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1744 >
2022-02-19 19:54:52 +00:00
Seungha Yang
7eedd52510
directshow: Merge plugins into single directshow plugin
...
... and lower rank of dshowvideosink and dshowdeviceprovider
to GST_RANK_MARGINAL since we don't prefer this plugin
by default
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1744 >
2022-02-19 19:54:52 +00:00
Seungha Yang
d94d338bd5
directshow: Remove white spaces
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1744 >
2022-02-19 19:54:52 +00:00
Martin Reboredo
717009f8f5
vulkanshaderspv: SPIRV based filter
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1197 >
2022-02-19 13:55:32 -03:00
Nicolas Dufresne
cf3d64129b
v4l2codecs: vp9: Fix reset_frame_context parameter
...
It was assumed that the kernel parameters would match with the bitstream value
but instead the author when with another set of value. Surprisingly, this
makes no difference with the resulting fluster score.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1748 >
2022-02-18 23:55:59 +00:00
Nicolas Dufresne
5a9df9e850
v4l2codecs: vp9: Only fill compressed headers if needed
...
Fixes: 13944cf3ee
("v4l2codecs: vp9: Make compressed hdr control optional")
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1748 >
2022-02-18 23:55:59 +00:00
Tim Mooney
54a1f60077
v4l2: include <sys/ioccom.h> on Illumos
...
Needed for _IOR/_IORW
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1524 >
2022-02-18 21:34:49 +00:00
Loic Le Page
e1c0628bb9
Add build files and fix build for gst-plugins-bad dshowsinkwrapper plugin
...
dshowsinkwrapper plugin is the old dshowvideosink plugin that has been
renamed to be compliant with the actuel plugin name in the source code.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1577 >
2022-02-18 14:59:25 +01:00
Loic Le Page
b355345ef5
Add build files and fix build for gst-plugins-bad dshowsrcwrapper plugin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1577 >
2022-02-18 14:59:25 +01:00
Loic Le Page
587b2e6bcb
Add build files and fix build for gst-plugins-bad dshowdecwrapper plugin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1577 >
2022-02-18 14:59:25 +01:00
Loic Le Page
42bdeaf52c
Add directshow strmbase library source code from Microsoft repo
...
Original repo is here:
https://github.com/microsoft/Windows-classic-samples
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1577 >
2022-02-18 14:59:25 +01:00
Loïc Le Page
42c6a26aea
Move all directshow plugins to the same sub-folder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1577 >
2022-02-18 14:59:24 +01:00
Tim Mooney
97720dabe0
meson: check for libsocket and libnsl
...
If present, add '-lsocket' and '-lnsl' to network_deps.
ext/curl/meson.build: add network_deps to dependencies
gst/festival/meson.build: same
sys/shm/meson.build: same
Fixes linking issues on Illumos distros.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1525 >
2022-02-17 18:44:49 +00:00
Seungha Yang
04b8dfa391
d3d11: Add support for AYUV, AYUV64, and RGBA64_LE formats
...
Note that AYUV and AYUV64 formats will be used to expand format
support, especially some packed YUV formats (e.g., Y410, YUY2)
are common DXGI formats used for hardware decoder/encoder on Windows
but those formats cannot be used as a render target. We need to handle
them differently without pixel shader help, using compute shader
for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1699 >
2022-02-16 18:41:05 +00:00
Seungha Yang
cb7e454b53
d3d11: Reorganize format mapping table
...
... and handle GST <-> D3D11 format mapping in a single place to
make adding format easier
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1699 >
2022-02-16 18:41:05 +00:00
Seungha Yang
dd906f9610
d3d11: Store device format in struct
...
Holding pointer to struct was unsafe approach because
the pointer to d3d11 format will be invalidated once d3d11 device
object is released
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1699 >
2022-02-16 18:41:05 +00:00
Seungha Yang
e1f0687b09
meson: Do hard build error for some MSVC warnings
...
Handle various MSVC warnings as errors for development version.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1006 >
2022-02-16 17:03:29 +00:00
Dmitry Osipenko
b757d12cff
v4l2codecs: h264: Correct scaling matrix ABI check
...
Scaling matrix V4L UAPI control not presents on NVIDIA Tegra, the default
matrix should be used in this case. Mark scaling matrix presence optional.
Fixes: 47bfa71530
("v4l2codecs: h264: Improve ABI check ")
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1726 >
2022-02-16 13:16:17 +00:00
Mengkejiergeli Ba
586dfab9bd
msdkdec: Enable SFC scaling for AVC and HEVC
...
Decoder SFC only supports down-scaling at most to 1/8.
For example, given a 4K bistream, SFC can scale it to 1080p via:
"msdkh265dec ! video/x-raw,width=1920,height=1080 ! glimagesink"
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1444 >
2022-02-16 08:26:46 +00:00
Mengkejiergeli Ba
c5f0e075e2
msdkdec: Enable SFC csc for AVC and HEVC
...
Decoder SFC will be triggered when default output format is not accept at
downstream. One use case below can work without using msdkvpp:
"! msdkh265dec ! "video/x-raw,format=BGRA" ! glimagesink",
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1444 >
2022-02-16 08:26:46 +00:00
Mengkejiergeli Ba
eb742c8ed0
msdkdec: Add SFC codes
...
SFC refers to Scaler Format Converter, more details here:
https://01.org/sites/default/files/documentation/intel-gfx-prm-osrc-kbl-vol15-sfc.pdf
By attaching mfxExtDecVideoProcessing buffer to mfxVideoParam, decoder
can do SFC for csc and scaling.
MSDK will check if surface bitdepth equals to input when no SFC is
triggered, which means in the case of SFC, there is no need to update
surface bitdepth via gst_msdk_update_mfx_frame_info_from_mfx_video_param.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1444 >
2022-02-16 08:26:46 +00:00
Seungha Yang
dbda4cf409
d3d11converter: Fix for missing GRAY conversion
...
Add missing Y410 -> GRAY and GRAY -> semi-planar conversion
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1724 >
2022-02-16 02:30:01 +09:00
Seungha Yang
98345a141a
d3d11converter: Don't use FIXME_OBJECT for non-GstObject
...
... and print ERROR messages for unexpected input/output formats
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1724 >
2022-02-16 02:27:53 +09:00
He Junyan
24c3e0fcfa
va: Delete the display lock/unlock when we call VA-API.
...
According to the VA-API's description, they are MT-safe, we do not
need to care about that in our middleware layer. The lock/unlock
operations have overhead and make the performance lower.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1333 >
2022-02-15 10:02:08 +00:00
Jan Alexander Steffens (heftig)
acd0300485
openaptx: Support libfreeaptx
...
[libfreeaptx][1] is a fork of libopenapt 0.2.0, used by pipewire.
[1]: https://github.com/iamthehorker/libfreeaptx
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1642
Closes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1589
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1667 >
2022-02-15 08:18:44 +00:00
Seungha Yang
e3e23a2c84
d3d11converter: Fix RGB to GRAY conversion
...
Fix typo in shader code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1697 >
2022-02-14 17:49:54 +00:00