Jump to content

Creating a New GStreamer Element or Application Using Templates: Difference between revisions

mNo edit summary
 
Line 14: Line 14:
== Preparation for Creating a new GStreamer Element or GStreamer application using Templates  ==
== Preparation for Creating a new GStreamer Element or GStreamer application using Templates  ==


All the utilities described in this wiki are shipped with the `gst-plugins-bad` project, so start by cloning that project.  The steps shown were tested on Ubuntu 16.04.  
All the utilities described in this wiki are included within the GStreamer monorepo, so start by cloning it.  The steps shown were tested on Ubuntu 22.04.  


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
git clone https://github.com/GStreamer/gst-plugins-bad.git
git clone https://github.com/GStreamer/gstreamer.git


# If you are building for a specific version, switch to it now. Otherwise, you can remain in the 'master'
# If you are building for a specific version, switch to it now. Otherwise, you can remain in the 'main' branch.
cd gstreamer
git checkout $BRANCH
git checkout $BRANCH


# I recommend saving a copy of the indent script somewhere in your PATH
# We recommend saving a copy of the gst-indent script somewhere in your PATH
cd gst-plugins-bad
sudo cp scripts/gst-indent /usr/local/bin/
NOCONFIGURE=1 ./autogen.sh
sudo cp common/gst-indent /usr/local/bin/
</syntaxhighlight>
</syntaxhighlight>


If you are going to be developing a new plug-in, then you most likely need installed GStreamer development libraries as well.
If you are going to be developing a new plugin, then you most likely need to install the GStreamer development libraries as well.
 
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev indent
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev indent
5

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.