- Extract PetaLinux BSP.
- Create
"recipe-multimedia" folder in project-spec/meta-user
folder.
cd project-spec/meta-user mkdir recipe-multimedia - For
gstreamer patches, follow below steps
- Create “gstreamer” directory in recipe-multimedia
folder.
cd recipe-multimedia mkdir gstreamer - There are 5 different recipes files for gstreamer that
downloads the code and compile
- gstreamer1.0_%.bbappend
- gstreamer1.0-omx_%.bbappend
- gstreamer1.0-plugins-bad_%.bbappend
- gstreamer1.0-plugins-base_%.bbappend
- gstreamer1.0-plugins-good_%.bbappend
- Depending upon patches to which gstreamer package it belongs
to, bbappend file for that package needs to be created to get those patches
applied and compiled on latest source code. For example, if patch fix is for
gst-omx, follow these steps
- Create a
gstreamer1.0-omxdirectory in therecipe-multimedia/gstreamerfoldercd gstreamer mkdir gstreamer1.0-omx - Copy gst-omx patches in
gstreamer1.0-omxdirectory.cp test1.patch recipe-multimedia/gstreamer/gstreamer1.0-omx cp test2.patch recipe-multimedia/gstreamer/gstreamer1.0-omx - Create a
gstreamer1.0-omx_%.bbappendfile inrecipe-multimedia/ gstreamerfolder.vi gstreamer1.0-omx_%.bbappend - Append the following lines in the
gstreamer1.0-omx_%.bbappendfile.FILESEXTRAPATHS_prepend: = "${THISDIR}/ kernel-module-vdu:" SRC_URI_append = " \ file://test1.patch \ file://test2.patch \“
Create similar bbappend files and folder for other gstreamer package to integrate any custom patches in PetaLinux build.
- Create a
- Create “gstreamer” directory in recipe-multimedia
folder.
- For VDU patches, follow these steps:
- Create a
vdudirectory in therecipe-multimediafolder.cd project-spec/meta-user/recipe-multimedia mkdir vdu - There are four different recipes files for VDU that
downloads the code and compile
- kernel-module-vdu_%.bbappend
- vdu-firmware_%.bbappend
- libvdu-xlnx_%.bbappend
- libomxil-xlnx_%.bbappend
- Depending upon patches to which VDU source code it belongs
to, bbappend file for that code base needs to be created to get those
patches applied and compiled on latest source code. For example, if the
patch fix is for VDU drivers, follow these steps:
- Create a
kernel-module-vdudirectory in therecipe-multimedia/vdufoldercd vdu mkdir kernel-module-vdu - Copy VDU driver patches to the
kernel-module-vdudirectory.cp test1.patch recipe-multimedia/vdu/kernel-module-vdu cp test2.patch recipe-multimedia/vdu/kernel-module-vdu - Create a
kernel-module-vdu_%.bbappendfile in therecipe- multimedia/vdufolder:vi kernel-module-vdu_%.bbappend - Append the following lines to the
kernel-module-vdu_%.bbappendfile.FILESEXTRAPATHS_prepend: = "${THISDIR}/ kernel-module-vdu:" SRC_URI_append = " \ file://test1.patch \ file://test2.patch \“Create similar bbappend files and folder for other VDU component to integrate any custom patches in PetaLinux build.
- Create a
- Create a
- Follow PetaLinux build steps to generate updated binaries.Note: If you are not compiling with PetaLinux, review the recipes for additional files necessary for setting up GStreamer. For example, you must include the /etc/xdg/gstomx.conf in the root file system. This file tells gst-omx where to find the OMX integration layer library - libOMX.allegro.core.so.1.