| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Intel oneVPL SDK (oneVPL) is a successor to Intel Media SDK (MSDK)[1].
User may use -Dmfx_api=MSDK or -Dmfx_api=oneVPL to specify the required
SDK when building this plugin. If the SDK is not specified, meson will
try MSDK firstly, then oneVPL if MSDK is not available
Version 2.2+ is required in this patch because pkg-config file was not
provided officially before version 2.2
[1]https://spec.oneapi.com/versions/latest/elements/oneVPL/source/appendix/VPL_intel_media_sdk.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1503>
|
|
|
|
|
|
|
|
|
|
| |
User may specify the required device via GST_MSDK_DRM_DEVICE
Example:
GST_MSDK_DRM_DEVICE=/dev/dri/card0 gst-launch-1.0 videotestsrc ! msdkh264enc
! fakesink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1953>
|
|
|
|
| |
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1448>
|
|
|
|
| |
Currently supported caption format is CEA708_RAW
|
|
|
|
|
|
|
|
|
|
| |
User reported MFX_VERSION is 1026 however the build is broken[1], so add
the check for mfxExtVP9Param to make sure it can be build without
compiler error.
In addtion, it fixes a stupid typo (#endif') introduced by me.
[1] https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/988#note_408093
|
|
|
|
|
|
|
|
|
|
|
| |
video/x-vp9 is required in the src pad, however the output includes a
IVF header, which makes the pipeline below doesn't work
gst-launch-1.0 videotestsrc ! msdkvp9enc ! msdkvp9dec ! fakesink
Since mfx 1.26, the VP9 encoder supports bitstream without IVF header,
so in this patch, the mfx version is checked and msdkvp9enc is enabled
only if mfx 1.26+ is available
|
|
|
|
|
|
|
| |
In case of pkg-config we need to create the include directories object
from the path using include_directories(). For INTELMEDIASDKROOT or
MFX_HOME we need to add the alternate include path ./include/mfx as
Intel MediaSDK now puts the headers there.
|
|
|
|
|
|
|
| |
MediaSDK doesn't support vp8 encode which is not going to be
implemented [1], so remove msdkvp8enc from this plugin
[1]: https://github.com/Intel-Media-SDK/MediaSDK/issues/947
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
When building the msdk plugin even if libmfx is found, unless the
plugin is explicitly enabled we should not error out if msdk
dependencies are not found.
Also give an error message when we don't build the plugin on Windows
because we're not building with MSVC.
|
|
|
|
| |
Variable name was typoed in 604c8d5232eba961ca34c9e98de8d5454cd5ab5f
|
|
|
|
| |
based on the patches provided by Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
| |
Thus removing the preprocessor's directives to included if found.
|
|
|
|
|
|
| |
Refactoring to bail out early if MediaSDK is not found.
based on the patches provided by Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
|
|
|
| |
This partially reverts commit 0bae64835302574953c3e5e89fa0822eb4f6ca4b.
The compiler tells ninja the header dependency, then there is
no need to add them explicity.
|
| |
|
|
|
|
|
|
|
| |
Since output-order is a deprecated attribute, move it out of decode
bass class and configure it in each sub decoder class who need it.
https://bugzilla.gnome.org/show_bug.cgi?id=796853
|
|
|
|
|
|
|
|
|
|
|
|
| |
MediaSDK has been released as open source [1], but the directories
where it installs its files, are different from the binary only
distribution.
This patch adds to the libraries path the directory /lib. Also it
is defined in meson if the include directory has the mfx/ prefix,
something that is already handled in autotools.
1. https://github.com/Intel-Media-SDK/MediaSDK
|
| |
|
|
|
|
|
|
|
|
| |
the 2018.3.1 intel sdk release places libraries into /lib64 instead of
/lib/lin_x64 or /lib/x64, this commit adds /lib64 to the libdir
locations list
Fixes #815
|
| |
|
|
|
|
|
|
| |
gst-plugins-bad\sys\msdk\meson.build:57:4: ERROR: File msdk-enum.c does not exist.
https://bugzilla.gnome.org/show_bug.cgi?id=797211
|
|
|
|
|
|
|
| |
The only plugins remaining are those that haven't been ported to Meson
yet, and msdk. Also, the tests are still automagic.
https://bugzilla.gnome.org/show_bug.cgi?id=795107
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=794568
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=793705
|
|
|
|
|
|
|
|
|
| |
This patch includes:
1\ Implements MsdkDmaBufAllocator and allocation of msdk dmabuf memroy.
2\ Each msdk dmabuf memory include its own msdk surface kept by GQuark.
3\ Adds new option GST_BUFFER_POOL_OPTION_MSDK_USE_DMABUF
https://bugzilla.gnome.org/show_bug.cgi?id=793707
|
| |
|
| |
|
|
|
|
|
|
|
| |
Move enum value defintions which are (or in future) supported
by more than one codec into a common file.
https://bugzilla.gnome.org/show_bug.cgi?id=791637
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding Simple and Main profiles decode support.
Currently msdkvc1dec is not capable to handle the codec_data,
only instream headers are supported. Also msdk vc1 decoder
expecting instream with Sequence header as per SMPTE 421M Annex L.
Most of the decdoebin/playbin pipeline won't work with the above
constraints
because vc1parse is still not an autoplug element.
Only way to make mskdvc1dec work is by connecting a vc1parse
as an upstream element.
https://bugzilla.gnome.org/show_bug.cgi?id=792589
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use drm render node as the first choice of device node file.
Fall backs to use drm primary (/dev/dri/card[0-9])
if there is no render node available
Basic logic is inherited from gstreamer-vaapi, but using
gudev API rather than libudev directly.
Added gudev library as dependency for msdk.
https://bugzilla.gnome.org/show_bug.cgi?id=791599
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=790752
|
|
|
|
|
|
|
|
|
| |
To share GstMsdkContext with each msdk element,
it will be using GstContext.
Most common code is from gstreamer-vaapi.
https://bugzilla.gnome.org/show_bug.cgi?id=790752
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implements 2 memory allocators:
1\ GstMsdkSystemAllocator: This will allocate system memory.
2\ GstMsdkVideoAllocator: This will allocate device memory depending
on the platform. (eg. VASurface)
Currently GstMsdkBufferPool uses video allocator currently by default
only on linux. On Windows, we should use system memory until d3d
allocator
is implemented.
https://bugzilla.gnome.org/show_bug.cgi?id=790752
|
|
|
|
|
|
|
|
|
|
|
| |
Implements msdk frame allocator which is required from the driver.
Also makes these functions global so that GstMsdkAllocator could use
the allocated video memory later and couple with GstMsdkMemory.
GstMsdkContext keeps allocation information such as mfxFrameAllocRequest
and mfxFrameAllocResponse after allocation.
https://bugzilla.gnome.org/show_bug.cgi?id=790752
|
|
|
|
|
|
|
|
|
|
| |
Makes GstMsdkContext to be a descendant of GstObject so that
we could track the life-cycle of the session of the driver.
Also replaces MsdkContext with this one.
Keeps msdk_d3d.c alive for the future.
https://bugzilla.gnome.org/show_bug.cgi?id=790752
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=792260
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=789751
|
| |
|
|
|
|
|
|
|
| |
This lets meson know that the overall plugin needs built with C++
linking.
https://bugzilla.gnome.org/show_bug.cgi?id=781561
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=774793
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=774793
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=775726
|
|
|
|
|
|
| |
The decoder only supports system memory output presently.
https://bugzilla.gnome.org/show_bug.cgi?id=774587
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=770990
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=770990
|