Difference between revisions of "BeagleBoard/DSP Howto"

From eLinux.org
Jump to: navigation, search
(Add gst-openmax stuff.)
(Add run instructions.)
Line 1: Line 1:
 
This article explains how to use the DSP with TI's deliverables.
 
This article explains how to use the DSP with TI's deliverables.
 +
 +
= Setup =
  
 
== Kernel driver ==
 
== Kernel driver ==
Line 19: Line 21:
 
  CONFIG_MPU_BRIDGE=m
 
  CONFIG_MPU_BRIDGE=m
 
</pre>
 
</pre>
 
On the board use this to load the module:
 
<code>
 
modprobe bridgedriver base_img=baseimage.dof
 
</code>
 
 
'''note''': baseimage.dof will be mentioned in later steps.
 
  
 
== TI binaries ==
 
== TI binaries ==
Line 57: Line 52:
 
  ./configure --prefix=/usr
 
  ./configure --prefix=/usr
 
  make DESTDIR='''rootfs''' install
 
  make DESTDIR='''rootfs''' install
 +
 +
= Running =
 +
 +
On the board use this to load the module:
 +
 +
modprobe bridgedriver base_img=/lib/dsp/baseimage.dof
 +
 +
You should be able to use the gst-openmax elements now:
 +
 +
gst-launch-0.10 filesrc location="foobar.avi" ! avidemux ! omx_mpeg4dec ! omapfbsink

Revision as of 09:04, 22 September 2008

This article explains how to use the DSP with TI's deliverables.

Setup

Kernel driver

In order to use the DSP you would need TI's bridgedriver module on the kernel. For that you would need Hiroshi's patches on top of linux-omap:

git clone http://www.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git
cd linux-omap-2.6
wget http://4869037.web.fc2.com/tidspbridge-20080920.tgz
tar xvzf tidspbridge-20080920.tgz
git am *.patch
make omap3_beagle_defconfig

Then make menuconfig and add the following options in the menuconfig:

 CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14
 CONFIG_MPU_BRIDGE=m

TI binaries

In order to get the DSP binaries for multimedia processing you need to download TI's OpenMAX IL package. Once you have extracted the tarball you'll have to run the installer TI-OMX-Sample-Firmware-0.3-Linux-x86-Install and accept the license agreement.

You would end up with a bunch of binaries in lib/dsp, copy them to your root filesystem at the same location (/lib/dsp).

OpenMAX IL

The easiest way to use the DSP capabilities is through the OpenMAX IL API, but in order to compile TI's implementation a special DSP library is required.

libdspbridge

git clone git://github.com/felipec/libdspbridge.git
cd libdspbridge
make DESTDIR=rootfs install

libomxil-ti

git clone git://github.com/felipec/libomxil-ti.git
cd libomxil-ti
make BRIDGE_CFLAGS=-I../libdspbridge/inc BRIDGE_LIBS=-L../libdspbridge/lib DESTDIR=rootfs install

gst-openmax

You would need to compile gst-openmax inside scratchbox:

git clone git://github.com/felipec/gst-openmax.git
cd gst-openmax
./configure --prefix=/usr
make DESTDIR=rootfs install

Running

On the board use this to load the module:

modprobe bridgedriver base_img=/lib/dsp/baseimage.dof

You should be able to use the gst-openmax elements now:

gst-launch-0.10 filesrc location="foobar.avi" ! avidemux ! omx_mpeg4dec ! omapfbsink