Difference between revisions of "BeagleBoard/DSP Howto"

From eLinux.org
Jump to: navigation, search
m (Kernel driver: Update Hiroshi's patches.)
(Move gst-openmax information.)
Line 36: Line 36:
 
Just:
 
Just:
 
  ./ping.out
 
  ./ping.out
 
== OpenMAX IL ==
 
 
The easiest way to use the DSP capabilities is through the [http://www.khronos.org/openmax/ 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
 
./autogen.sh --noconfigure
 
./configure --prefix=/usr
 
make DESTDIR='''rootfs''' install
 
 
= Related stuff =
 
 
In order to get the omapfb usable for video playback you need this kernel argument:
 
video=omapfb:vram:2M,vram:4M
 
 
And the GStreamer element:
 
git clone git://github.com/felipec/gst-omapfb.git
 
cd gst-omapfb
 
make DESTDIR='''rootfs''' install
 
  
 
= Running =
 
= Running =
Line 79: Line 43:
 
  modprobe bridgedriver base_img=/lib/dsp/baseimage.dof
 
  modprobe bridgedriver base_img=/lib/dsp/baseimage.dof
  
You should be able to use the gst-openmax elements now:
+
= More information =
  
gst-launch-0.10 filesrc location="foobar.avi" ! avidemux ! omx_mpeg4dec ! omapfbsink
+
* [[BeagleBoard/gst-openmnax]]

Revision as of 17:11, 20 October 2008

This article explains how to use the DSP in OMAP3 at BeagleBoard with TI's deliverables. For DSP tool chain see C64x+ DSP.

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-20081010.tgz
tar xvzf tidspbridge-20081010.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).

ping test

If you want to test the DSP you can try the simple ping test provided in this package.

Just:

./ping.out

Running

On the board use this to load the module:

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

More information