gst-dsp icon indicating copy to clipboard operation
gst-dsp copied to clipboard

GStreamer elements for TI's OMAP DSP

Texas Instruments provides DSP algorithms for the OMAP 3 platform used in a number of devices like beagleboard, Nokia N900, and Nokia N9.

The gst-dsp project aims to provide GStreamer elements to take advantage of those algorithms. The list includes video/image decoders and encoders.

Unlike other similar projects there are no dependencies (no openmax, no libtidspbridge).

The features include:

  • video decoding (MPEG-4, H.263, H.264, WMV)
  • video encoding (MPEG-4, H.263, H.264)
  • image encoding/decoding (JPEG)
  • zero-copy

The advantages over other solutions are:

  • simpler code (5k vs 50k)
  • better performance (4x)

== building ==

There are no dependencies, so just:

./configure make

If you are using an old version of TI's dspbrdige driver:

DSP_API=0 ./configure

== tidsp ==

You'll need a kernel with tidspbridge driver, the DSP firmware in /lib/dsp, and the DSP running a proper baseimage (baseimage.dof).

See: http://omapzoom.org/wiki/L23.i3.8_Release_Notes

== compatibility ==

gst-dsp supports multiple versions of DSP socket-nodes, and tidspbridge driver.

socket nodes:

L23.i3.8: SN_API=2 L23.i3.3: SN_API=1

Note that the jpeg encoder in L23.i3.8 doesn't work (they compiled it wrongly), and the one in L23.i3.3 might hang on some pipelines; you might have to turn off enable-last-buffer, since only one output buffer would be available at any given time.

tidspbridge:

since staging: DSP_API=2 since ioctl renumbering: DSP_API=1