Difference between revisions of "RPM Packaging and support for OpenMAX"
(→Introduction) |
(→GStreamer with GST-OpenMax) |
||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=GStreamer with GST-OpenMax= | =GStreamer with GST-OpenMax= | ||
==Introduction== | ==Introduction== | ||
− | This how-to will describe how to setup and | + | This how-to will describe how to setup and use [http://freedesktop.org/wiki/GstOpenMAX gst-openmax] a GStreamer plug-in that allows communication with OpenMAX IL components. OpenMAX IL is an industry standard that provides an abstraction layer for computer graphics, video, and sound routines. |
==Requirements== | ==Requirements== | ||
Line 7: | Line 7: | ||
* [http://fedoraproject.org/get-fedora Fedora 17] | * [http://fedoraproject.org/get-fedora Fedora 17] | ||
* [http://fedoraproject.org/wiki/Architectures/ARM/Pandaboard Fedora 17 ARM Pandaboard] | * [http://fedoraproject.org/wiki/Architectures/ARM/Pandaboard Fedora 17 ARM Pandaboard] | ||
− | + | ||
===Supported Architectures=== | ===Supported Architectures=== | ||
* x86_64 | * x86_64 | ||
Line 15: | Line 15: | ||
==Downloads== | ==Downloads== | ||
+ | * gst-openmax: https://docs.google.com/file/d/0B0THh1GbRWnAcTJEbjF5N2d3Nms/edit | ||
+ | * gst-openmax-devel: https://docs.google.com/file/d/0B0THh1GbRWnAak1oSzBuNmlyWFU/edit | ||
+ | |||
+ | ==Functional Codecs== | ||
+ | *omx_mp3dec | ||
+ | |||
+ | ==Configuring your environment== | ||
+ | |||
+ | *These instructions have been tested on the Pandaboard Rev A1 running Fedora 17 ARM. | ||
+ | *Startup the Pandaboard and make sure you have internet connectivity. | ||
+ | |||
+ | *Install the Fedora 17 development tools | ||
+ | <pre> | ||
+ | yum update | ||
+ | yum groupinstall "Development Tools" "Development Libraries" | ||
+ | </pre> | ||
+ | |||
+ | *Add the RPM repositories containing the GStreamer plugins | ||
+ | <pre> | ||
+ | rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm | ||
+ | rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm | ||
+ | </pre> | ||
+ | |||
+ | *Install GStreamer plugins | ||
+ | <pre> | ||
+ | yum install gstreamer-{ffmpeg,plugins-{good,ugly,bad{,-free,-nonfree}}} ffmpeg | ||
+ | yum install gstreamer-devel gstreamer-plugins-base-devel | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ==Building OpenMAX IL== | ||
+ | *Download the source code to a temporary directory | ||
+ | <pre> | ||
+ | mkdir -p /tmp/omx | ||
+ | cd /tmp/omx | ||
+ | wget http://downloads.sourceforge.net/omxil/libomxil-bellagio-0.9.0.tar.gz | ||
+ | </pre> | ||
+ | |||
+ | *Extract the tarball | ||
+ | <pre> | ||
+ | tar -xvf libomxil-bellagio-0.9.0.tar.gz | ||
+ | cd liboxmil-bellagio-0.9.0 | ||
+ | </pre> | ||
+ | |||
+ | *Configure the package setting the location to our home directory | ||
+ | <pre> | ||
+ | ./configure --prefix=$HOME/omx | ||
+ | </pre> | ||
+ | |||
+ | *Build and install | ||
+ | **NOTE: Run make as a normal user and make install as root (sudo) | ||
+ | <pre> | ||
+ | make | ||
+ | make install | ||
+ | </pre> | ||
==Installing GST-OpenMAX== | ==Installing GST-OpenMAX== | ||
Line 21: | Line 76: | ||
* Install the RPM using the command below: | * Install the RPM using the command below: | ||
<pre> | <pre> | ||
− | rpm -i gst-openmax-0.2.rpm | + | rpm -i gst-openmax-0.2-1.fc17.x86_64.rpm |
+ | rpm -i gst-openmax-devel-0.1-1.fc17.x86_64.rpm | ||
</pre> | </pre> | ||
==Using GST-OpenMAX== | ==Using GST-OpenMAX== | ||
− | *Check if the codecs have been | + | ===Setting the environment=== |
+ | * Set the location to our libraries | ||
+ | <pre> | ||
+ | export GST_PLUGIN_PATH="$HOME/omx/lib/gstreamer-0.10" | ||
+ | export LD_LIBRARY_PATH="$HOME/omx/lib" | ||
+ | </pre> | ||
+ | |||
+ | *Register omx codecs | ||
+ | **NOTE: This command must be run by the user who complied the package | ||
+ | <pre> | ||
+ | ~/omx/bin/omxregister-bellagio -v | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | *Check if the codecs have been successfully loaded | ||
<pre> | <pre> | ||
gst-inspect | grep omx | gst-inspect | grep omx | ||
</pre> | </pre> | ||
− | + | ===Playing a song=== | |
*Playing a mp3 file "test.mp3" | *Playing a mp3 file "test.mp3" | ||
<pre> | <pre> | ||
Line 36: | Line 106: | ||
</pre> | </pre> | ||
− | == | + | ==FAQs== |
+ | * Will there be support for Fedora 18? | ||
+ | ** We are currently attempting to build our package on the F18 platform but have run into some issues getting our testing environment setup. | ||
+ | |||
+ | ===Errors=== | ||
+ | * (gst-launch-0.10:18996): WARNING **: libomxil-bellagio.so.0: cannot open shared object file: No such file or directory | ||
+ | ** You did not set the location to the libraries, refer to [http://zenit.senecac.on.ca/wiki/index.php?title=RPM_Packaging_and_support_for_OpenMAX&action=submit#Setting_the_environment Setting the environment] | ||
+ | |||
+ | |||
+ | * (gst-plugin-scanner:18985): WARNING **: could not find config file '/home/ryan/.config/gst-openmax.conf'.. using defaults! | ||
+ | ** You did not install OpenMAX IL, refer to [http://zenit.senecac.on.ca/wiki/index.php?title=RPM_Packaging_and_support_for_OpenMAX&action=submit#Building_OpenMAX_IL Building OpenMAX IL] |
Latest revision as of 04:29, 3 December 2012
Contents
GStreamer with GST-OpenMax
Introduction
This how-to will describe how to setup and use gst-openmax a GStreamer plug-in that allows communication with OpenMAX IL components. OpenMAX IL is an industry standard that provides an abstraction layer for computer graphics, video, and sound routines.
Requirements
Tested Platforms
Supported Architectures
- x86_64
- ARM devices with a OMAP processor (Tested on Pandaboard with OMAP 4430)
Required Software
- gstreamer (Included in every Fedora installation)
Downloads
- gst-openmax: https://docs.google.com/file/d/0B0THh1GbRWnAcTJEbjF5N2d3Nms/edit
- gst-openmax-devel: https://docs.google.com/file/d/0B0THh1GbRWnAak1oSzBuNmlyWFU/edit
Functional Codecs
- omx_mp3dec
Configuring your environment
- These instructions have been tested on the Pandaboard Rev A1 running Fedora 17 ARM.
- Startup the Pandaboard and make sure you have internet connectivity.
- Install the Fedora 17 development tools
yum update yum groupinstall "Development Tools" "Development Libraries"
- Add the RPM repositories containing the GStreamer plugins
rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
- Install GStreamer plugins
yum install gstreamer-{ffmpeg,plugins-{good,ugly,bad{,-free,-nonfree}}} ffmpeg yum install gstreamer-devel gstreamer-plugins-base-devel
Building OpenMAX IL
- Download the source code to a temporary directory
mkdir -p /tmp/omx cd /tmp/omx wget http://downloads.sourceforge.net/omxil/libomxil-bellagio-0.9.0.tar.gz
- Extract the tarball
tar -xvf libomxil-bellagio-0.9.0.tar.gz cd liboxmil-bellagio-0.9.0
- Configure the package setting the location to our home directory
./configure --prefix=$HOME/omx
- Build and install
- NOTE: Run make as a normal user and make install as root (sudo)
make make install
Installing GST-OpenMAX
- Download the latest RPM from the download section.
- Install the RPM using the command below:
rpm -i gst-openmax-0.2-1.fc17.x86_64.rpm rpm -i gst-openmax-devel-0.1-1.fc17.x86_64.rpm
Using GST-OpenMAX
Setting the environment
- Set the location to our libraries
export GST_PLUGIN_PATH="$HOME/omx/lib/gstreamer-0.10" export LD_LIBRARY_PATH="$HOME/omx/lib"
- Register omx codecs
- NOTE: This command must be run by the user who complied the package
~/omx/bin/omxregister-bellagio -v
- Check if the codecs have been successfully loaded
gst-inspect | grep omx
Playing a song
- Playing a mp3 file "test.mp3"
gst-launch-0.10 filesrc location="test.mp3" ! omx_mp3dec use-timestamps=false ! audioconvert ! alsasink
FAQs
- Will there be support for Fedora 18?
- We are currently attempting to build our package on the F18 platform but have run into some issues getting our testing environment setup.
Errors
- (gst-launch-0.10:18996): WARNING **: libomxil-bellagio.so.0: cannot open shared object file: No such file or directory
- You did not set the location to the libraries, refer to Setting the environment
- (gst-plugin-scanner:18985): WARNING **: could not find config file '/home/ryan/.config/gst-openmax.conf'.. using defaults!
- You did not install OpenMAX IL, refer to Building OpenMAX IL