* Add IMX_VPU_API_DEC_OUTPUT_CODE_VIDEO_PARAMETERS_CHANGED output code
* Deprecate encoder drain mode, better document decoder drain mode
* Various documentation fixes and new overviews about en- and
decoding to help with the basic concepts
* Add note about the current state of i.MX8m plus support
* New functions:
imx_vpu_api_is_color_format_rgb()
imx_vpu_api_vp8_profile_number()
imx_vpu_api_vp8_partition_count_number()
imx_vpu_api_vp9_profile_number()
imx_vpu_api_enc_set_frame_rate()
* imx6-coda: Fix decoded frame fb_context
This was causing crashes when callers relied on said fb_context
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
* gstreamer1.0-plugins-common.inc
The old gstreamer1.0-plugins.inc file, adapted for meson
* gstreamer1.0-plugins-packaging.inc
The old gst-plugins-package.inc file, adapted for meson
* gstreamer1.0-ptest.inc
Common code for meson based PTest support; autogenerates the run-ptest
file and is designed to use the gnome-desktop-testing suite runner
(which is why the .inc files inherits from ptest-gnome)
(From OE-Core rev: 075aa7a617d38d6a698cee97dcb7550e72741eb5)
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
This is a rewrite, based on the new libimxdmabuffer library, the new
libimxvpuapi library version 2, and GStreamer 1.14 (1.16 required for
full functionality). In addition to the i.MX6 and i.MX7, the i.MX8 is now
supported as well.
The code was reorganized into gst-libs/ and ext/ subdirectories to match
the GStreamer directory structure.
Also, meson is now the build system in use to ease integration with
GStreamer build setups such as Cerbero.
See the ChangeLog for a full list of changes and additions.
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
* imx6 coda: fix bug in IPU based detiling related to frame width/height
* imx6 coda: use the frame width/height from open params if available
* imx6 coda: fix duplicate VPU firmware unloading
* imx6-coda: Fix skipped frame reporting
* imx8 hantro encoder: fix mid-stream bitrate changes and bitrate logging
* imx8m-hantro: Handle CODEC_ERROR_FRAME codec state
* imx8m-hantro: Limit supported formats and profiles if building for m8xmm
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
In case we are building for a GPU-less machine (e.g: i.MX6UL) using a
distro without OpenGL support, was triggering a wrong build dependency
chain.
Now, we enable gles2 backend only if the distro has OpenGL support.
Fixes: #684.
Fixes: 61fac596 ("gstreamer1.0-plugins-bad: Let processors with pxp chose the correct Opengl API")
Change-Id: I275299d20065309d753ebc7774ab1fcc5bea7113
The gstreamer1.0 recipes for the i.MX forks were updated to a newer version, but
the file versions were not updated accordingly. For the NXP 5.4.47 release, the
gstreamer version is 1.16.2.imx. For NXP 5.4.70, the gstreamer version is
1.16.3.imx.
Note that the original version 1.16.imx was not appropriate either, and this
fix can also be viewed from that perspective, that the third digit of the version
should be included in the recipe version.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
The processors without gpu (imx6ul/imx6ull) support only opengl-es.The system must be able to chose the correct API instead of forcing it for all processors.
Signed-off-by: ZIDOUH Zakaria <zakaria.zidouh@gmail.com>
Update imx-gst1.0-plugin package to use the MM_04.05.06_2008_L5.4.47
branch. Version also increases to 4.5.6.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Update gstreamer1.0-plugins-bad package to use the
MM_04.05.06_2008_L5.4.47 branch. This branch is based on the upstream
1.16.2 release.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Update gstreamer1.0-plugins-good package to use the
MM_04.05.06_2008_L5.4.47 branch. This branch is based on the upstream
1.16.2 release.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Update gstreamer1.0-plugins-base package to use the
MM_04.05.06_2008_L5.4.47 branch. This branch is based on the upstream
1.16.2 release which also includes one patch we until now maintained in
this recipe.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Update gstreamer1.0 package to use the MM_04.05.06_2008_L5.4.47 branch.
This branch is based on the upstream 1.16.2 release.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Update imx-vpuwrap package to use the MM_04.05.06_2008_L5.4.47 branch.
Version also increases to 4.5.6.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Add a pair of patches that's to be applied over the iMX flavor of the
gstreamer1.0-plugins-base codebase.
First patch comes from upstream, and it fixes glupload behavior by avoiding
mapping the GL buffers into CPU memory. It's only applicable to the current
MM_04.05.05_2005_L5.4.24 branch that is based on the upstream 1.16.1 release,
since the patch itself is already present in 1.16.2.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/444
Second patch is a fix for Meson builds that enable the viv-fb GL winsys. The
change is only applicable to the NXP gst-plugins-base repository. When enabled,
the GL plugins library should also link against libg2d since the viv-fb code
is using g2d allocators.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Add the viv-fb PACKAGECONFIG flag through which the corresponding GL winsys
support can be enabled in the GStreamer base plugins configuration. When
enabled, dependencies on the virtual libgles2 and libg2d targets are required.
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
VK_RESULT_BEGIN_RANGE has been removed in Vulkan headers, and
corresponding patch has been introduced in GStreamer.
Backport patch from upstream GStreamer to NXP fork to address
compilation error for Vulkan.
Cc: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* introduce RGB and packed YUV formats since the Hantro encoder
supports those
* remove hardware specific public headers since they only added
tiled pixel formats; instead, migrate these tiled formats into
ImxVpuApiColorFormat
* imx8 hantro decoder: reorder list of supported decoder color
formats to favor 10 bit output
* imx8 hantro decoder: clear new framebuffer fields to zero
* imx8 hantro encoder: fix segfault caused by trying to unmap
non existing staged raw frame
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
The tune-specific package architecture is sufficient, no need to
use the more specific SOC or MACHINE package architecture.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Align recipes to match NXP release 5.4.24-2.1.0 by updating the branch to
MM_04.05.05_2005_L5.4.24.
Following notes are additions to the regular bump of recipes:
--------------------------
gstreamer1.0-plugins-bad:
Drop patches applied upstream and refresh all patches in layer with
devtool to clean-up fuzz during apply.
Backport patch to be able to compile with OpenCV 4.4.0 provided in
upstream OE-Core.
imx-gst1.0-plugin:
Introduce the patch to solve compiler error reported when -fcommon is
used in GCC10 configuration.
--------------------------
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
NOTE: This update uses new EULA v11 from NXP.
Following commits are added in this release (including command):
$ git log --oneline --no-decorate 4ebbb1bc..16dba069
16dba069 MMFMWK-8757 release/build_std: Fix yocto automation issue
b912378e MMFMWK-8755 release/build_std: Add flac unit test to pkg
5871d696 MLK-23360-2: release/lib: Update mp3 codec lib
3573ebeb MLK-23360-1: mp3_dec: MP3 codec doesn't detect sample rate change in the stream
edb24319 [configurea.ac] Update dsp version to 1.0.14 for next release
980baaad [configurea.ac] Update version to 4.5.5 for next release
4fddfbd5 [configurea.ac] Update dsp version to 1.0.13 for next release
e3b603f8 [configurea.ac] Update version to 4.5.4 for next release
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Cc: Tom Hochstein <tom.hochstein@nxp.com>
Starting from this version, imx-vpuwrap is provided in a separate GIT
repository and no longer in archive.
Following commits are added in this release (including command):
$ git log --oneline --no-decorate 8a3f1b0..b683295
b683295 MA-17072 [VC8000E] Set AVC default profile/level
ae24b72 MA-16984 update Android.bp to remove "imx_defaults"
1349ea2 MA-16873-4 Update vpu_wrapper path
c1235d2 MA-16830-2 Fix memleak when free memory in wrapper
f680b3c MMFMWK-8745 hantro: enable reorder config for hantro vpu
3685f06 MA-16717-3 add VPU_DEC_SKIP for CODEC_PIC_SKIPPED
35b43ea MA-16717-2 Add Config to reset codecdata flag
8c92057 MMFMWK-8742 Map decoders to timestamps
ad0bc7f MMFMWK-8739 [8mp]Grecorder: Only one recorded ts file play well when set '-n 3'
6c306bc MMFMWK-8738 [8mp] Set right input buffer's Y,U,V physical address
1524207 MMFMWK-8736 Fix hantro decoder can't get fullrange flag of files encoded with vc8000e
19fe757 MA-16593 [evk_8mm] Fix video hang due to error frame
13459f7 MMFMWK-8733 Update EULA.txt for vpu_wrapper according to imx-release-info
35ea5e6 [configurea.ac] Update version to 4.5.5 for next release
94c38de MA-16435-1 Modify Android makefile
96e189f MMFMWK-8720 Replace docs/EULA.txt and add SRC file SCR-imx-vpuwrap.txt
341dc9b MMFMWK-8720 Simplify vpu wrapper
bf6680e MMFMWK-8720 Sync vpu wrapper code with Android and change copyright
1e6bc61 MMFMWK-8720 fix vc8000e encoder can't work
a61d115 MMFMWK-8722 Fix color abnormal issue of streaming feature
f68972d MMFMWK-8722 [8mp] Fix bitrate getting smaller issue of VC8000E encoder
e7b3992 MMFMWK-8718 Enable cropping for hantro encoder at preprocess stage
017ecf7 MMFMWK-8714 [8mp] Adjust parameters to get correct filesize with given bit rate.
95acceb MMFMWK-8595 seperate 845 and 865 rootfs
180d19f MMFMWK-8595 Enable VC8000E encoder for 865
6fb749b [configurea.ac] Update version to 4.5.4 for next release
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Cc: Tom Hochstein <tom.hochstein@nxp.com>
OpenCV has been upgraded upstream to 4.3.0 and current build of
gstreamer1.0-plugins-bad is broken as the previous patch required
version to be < 4.2.0
Backport the patch from upsteam to allow compilation with OpenCV 4.3.0
and replace the patch in the layer.
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* Last planned release in the 0.x series. Development now focuses on 2.x.
The 2.x series will support i.MX6, i.MX7, and i.MX8.
* OE recipe fix to use the correct G2D dependency (imxg2d, not imx-gpu-viv)
* waf: Update to version 2.0.12 and switch to Python 3
* misc:
* gst_buffer_pool_config_set_allocator() and get_allocator() are
transfer-none. Changes to the code address that, fixing various refcount
related problems.
* Update GstPhysMemoryAllocator support for GStreamer 1.14+
* v4l2video:
* v4l2src: Set interlace flags in GstBuffer
* v4l2sink: Define V4L2_COLORSPACE_DEFAULT if it doesn't exist
* v4l2: Add phys mem meta only if the driver/card is known to support this
This makes USB video cameras work with imxv4l2videosrc, because they do
not provide any physical address.
* v4l2_buffer_pool: First reset the buffer storage in the pool, then queue
the buffer. Otherwise it might happen that we dequeue the same buffer in
a different thread already *before* we have it reset in the buffer storage,
and then run into an assertion because it contains NULL.
* vpu:
* decoder: Fix for an endless loop at gst_imx_vpu_decoder_finish() when in
no_wait mode
* decoder: Clear the GST_VIDEO_BUFFER_FLAG_TFF flag in case of
IMX_VPU_INTERLACING_MODE_BOTTOM_FIELD_FIRST
* decoder: Honour num-additional-framebuffers setting
* decoder: Fix leak when input video formats change due to a missing
gst_imx_vpu_decoder_close() call
* ipu: Reintroduce interlace methods
* audio:
* Save pointer to codec_data GstBuffer to fix memory leak
* Only allocate reordered_channel_positions if needed. If we don't need to
reorder the audio channels, we the unnecessary allocation otherwise.
* g2dpango:
* Add missing header and cleanup a few warnings
* Unref video_frame memory after phys_memory check
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
-Update EULA to v10
-Add vpu wrapper unit test for i.MX8
Enable 8mm/8mq to support H264/HEVC byte-stream format decoding
Enable 8mm to support H264 encoding
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
-Update EULA to v10
-Fix unexpected EOS reported by Aiurdemux while playing fragmented mp4 video
-Add Mpeg2ResetOuputBuffer when track is disabled
-Upgrade mp 3parser's getNextSamle, don't read 16KB
because this mode can't calculate right timestamp
-Add Parser API to get ac4 presentation info
-Fix ID3 parser return wrong artwork size
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
* imx6: replace mxcfb.h check with i.MX6 specific imx header check
the mcxfb.h check only makes sense with i.MX6 devices, so requiring
those for others like i.MX8 led to build errors
* update waf to 2.0.12 and switch wscript to use Python 3
* imx6: fix encoder pointer usage in vpu_EncGiveCommand() call
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
Upgrade imx fork of gstreamer components to version taken from
MM_04.05.03_1911_L5.4.0 branch. This branch is aligned with the new
kernel update from NXP.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Update gstreamer to meson build system.
This update follows the strategy and description provided in commit
[3e71919b865433ca007bf23f9b4f9015e25ac04e] from upstream.
Autotools patches are completely dropped from the layer, and
meson-relevant patches are introduced instead.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Following modifications were performed:
- Remove reference to autotools/M4 related patch:
[0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch]
- Drop reference to gettext handling
- Remove all autotooling class references and functions and replace them
with meson class
- Add patch to fix GIR support in the meson.build file
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Following modifications were done:
- Remove reference to autotools/M4 related patch:
[0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch]
- Convert all packageconfigs from using autotools syntax to meson
- Replace EXTRA_OECONF with EXTRA_OEMESON
- gettext handling now part of gstreamer1.0-plugins-common.inc.
- Align fork recipe to match upstream from oe-core
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
This update follows [427eb30f9b59972b38ae3f25094470bb7034547d]
in upstream, which trasnitions the gstreamer1.0 plugins build
from autotools to meson build.
Additional patches included in meta-freescale are:
- Backport of 2 patches to allow using OpenCV version 4.1.0
- Adaptions required in NXP fork to use meson
- One patch which solves the data dir search on OpenCV.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
This follows [41c498bded82d3c9216dd3c862e70890f67f2914] from upstream,
which transitions gstreamer1.0 plugins from autotools to meson build
system.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Update gstreamer base plugins to meson build system.
This update follows the strategy and description provided in commit
[e957fbc5d82368934f721e3773bf3942c5177ed7] from upstream.
Autotools patches are dropped from the layer and additional
meson-relevant patches are introduced from upstream.
In addition, patch required to support meson build of NXP fork is
included.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Fixes:
| ERROR: gstreamer1.0-plugins-imx-0.13.0+gitAUTOINC+963aea60b1-r0 do_configure: Execution of '/build/krm/oe-core_master/build/tmp/work/armv7at2hf-neon-mx6qdl-tdx-linux-gnueabi/gstreamer1.0-plugins-imx/0.13.0+gitAUTOINC+963aea60b1-r0/temp/run.do_configure.44421' failed with exit code 127:
| /usr/bin/env: ‘python’: No such file or directory
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Fixes:
| ERROR: libimxvpuapi-0.10.3+AUTOINC+4afb52f97e-r0 do_configure: Execution of '/build/krm/oe-core_master/build/tmp/work/armv7at2hf-neon-mx6qdl-tdx-linux-gnueabi/libimxvpuapi/0.10.3+AUTOINC+4afb52f97e-r0/temp/run.do_configure.51207' failed with exit code 127:
| /usr/bin/env: ‘python’: No such file or directory
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Upgrade current recipe to version 4.5.1, which also matches the NXP
release tag rel_imx_4.19.35_1.1.0 for all components.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
New version of GStreamer introduced several python scripts, which are
development-related. Provide them in the -dev package.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Since all pathes required by those recipes are collcted in this layer,
there is no need to use an absolute path to oe-core when searching for
patch files. This also breaks build when build system initialization is
different from NXP bootstrap script.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Fix absolute search paths in the recipe, which attemped to use patches
directly from oe-core and keep those patches in this layer.
This would allow ease of tracking (patches could be dropped once version
is upgraded) and resolves the dependency from oe-core layer (no direct
inclusion necessary via env variables which is not present at every
build system setup).
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Current implemetation of recipe has absolute path to patches from
oe-core, which breaks the build if initialization script from Freescale
is not used to bootstrap the environment. Moreover, several patches from
oe-core does not apply cleanly to the NXP tree and should be rebased.
This commit eliminates the hardcoded paths from recipes and collects
patches from oe-core in this layer. Two patches are also rebased to be
cleany applied to NXP source tree.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
- Switch to MM_04.05.01_1909_L4.19.35 branch.
- Drop GST_PROTECTION_UNSPECIFIED_SYSTEM_ID patches,
those are included in 1.16 source code.
Signed-off-by: Cristinel Panfir <cristinel.panfir@nxp.com>
latest wpewebkit uses GST_PROTECTION_UNSPECIFIED_SYSTEM_ID definition
in its EME implementation.
Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
- MP3 PARSER: Fix Google Play Music can't seek mp3
- FLAC PARSER: Check meta header lenght to avoid a null header
- ASF PARSER: Add protection when need to allocate large size memory
- Some other fixes for: AVI/MPEG2/MP4 PARSER
Signed-off-by: Cristinel Panfir <cristinel.panfir@nxp.com>
- ac3d_wrapper: Fix some streams that caused ac3 codec hang
- test/ua_wrapper: Add to test AAC, BSAC AudFormat
Signed-off-by: Cristinel Panfir <cristinel.panfir@nxp.com>
With the change to linux-imx-headers 4.19.35 the build of imx-alsa-plugins
fails. Likely "linux/mxc_asrc.h" would require an include.
In the latest sources this is done in the source file which includes it.
| /workdir/oe/tmp/work/aarch64-mx8-tdx-linux/imx-alsa-plugins/1.0.26-r0/recipe-sysroot/usr/include/imx/linux/mxc_asrc.h:125:2: error: unknown type name 'snd_pcm_format_t'
| 125 | snd_pcm_format_t input_format;
ff.
From the imx-alsa-plugins commit:
Include latest asrc_pair change for k4.14 build [YOCIMX-3558]
asrc_pair: update according to latest mxc_asrc.h
The mxc_asrc.h is updated for supporting new module on 815.
The main change is the xxx_word_width is replaced by xxx_format.
As we've switched to use git fork build, change recipe PV to 'git'.
Will upstream this recipe to community later.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
OE-core Commit '928d09f88c vulkan: remove' dropped the vulkan recipe/package
in favour of a split into vulkan-header/vulkan-loader/vulkan-tools.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
This prevents a number warnings like the following:
| imx-sc-firmware-1.2-r0 do_package_qa: QA Issue: imx-sc-firmware: SRC_URI uses PN not BPN [src-uri-bad]
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Newer versions of libav have dependencies on the newer
gst versions. To use the gstreamer-imx fork we also need
this older version of libav.
Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
This is the successor to libimxvpuapi. Since at this moment, there is
software still using the former, its recipe remains in place. Both
versions (1 and 2) can coexist on the same rootfs.
Version 2 introduces support for i.MX8 (mx8m and mx8mm for now), and also
still supports i.MX6.
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
-Fix Hantro encoder align issue
-Fix vpu crash in secure mode
-Fix gplay can not exit when --quiet
-Add support in VPU decoder for draining buffers during input format change
-Add RGB input support for vpu encoder plugin
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Bugfix:
-waylandsink: fix HDR10 playback abnormal
-waylandsink: fix buffer map fail when swith to internal buffer
-wayland/wlbuffer: just return if used_by_compositor is true when attach
-kmssink: add NV12_10LE support for DRM dumb buffer
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
-v4l2videoenc: workaround for sink pool dequeue race condition
-v4l2videodec: add lock for queue and stream off
-pulseaudio: fix bad state when play audio with varying channels
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
-Fix VP8 encoded video has mosaic when seek
-Fix video not smooth at the begining
-Fix 1080p h264 encode video has mosaic
-Fix gplay segfault when CMA free is low
-Fix vpu crash in secure mode
-Fix av unsync when play a vp8 stream
-Refine bit rate calculation,use width, height and frame rate to adjust bitrate
-Enable prependSPSPPSToIDRFrames so that each IDR frame has
sps/pps and the encoded h264 stream can play in multi ts files
-Add RGB input support for vpu encoder plugin
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Bug Fix:
-Fix one mpg2 video fast forward get segmentation fault
-Fix Ogg seek segmentation fault
-Fix last PES not processed by ts parser
-Make H264 parser reset correctly when seeking
-Fix ID3 parser crash
UTF16ToUTF8Len return size is less than actual size because there are
invalid data in metadata, so add padding size in avoid this issue.
Update mp3 parser to 03.02.02
Update aac parser to 03.01.02
-Add vp8/vp9 video type support in avi parser
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
This was an old FIXME which is now fixed.
Change-Id: I0c5936e5c4c63e0f913ca9089f5f73b3259d9b51
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
This overrides the package split regarding the debug symbols to avoid
the generation of a '-src' package which causes the 'src' codec to be
left unpackaged.
This is a side effect of following commit:
,----
| Author: Joshua Watt <jpewhacker@gmail.com>
| Date: Wed Mar 6 10:32:30 2019 -0600
|
| Add source package to ${PACKAGES}
|
| Permanently adds the -src source package to ${PACKAGES} instead of
| relying on creating it dynamically at packaging time. The
| source package is now defined in bitbake.conf, just like -dev and -dbg
| packages.
|
| For compatibility, the -src package is still added dynamically if
| it was missing, since some recipes have a tendency to completely
| override PACKAGES and do so without manually adding back the -src
| package.
|
| This allows RDEPENDS on the -src packages, which wasn't previously
| possible.
|
| [YOCTO #13203]
|
| Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
| Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
`----
As this is a very weird corner case, we handle it here instead of
fixing OE-Core.
Change-Id: Ief1ca6da5db26cc536ba18af64b614f6cce26065
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
This commit fixes the compilation of gstreamer1.0-plugins-bad which failed with :
from ../../../git/ext/opencv/gstgrabcut.cpp:90: [...]
error: conflicting declaration of C function 'CvMoments cvMoments(const cv::Moments&)
The added patch is similar to 0001-opencv-fix-build-for-opencv-3-4-2.patch but for
gstgrabcut.cpp.
getVar() has been defaulting to expanding by default for
a long time (2016), thus remove the True option from
getVar() calls with a regex search and replace.
Search & replace made using the following command:
sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \
-i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \
| cut -d':' -f1 \
| sort -u)
Signed-off-by: André Draszik <andre.draszik@jci.com>
This allow to easy reuse of binary packages among similar SoCs. The
usual use for this is to share SoC specific packages among different
boards independently of the kernel version it is using, as far it is
ABI compatible with the official version it will just work.
Following recipes has been reworked to make use of the class:
- imx-lib
- imx-test
- imx-vpu-hantro
- imx-vpu
- imx-alsa-plugins
- gstreamer1.0-plugins-base
- gstreamer1.0-plugins-imx
- imx-gst1.0-plugin
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Just like imx-vpu-hantro, this package now depends on LINUX_VERSION_CODE
which should be retrieved from kernel build folder directly instead of
relying on the toolchain kernel headers.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Update EULA to V26
Enable vpu encoder 8MM
Enalbed date_time in 8MM
1. Refine date time overlay code
2. Use SW compositor in 8MM
Enalbe grecorder in imx8mm
1. Update video source and sink to autovideo source/sink
2. Added VP8 encoding format
3. Change audio recoder to mp1 layer2 to use opensource encoder
4. Remove videodetect with compiling macro
5. Update grecorder command option
Add support for disable audio in recording
Fix ion.h header inclusion to be standard
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Changes for waylandsink:
Implement alpha blending for surface
Support HDR10 video playback
Set to play video fullscreen as default
Set waylandsink as default video sink for imx8
Add property to set window resolution
Add internal dmabuf pool to support SW decode
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
v4l2videodec:
Add more video format support: RMVB/VP6/AVS/Sorenson SPARK/DivX
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add i.MX8MM feature list accoridng to soc_id
Add marcos for i.MX8MM chip code in gstimxcommon
Respect to downstream format priority in glupload
Fix ion.h header inclusion to be standard
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Update EULA to V26
Bugfix:
Fix last PES not processed by ts parser
Make H264 parser reset correctly when seeking
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Since OpenCV was updated to version 3.4.3 in meta-openembedded:
7b9f86ca7 opencv: Update to 3.4.3
The gstreamer-plugins from NXP is therefore out of sync and can't build
without this patch from upstream.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Upgrade EULA to v24
Update plugin define as macro GST_PLUGIN_DEFINE in GST1.14 is updated
Remove link to libgstbadbase in compositor when compiling with GST1.14
(GST-1.14 has moved badbase into libgstbase)
Imxcompositor update for GST1.14
G2d support VPU tiled format
Set default video sink to g2d convert link with waylandsink for 8qxp
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add GST_EXPORT APIs for GST1.14
kmssink:
Add HDR10 support
Add hdr metadata reset when exit playback
Add fps print when exit
Add alignment for video src crop size for dpu
waylandsink:
Add fps print
Support video crop meta using viewporter protocol
Pass dmabuf modifier to weston
Hard code scale ratio for i.mx8qxp instead of using
setplane to try scale ratio as its upscale has no limitation
Update patch to fix applying conflict
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
gtkglwidget: Fix build error caused by api change in base-gl
v4l2videodec: Add resolution change support
Add HEVC support
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add GST_GL_API ahead api to export symbol
add include "gstglfuncs.h" when need call gl api.
Add ion dmabuf support in glupload/gldownload.
Add fullRange to hdr10 metadata.
Move gstimxcommon.h into base for imx specified dev.
Add imx physical memory allocator.
Fix glplugin not build in wayland backend.
Patch update to fix applying conflicts.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Bugfix/Optimization:
baseparse: Handle base parse error.
baseparse: Unset FLAG_DISCONT when push to adapter.
Or the DISCONT flag will always be set on each frame,
for the first chain in buffer.
baseparse: Push adapter remainning data in
pass through mode to avoid missing data.
poll: Need check if can read event of buffer
for video decoder based on V4L2 driver.
Add the API for it.
inputselector: Proceed non-active pad buffer even if active pad reach eos
Non-active pad will be blocked if active pad reach eos in
inputselector, which will cause all pipeline be blocked.
Inputselector should proceed non-active pad buffer based
on clock even if active pad reach eos.
Change to sync with clock for better user experience.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>From [1] we know the imx-alsa-plugins_1.0.26 does support all imx7, and
it is defined in the BSP as MACHINE_EXTRA_RRECOMMENDS, so this patch add
imx7ulp as compatible.
It also fixes the following error (when building for imx7ulpevk):
ERROR: Nothing RPROVIDES 'imx-alsa-plugins' (but
/home/daiane/code/yocto/master/sources/poky/meta/recipes-core/images/core-image-base.bb,
/home/daiane/code/yocto/master/sources/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
RDEPENDS on or otherwise requires it)
imx-alsa-plugins was skipped: incompatible with machine imx7ulpevk (not
in COMPATIBLE_MACHINE)
[1]
https://source.codeaurora.org/external/imx/meta-fsl-bsp-release/tree/imx/meta-bsp/recipes-multimedia/alsa/imx-alsa-plugins_1.0.26.bb?h=rocko-4.9.88-2.0.0_ga
Signed-off-by: Daiane Angolini <daiane.angolini@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The OpenGL stack in gstreamer1.0-plugins-base also needs EGL in order for
its OpenGL ES 2.x support to work
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
- Fix dependency from imx-vpu to virtual/imxvpu
- Since both imx-vpu and imx-vpu-hantro can provide virtual/imxvpu.
- Add missing "--enable-armv8" configuration option
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
- Rename recipe to use git package name
- Set PV to use latest version plus git revision
- Add O.S. Systems License
This commit includes the following changes:
- 963aea6 Merge pull request #180 from clopez/bug-179
- 81d3233 Merge pull request #188 from dougnazar/fixes
- 68715a6 g2dpango: Add missing header and cleanup a few warnings
- f4aa2db audio: Save codec_data
- 2b2edd7 Endless loop at gst_imx_vpu_decoder_finish() when in no_wait mode (#179)
- ecd884a v4l2: Add phys mem meta only if the driver/card is known to support this
- 9772200 ipu: Reintroduce interlace methods
- 3404b56 v4l2video: Define V4L2_COLORSPACE_DEFAULT if it doesn't exist
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
- Rename recipe to use latest git revision.
- Add O.S. Systems Software Copyright
- Add PV to use 0.10.3 release on name
This change includes the following changes:
- 4afb52f Merge pull request #22 from bmx666/master
- 691ea9a Add imx_vpu_enc_configure_gop_size() function
- 97a9ff2 Merge pull request #17 from Artox/master
- 5739ffc add e-mail address to maintainer field
- b5ff857 libimxvpuapi-dev: add debhelper generated ${misc:Depends} to depends
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
- Update license checksum to match EULA v22 April 2018.
- Remove .inc file to use only one .bb file
- Update O.S. Systems Software Copyright
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
gplay: fix cpu loading high when in background
gplay: disable subtitle when use dcss or dpu
vpudec: add fullRange to HDR10 metadata
Add direct build dependency on libdrm as vpu in
imx-gst1.0 plugin includes drm_fourcc.h when doing compile.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add INSANE_SKIP for file-rdeps to fix QA Issue.
set hasColorDesc and fullRange in VPU_DecGetInitialInfo.
Fix H264 failure due to too many MBI buffers.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Fix crash issue when parse index list.
Add mett atom in mp4 parser.
MP4 PARSER 06.13.00 add interface PARSER_API_GET_TEXT_TRACK_MIME
to get mime type from mett atom.
Add protection for contentDescriptionObject
in case the size is not correct and larger than qwSize,
Otherwise, it will cause memory error.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add INSANE_SKIP for file-rdeps to fix QA Issue
Update mp3_enc version to 02.03.01
Fix crash in lib_mp3_enc_arm12_elinux.so
This crash error is caused by division by zero
in noOfElements_mp3e() function When encoding 0
size file by using unit test
so before performing a division operation, need to
check whether divisor is zero or not to fix it.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Create new gstreamer recipe with i.mx specific version.
Switch to use i.MX fork of GST.
Merge inc/bb.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Create the new gstreamer recipe with i.mx specific version.
Switch to use i.MX fork of GST.
Merge inc/bb.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Create the new gstreamer recipe with i.mx specific version
Merge inc/bb.
Switch to use i.MX fork of GST.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Create the new gstreamer recipe with i.mx specific version.
Merge inc/bb.
Switch to use i.MX fork of GST.
All patches are put into the fork.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
This follows the OE-Core upgrade and moves the bbappend to the new
version.
Change-Id: I8f3d461c4002dacac2fbe4cab62a354bcaebebf3
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Upgrade EULA to v20
2. Add i.MX8 support
3. Bugfix/Optimization
-Fix creating parser error
When the variable value is negetive, if(bytesToRead) will return true,
modify this condition to if(bytesToRead > 0).
-FLAC PARSER 03.00.07
Check read actual length in case of parser reach eos.
-MP4 PARSER 06.12.11
Fix crash issue when parse id3 metadata.
-MPG2 PARSER 04.05.16
Fix parser return wrong frame size after fastforward.
-ASFPARSER_01.00.55
Update for HEVC tag and audio AC3 support.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Changes:
* New imxv4l2videosink element
Currently only supports input physically contiguous memory blocks
as input (so, for example, no videotestsrc)
* New Pango-based overlay elements using G2D for rendering
* gstimxcommon library is now public
Necessary when implementing external sinks to retrieve the mapped
physical memory address from gstreamer buffers
(NOTE: ABI may change in the next few releases until this is stabilized)
* New optional ability to use GstPhysMemory from gst-plugins-bad
* imxv4l2videosrc:
* Add checks for V4L XRGB555X and GStreamer NV61 pixel formats
* Add UYVY support and make it the new default
UYVY works better with IPU-based deinterlacing, since with I420,
deinterlaced frames may exhibit a green band at the bottom, which
is apparently an IPU bug related to the plane offsets.
* Fix compile prior to Gstreamer 1.3.1
* v4l2_buffer_pool: Add special case for tw6869 driver
The tw6869 driver requires a different physical address to allow
DMA'able buffers for decreasing latency between chip and display
* v4l2src: add fractional "fps" property
(obsoletes the "fps-n" property)
* Add GstImxV4l2Meta init function
This avoids the g_assert() that was caused by the missing init
function
* Add num-additional-buffers property
This can be useful if capturing video isn't smooth; it sets the
number of internal additional buffers, so if downstream consumes
too many buffers, imxv4l2videosrc might end up doing a blocking
wait until buffers are returned
* imxv4l2src plugin is now called imxv4l2video, because it also
contains imxv4l2videosink
Also, the v4l2 elements can be enabled/disabled in the build
configuration individually now
* compositor:
* Clear output also if the input format has an alpha channel
* Only copy compositor input buffers to DMA memory once
If a single input frame is used for multiple output frames, we would
otherwise copy multiple times which can easily go to the limit of the
memory bandwidth
* vpu:
* Fix leak causd by missing GstVideoCodecState unref
* Release decoder context GCond during flush to fix potential deadlock
* Add memory tag to VPU framebuffer meta to avoid meta related crashes
* Add support for GRAY8 frames as a "fake grayscale mode"
Grayscale is actually encoded as I420, with the U and V planes
filled with 0x80 bytes. This feature also makes libimxvpuapi 0.10.3
the new minimum requirement.
* Remove 8-pixel alignment from width & height sinkcaps
* Framebuffer array: fix memory leak if we got out of memory
* Handle releasing of buffers without assigned framebuffer
This can happen if the buffer is released before it was actually
used, e.g. when renegotiating at the very beginning; prevents
a crash that would otherwise occur
* Add parameter check to avoid encoder crash on flush
* g2d:
* Always enable blending if the input frames have an alpha channel
G2D automatically makes use not only of global alpha, but also of
per-pixel alpha. Therefore, it makes sense to enable blending even
if global alpha is set to 255, as long as the input frames have an
alpha channel. Such blending is useful for composing a video frame
with some partially-transparent overlays for example (not to be
confused with hardware overlays though).
* Add build configuration switches to explicitely specify G2D include
and library paths
* Disable cacheable memory allocation
Several issues were reported with cacheable DMA memory, so it is
turned off, at least for now
* blitter:
* Add property to clear screen to black in blitter sinks
* Add output-rotation property to videotransform base class
* audio:
* Fix SIGFPE when restarting mp3 encoder
* Fix reference counting for caps
* Mark static codec caps as may be leaked
This gets rid of the false positive in the leak tracer
* misc:
* Update waf to 1.9.3 to fix compilation with Python 3.4+
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Commit 3304733d67 removed patches and PACKAGECONFIG_GL,
but actually we need to keep PACKAGECONFIG_GL and remove only patches.
So, add back PACKAGECONFIG_GL gstreamer1.0-plugins-bad.
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Change the git URL to Code Aurora as it mirrors the git.freescale.com.
It also changes the branch name to the matching one.
Signed-off-by: Daiane Angolini <daiane.angolini@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Change SRC_URI to point to git repo on Code Aurora as it mirrors the
git.freescale.com.
It also changes the working directory to reflect the git structure.
Signed-off-by: Daiane Angolini <daiane.angolini@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
In order to support future VPUs on other SoC, replace imx-vpu
with virtual/imxvpu.
Signed-off-by: Jun Zhu <junzhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Upgrade EULA to v18
2. Bugfixes/Optimization
- Update HEVC PARSER 01.00.02/ APE PARSER 00.00.08/ MPEG2 PARSER 04.05.10
1. Delete the useless label in HEVC PARSER.
2. Fix 2 variables' not init in special case for APE PARSER.
3. Fix one struct's not init for MPEG2 PARSER.
- Fix one mp3 can't play on jb4.3_1.1.1-ga
ID3V2 contains a picture larger than 3MB, need to save ID3 data size
in self->m_dwID3V2Size to let parser skip it when starting playback.
- Fix creating parser error
When variable value is negative, if(bytesToRead) will return true,
modify this condition to if(bytesToRead > 0).
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Upgrade EULA to v18
2. Bugfix/Optimization
- AACPlus:M4A format audio only can output about 1s audio, then keep silence
It is caused by AACPlus decoder because aacplus decoder
occupys much cpu time when decoding.
Add -O3 build option into aacplus decoder's build script to
optimize the code.
- Optimize the code
Cancel duplicated code in aac_dec/aacplus_dec.
Cancel unused code in flac_dec.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Gstreamer was updated to version 1.12 and these 1.10 patches don't
apply in version 1.12.
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The alsa-lib needs to apply the patches for all i.MX SoCs so using the
'imx' override seems to be the best choice for this specific
use-case.
A missing aspect though was that this should also affect every package
which /depends/ on alsa-lib (e.g: alsa-utils) so it also goes to
MACHINE_SOCARCH architecture fixing the signature change across
different machines.
This fix has been tested using a massive parallel build using
multiconfig.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The patch has some applying conflicts.
It should be applied after some poky patches,
but they are still under review, not accepted yet.
Will add it back later.
This reverts commit faa2234c76.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* Add gstplayer get_rotate() and set_rotate() API
* Add get/set force-aspect-ratio config API
* Add set audio/text sink API
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Setting async to false will cause A/V sync problem when seeking.
The preroll needs to use GAP event instead of setting async to false.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-Add an interface in playengine to set video sink using GstElement
This interface is for qmlglsink use or something like that.
-Optimize imxv4l2sink and overlaysink to make
them work with qmlglsrc more effective
Add RGBA format support the two sink.
Reduce the interval to 1ms when do dequeue retry in v4l2.
-Add gst_phy_mem_meta_init()
Avoid critical warning as gst_meta_register add critical check for NULL init_func.
-Aiurdemux add wma voice support
-Add vertical and horizontal flip support for overlaysink and imxv4l2sink
Add vertical and horizontal flip for overlaysink and imxv4l2sink.
Change playengine set rotate interface to set enum value.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Upgrade license chksum to v16 EULA
Fix segmentation fault in ID3 parser when dataSize is abnormal
Update MP4 PARSER to 06.09.38
Update MP3 PARSER to 03.01.14
Update AAC PARSER to 03.00.11
Update FLAC PARSER to 03.00.6
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-Upgrade license chksum to v16 EULA
Bugfixes:
-VORBIS_Wrapper/VORBIS_DEC: add error handler
Some fuzzy bitstream will cause segmentfault as error handler is not correct.
-Fix wma10_dec's Segmentation fault in performance test
Segmentation fault occurs when decoding several streams in performance test.
Add test_case[] array's size to fix it.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The wscript file uses conf.check_cfg which in turn uses pkg-config.
Fixes configure error triggered now with recipe specific sysroot.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The SoC is now dealt as a i.MX6 SoC so there is no need for the
specific metadata.
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The SoC is now dealt as a i.MX6 SoC so there is no need for the
specific metadata.
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Use glBlitFramebuffer for textures copy if it is available
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add a property "disable_passthrough" in glcolorconvert for enable/disable passthrough.
When need convert YUV to RGB with directviv, set it to be TRUE.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1) Propose a physical buffer pool to upstream in gldownload
2) Bind the physical buffer with texture via dirctviv
3) In gldownload, wrap the physical buffer to gstbuffer, pass to
downstream plugins.
4) Add some configure check for g2d and phymem
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1.Add a physical buffer uploader in glupload plugin and using viv direct
texture to bind physical continious buffer with texture to avoid memory
copy from videobuffer to texture to gain good performance.
2.Reduce glimagesink load latency by override glimagesink ALLOCATION query to
avoid memory copy.
3.Add configure check for directviv feature.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Add fb support in glimagesink
2. Override set_render_rectangle() to support resize
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
These patches are for GST 1.8, need to do refine for GST 1.10
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The bbappend will only work on a specific version, or it may have some conflicts.
Currently, it is for GST 1.8.
And once the release is final, it does not update the Gstreamer version in poky.
So it won't raise the parser error.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The bbappend will only work on a specific version, or it may have some conflicts.
Currently, it is for GST 1.8.
And once the release is final, it does not update the Gstreamer version in poky.
So it won't raise the parser error.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
By i.MX convention, if wayland and x11 are in the distro features,
the Wayland backend is used.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The IMX-GPU driver now provides compiler settings through pkg-config,
so don't set them explicitly.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
We can't append SRC_URI here without using an override because it add
patches for all machines, including non imx machines, e.g QEMU machines.
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Changes:
- properly pass on color format in simplified JPEG encoder interface
- add alternative write-callback-style encoding mode
also add encode example variant which uses write-callback style output
- add support for "fake grayscale mode" in encoders
this is done by using I420 internally and filling the U and V planes
with 0x80 bytes
- make sure JPEG quantization table is copied in standardized zig zag order
the VPU does not, so this has to be done explicitely
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
For the MACHINEOVERRIDES "mx6dl" and "mx6q" PLATFORM is set to MX6DL and MX6Q,
respectively, resulting in the following error from the configure script:
| configure: error: No target platform specified!
| Use ./configure PLATFORM=(MX6/MX6QP/MX6SL/MX6SX/MX6UL/MX7D) to retry
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Add directviv and g2d check in configure.ac
2. Add compile marcos in glupload and gldownload
3. Now, these patches can be applied on all imx SoC, no need to add filter.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Add fb support in glimagesink
2. Override set_render_rectangle() to support resize
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The recipe has been reworked to use the 'imxpxp' and 'imxvpu' feature
overrides.
Change-Id: Ib2e23d965dbad45bb8246493a79c1d3320866170
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The recipe has been reworked to use the 'imxgpu2d' and 'imxgpu3d'
feature overrides.
Change-Id: Ib91231cfaff479cd185741b12ff8da56145e6327
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1. Add #ifdefine Marco to avoid redefinition of GL_COLOR_ATTACHMENT(1,2).
2. Change to use glBlitFramebuffer for textures copy. glCopyTexImage2D
cannot work because we cannot get texture internal format.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add a property "disable_passthrough" in glcolorconvert for enable/disable passthrough.
When need convert YUV to RGB with directviv, set it to be TRUE.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1) Propose a physical buffer pool to upstream in gldownload
2) Bind the physical buffer with texture via dirctviv
3) In gldownload, wrap the physical buffer to gstbuffer, pass to
downstream plugins.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1.Add a physical buffer uploader in glupload plugin and using viv direct
texture to bind physical continious buffer with texture to avoid memory
copy from videobuffer to texture to gain good performance.
2.Reduce glimagesink load latency by override glimagesink ALLOCATION query to
avoid memory copy.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
In our release, the default display is full screen in LVDS.
The 1024x768 resolution will be better in testing for our release platform.
So change it from 320x240 to 1024x768.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
This update specifies a limit on the amount of CPU time
that a process scheduled under a real time scheduling policy
may consume without making a blocking system call. If pulseaudio cost
more time which exceed the rlimte-rttime it will be kill by kernel.
Signed-off-by: Lauren Post <lauren.post@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
- Add HEVC support in aiurdemux
- glplay1.0: fix memory leak
- Coverity fixes for null pointers
- improve mutex/cond in overlay sink compositor
- Update aiur/beep for arch64 lib
- Add v4l2 core check configure.ac
- Update pc name in configure.ac
- Add protection for invalid fps
- Test scripts updated
- unify soc_id usage in plugin and player
- play engine support glimagesink
- Fix http streaming memory leakage
- Fix display for 7d
- Video aggregator fixes
- Buffer sharing with DMA in video pipline
- Overlay sink fixes
- add g2d version
- Fix dependency issues between gst-plugin-bad and imx-gst1.0-plugin
- Fix imxcompositor assertion failure
- vpu fixes for initializing handle
- Compositor fixes for failure case
Signed-off-by: Lauren Post <lauren.post@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Patch fixes the resume funcion which does not update teh dmix state
Signed-off-by: Lauren Post <lauren.post@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
- Update license checksum to align to EULA
- Updates for coverity, memory leaks, corrupted content
Signed-off-by: Lauren Post <lauren.post@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
- Upgrade license chksum to v14 EULA
- Check for lib_src_ppp_arm11_elinux.so library before removing
- Fixes for error hadling and robustness
Signed-off-by: Lauren Post <lauren.post@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
All packages were being built all the time because the configure
arguments from PACKAGECONFIG were not being passed. The problem
manifested itself as the QA issue build-deps, but the problem wasn't
fixed and the QA issue was silenced.
This is fixed by passing the PACKAGECONFIG arguments through EXTRA_OECONF.
Also, the build-deps QA issues are re-enabled.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The i.MX BSP now defaults for XWayland when both X11 and Wayland
support is available, so we ought to use the Wayland backend for this
case as well.
Change-Id: Iab93cebea5cbd9796aaf9903e25be2686ce653c4
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The recipe has been reworked to use the 'imxvpu' feature override.
Change-Id: I2caba9278db1c78e1368da6c4f82eb0b738917a2
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The recipe has been reworked to use the 'imxpxp', 'imxipu', 'imxvpu',
'imxgpu2d' and 'imxgpu3d' feature overrides.
Change-Id: Ia4730f94d619d37265bd7234b8447bf29286ee70
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The gstreamer1.0-plugins-imx-imxg2d has the dependency satisfied by
the GPU driver, which is already listed as dependency. This marks the
warning as a false-positive.
Fixes:
,----
| WARNING: QA Issue: /usr/lib/gstreamer-1.0/libgstimxg2d.so_gstreamer1.0-plugins-imx-imxg2d
| contained in package gstreamer1.0-plugins-imx-imxg2d requires
| libg2d.so.0.9, but no providers found in its RDEPENDS [file-rdeps]
`----
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Changes:
* imxv4l2videosrc:
* Stricter checks for video device capabilities
* Add support for more video formats like 8/16-bit grayscale
* pxp: Fix incorrect return code which broke blitter with GStreamer 1.8
* blitter:
* Improvements in error logging
* Fixes for RGBx framebuffer format detection
* Fix for subtle tearing problem by implementing triple buffering
* audio:
* Replace objdump-based scan during build configuration
Codec filenames are instead moved to the C code; the libdir
path of the libfslaudiocodec.pc file is used to know where on
the target the files are placed
* Explicitely add the libfslaudiocodec.pc libdir to the MP3 encoder
Fixes build errors in buildroot
* Minor logging fixes
* misc:
* Proper check for region copies in phys_mem_meta
* Add missing G_END_DECLS lines in headers
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The CFLAGS and PACKAGECONFIG changes are applied just for i.MX6 Q, DL,
SX and SL so we can remove the PACKAGE_ARCH override for the i.MX7 and
i.MX6UL as those are unaffected.
Change-Id: Ice33fd3a12566875f9ec2559d0a044f38916d244
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Pass $libdir to 'waf configure' to prevent using the build hosts libdir.
Fixes:
WARNING: libimxvpuapi-0.10.2-r0 do_package: QA Issue: libimxvpuapi: Files/directories were installed but not shipped in any package:
/usr/lib64/libimxvpuapi.so
/usr/lib64/libimxvpuapi.so.0
/usr/lib64/libimxvpuapi.so.0.10.2
/usr/lib64/pkgconfig
/usr/lib64/pkgconfig/libimxvpuapi.pc
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
In order to fix issue "headphone volume will be set to zero when pulseaudio
can't detect the headphone jack status", remove the control in configuration file.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The base_contains function is deprecated and we ought to use
bb.utils.contains instead.
Change-Id: Ibdd989c45731b3d81507fc55cb989138875c23f7
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The base_contains function is deprecated and we ought to use
bb.utils.contains instead.
Change-Id: Ia6c35c969b85062676e6c73359f392bb6a0c0f8a
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The base_contains function is deprecated and we ought to use
bb.utils.contains instead.
Change-Id: I50fe2064e57d2258de817a518118f4d200a737bb
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Changes:
- fix AUD NAL positioning in h.264 encoder output
(SPS/PPS/AUD were ordered incorrectly - AUD has to come first, not last)
- fix build error with examples when --enable-static is used
- pass quality factor in simplified JPEG encoder interface correctly
- add functions for querying and setting header data
useful for modifying headers, like VUI data in the SPS RBSP
- documentation updates
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
This patch helps to quite 'already stripped' warnings
thrown during the build.
Change-Id: Ie6977154571c9eceb51d3f6ff3665f667f4cc007
Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Sujith Haridasan <Sujith_Haridasan@mentor.com>
Signed-off-by: Sujith H <sujith.h@gmail.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
libfslcodec has been renamed as imx-codec, need to update the PACKAGECONFIG.
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
--Change the recipe name from "gst1.0-fsl-plugin" to "imx-gst1.0-plugin"
--Add RREPLACE/RPROVIDES/RCONFLICTS for backwards compatibility.
--Remove dependency on gstreamer1.0-plugins-bad
There is a patch in gstreamer1.0-plugins-bad which intall the header file of
gstaggregator and gstvideoaggregator.
so we can use them outside of gstreamer-plugins-bad package.
Change-Id: I2440ffc17d2921b0dbae5b73c3fd3e9df3742af9
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The new recipe ought to remove the old one and provide the same recipe
name. This ensures that old metadata is kept working.
Change-Id: I5fe1b53e150c1fdd2c8c63895abf211810b4caa1
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
--Change the recipe name from "libfslcodec" to "imx-codec"
--Add RREPLACE/RPROVIDES/RCONFLICTS for backwards compatibility.
--[aac_dec] refine the code for pure c build
aac decoder c build need float point support, which use some
float point function.
Change-Id: Ie8071031b45038107d27b16e2c129376cf4f109d
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The new recipe ought to remove the old one and provide the same recipe
name. This ensures that old metadata is kept working.
Change-Id: Icd6c8240cb063dede707c7b0bd1d256e46542cd2
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
--Change the recipe name from "libfslparser" to "imx-parser"
--Add RREPLACE/RPROVIDES/RCONFLICTS for backwards compatibility.
--Add aac latm parser in parser_libs, support aac latm in mpeg2 parser
Change-Id: I2e3cb92a952fe10136c25206f1527ca1472598cc
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The new recipe ought to remove the old one and provide the same recipe
name. This ensures that old metadata is kept working.
Change-Id: I8c385676aba2b452ac661e308a0aed3badb4f298
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
--Change the recipe name from "fsl-alsa-plugins" to "imx-alsa-plugins"
--Add RREPLACE/RPROVIDES/RCONFLICTS for backwards compatibility.
--Remove 0001-asrc_pair-update-output-buffer-size.patch as it has been
integrated into the package.
Change-Id: Id533118f7edbaa560b7a5e8afce4842e9a0971eb
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The new recipe ought to remove the old one and provide the same recipe
name. This ensures that old metadata is kept working.
Change-Id: Ib66c3e1078aa840903b568da09c9c8eae919cae9
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
--Change the recipe name from "libfslvpuwrap" to "imx-vpuwrap".
--Add RREPLACE/RPROVIDES/RCONFLICTS for backwards compatibility.
--Update 'nLastFrameEndPosPhy' in seqinit stage to avoid feed
the same SPS to vpu repeatedly.
Change-Id: I7dd9e7c2ab9806937d554ac16f37185d9e5f074b
Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The recipe now uses PACKAGECONFIG to allow for enabling/disabling plugins.
Also, mx7 support has been added.
Changes:
* compositor: Rename ImxCompositor(Pad) to ImxVideoCompositor(Pad)
This prevents conflicts if both the NXP plugins and the gstreamer-imx
are installed in the same rootfs
* Add switches to wscript configuration to enable/disable plugins
Until now, all plugins were built (unless their dependencies were
missing). On some i.MX machines, some features are missing. For
example, the i.MX7 has no VPU. To ensure deterministic builds, it is
useful to selectively disable plugins in the build.
* ipu+pxp: : Fix deadlocks and incorrect logging in case of init error
This was causing a freeze if for example one tries to use PxP elements
on an i.MX6 Dual/Quad
* imxv4l2videosrc fixes and enhancements:
* fixes to interlacing support (incl. workarounds for analog TV input)
* remove format restriction in get_caps function
this removes the limitation on I420 formats
* simplified determination of fps (necessary due to driver limitations)
* eglvivsink: wayland: Do not commit before buffers are swapped
This fixes eglSwapBuffer swaps with damaged frames
* Documentation additions
Adds GPU memory leak notess to the FAQ
* vpu: encoder: Expose motion estimation range as property
* vpu: decoder: Drop output frame if its buffer cannot be allocated
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Reviewed-by: Gary Bisson <gary.bisson@boundarydevices.com>
Tested-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
IMXCameraApp: When Enabled "save time to image" item, preview,
find the time can not display completely.
As IPU need 8 pixels alignment, add one workaround in base text overlay
to generate 8 pixels alignment text video buffer. The side effect should
cause all text a little smaller.
Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The new version of the gst1.0-fsl-plugin package uses the preprocessor
to do conditional compilation:
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0)
And to use those macros it includes 'linux/version.h' header file.
This is failing because it is including the 'linux/version.h' file from
the sysroot, which comes from the 'linux-libc-headers' recipe used to
build the toolchain, instead of the real kernel version we are building
and running later on.
Otherwise the build fails with:
error: 'VIDIOC_S_INPUT_CROP' undeclared
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
The fix in this patch has been included in the new version, so there is
no need for this patch anymore. Actually it does not even apply.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Add frame rate check and return failure if frame rate is invalid value (<=0)
Signed-off-by: Lauren Post <lauren.post@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-Support hevc in MPG2 parser.
-Enhance the parsing conditions in SPS nal unit.
Parse system header to get stream id.
For mpeg video, don't call parseh264 to avoid mistakes.
-Fix memory leak, free temp data buffer after parsing header.
Signed-off-by: Lauren Post <lauren.post@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Version alignment with other Multimedia components.
Signed-off-by: Lauren Post <lauren.post@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-Fix memory leak in overlaysink, imxv4l2sink and imxcompositor.
-Fix IPU/PXP frame copying beyond the memory boundary.
-Add more holding buffer number for motion 0 and 1 in imxv4l2sink to fix deinterlace failure.
-Add divx support in vpudec, including 3,4,5,6.
-Add video overlay composition meta support to imxvideoconvert and imxcompositor.
-Remove unsupported formats for pxp 2d deivce.
-Simplify the caps in pad template of imxvideoonvert/imxcompositor/overlaysink/imv4l2sink.
Signed-off-by: Lauren Post <lauren.post@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>