GstSEIMetadata/Getting Started/Building GstSEIMetadata: Difference between revisions
Maumontero (talk | contribs) (Created page with "<noinclude> {{GStreamer H264 - H265 Metadata/Head|previous=Getting Started/Getting the code|next=Getting Started/Getting the code|keywords=}} </noinclude> <noinclude> {{GStre...") |
Maumontero (talk | contribs) No edit summary |
||
Line 2: | Line 2: | ||
{{GStreamer H264 - H265 Metadata/Head|previous=Getting Started/Getting the code|next=Getting Started/Getting the code|keywords=}} | {{GStreamer H264 - H265 Metadata/Head|previous=Getting Started/Getting the code|next=Getting Started/Getting the code|keywords=}} | ||
</noinclude> | </noinclude> | ||
== Dependencies == | |||
The GstSEI plugin has the following dependencies: | |||
=== GStreamer === | |||
The GStreamer packages are likely already installed in your Ubuntu OS distribution. In case you want to double-check and install the missing packages, run the following commands. | |||
<syntaxhighlight lang=bash> | |||
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-bad | |||
</syntaxhighlight> | |||
=== Meson === | |||
The GstSEI plugin makes use of the Meson build system. To build correctly this plugin you need to use the latest version of Meson: | |||
First, make sure python dependencies and ninja are installed | |||
<syntaxhighlight lang=bash> | |||
sudo apt install python3 python3-pip python3-setuptools python3-wheel ninja-build | |||
</syntaxhighlight> | |||
Then, use '''pip3''' install '''Meson''' directly from its repository. | |||
<syntaxhighlight lang=bash> | |||
sudo -H pip3 install git+https://github.com/mesonbuild/meson.git | |||
</syntaxhighlight> | |||
=== Hotdoc === | |||
The GstSEI plugin makes use of the Hotdoc documentation. In order to install it you need to follow the next steps: | |||
First, install the Hotdoc dependencies: | |||
<syntaxhighlight lang=bash> | |||
sudo -H pip3 install markupsafe==1.1.1 | |||
sudo apt install python3-dev libxml2-dev libxslt1-dev cmake libyaml-dev libclang-dev llvm-dev libglib2.0-dev libjson-glib-dev flex | |||
</syntaxhighlight> | |||
Then, install their latest release version with: | |||
<syntaxhighlight lang=bash> | |||
sudo -H pip3 install hotdoc | |||
</syntaxhighlight> | |||
== Building the project == | |||
The GstSEI plugin must be built natively on the hardware. On its simplest form run: | |||
<syntaxhighlight lang=bash> | |||
meson build --prefix /usr/ | |||
ninja -C build | |||
ninja -C build test | |||
sudo ninja -C build install | |||
</syntaxhighlight> | |||
For additional customization, you may refer to the following table of options: | |||
<center>` | |||
{| class="wikitable" | |||
|- | |||
! Configure Option !! Description | |||
|- | |||
| -Dexamples=disabled || Skip examples compilation | |||
|- | |||
| -Dtests=disabled || Skip tests compilation | |||
|- | |||
| -Ddoc=disabled || Skip documentation generation | |||
|- | |||
| --prefix /usr || Set the installation path of the library | |||
|} | |||
<b>Table 1.</b> GstSEI configuration options (Meson)</caption> | |||
</center> | |||
=== Check the element === | |||
After installing the plugin test that the plugin is being properly picked up by GStreamer by running: | |||
<pre> | |||
gst-inspect-1.0 sei | |||
</pre> | |||
with expected output: | |||
<pre> | |||
Plugin Details: | |||
Name sei | |||
Description Gstreamer plugin to add meta-data as SEI NAL units | |||
Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libsei.so | |||
Version 0.1.0 | |||
License Proprietary | |||
Source module gst-sei | |||
Binary package gst-sei | |||
Origin URL Unknown package origin | |||
seiinject: SEI Inject Meta-data | |||
seiextract: SEI Extract Meta-data | |||
2 features: | |||
+-- 2 elements | |||
</pre> | |||
And also run: | |||
<pre> | |||
gst-inspect-1.0 | grep sei | |||
</pre> | |||
with expected output: | |||
<pre> | |||
sei: seiinject: SEI Inject Meta-data | |||
sei: seiextract: SEI Extract Meta-data | |||
</pre> | |||
<noinclude> | <noinclude> | ||
{{GStreamer H264 - H265 Metadata/Foot|Getting Started/Getting the code|Getting Started/Getting the code}} | {{GStreamer H264 - H265 Metadata/Foot|Getting Started/Getting the code|Getting Started/Getting the code}} | ||
</noinclude> | </noinclude> |
Revision as of 20:09, 23 June 2021
GstSEIMetadata |
---|
GstSEIMetadata Basics |
Getting Started |
User Guide |
Examples |
Performance |
Contact Us |
Dependencies
The GstSEI plugin has the following dependencies:
GStreamer
The GStreamer packages are likely already installed in your Ubuntu OS distribution. In case you want to double-check and install the missing packages, run the following commands.
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-bad
Meson
The GstSEI plugin makes use of the Meson build system. To build correctly this plugin you need to use the latest version of Meson:
First, make sure python dependencies and ninja are installed
sudo apt install python3 python3-pip python3-setuptools python3-wheel ninja-build
Then, use pip3 install Meson directly from its repository.
sudo -H pip3 install git+https://github.com/mesonbuild/meson.git
Hotdoc
The GstSEI plugin makes use of the Hotdoc documentation. In order to install it you need to follow the next steps:
First, install the Hotdoc dependencies:
sudo -H pip3 install markupsafe==1.1.1 sudo apt install python3-dev libxml2-dev libxslt1-dev cmake libyaml-dev libclang-dev llvm-dev libglib2.0-dev libjson-glib-dev flex
Then, install their latest release version with:
sudo -H pip3 install hotdoc
Building the project
The GstSEI plugin must be built natively on the hardware. On its simplest form run:
meson build --prefix /usr/ ninja -C build ninja -C build test sudo ninja -C build install
For additional customization, you may refer to the following table of options:
Configure Option | Description |
---|---|
-Dexamples=disabled | Skip examples compilation |
-Dtests=disabled | Skip tests compilation |
-Ddoc=disabled | Skip documentation generation |
--prefix /usr | Set the installation path of the library |
Check the element
After installing the plugin test that the plugin is being properly picked up by GStreamer by running:
gst-inspect-1.0 sei
with expected output:
Plugin Details: Name sei Description Gstreamer plugin to add meta-data as SEI NAL units Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libsei.so Version 0.1.0 License Proprietary Source module gst-sei Binary package gst-sei Origin URL Unknown package origin seiinject: SEI Inject Meta-data seiextract: SEI Extract Meta-data 2 features: +-- 2 elements
And also run:
gst-inspect-1.0 | grep sei
with expected output:
sei: seiinject: SEI Inject Meta-data sei: seiextract: SEI Extract Meta-data