Skip to content
GStreamer elements for TI's OMAP DSP
C Shell
Find file
Latest commit f2e7b94 Felipe Contreras README: add compatibility notes
Signed-off-by: Felipe Contreras <>
Failed to load latest commit information.
doc doc: generic updates
tidsp jpeg: fixes for old socket-node
.gitignore Add 'configure' script
Makefile build: cleanup a bit
Makefile.conf Add default Makefile.conf
README README: add compatibility notes
async_queue.c Update licence notices
async_queue.h Update licence notices
configure Add 'configure' script
dmm_buffer.h dmm_buffer: fix for DSP_API=2
dsp_bridge.c bridge: add extra safety to be nice with valgrind
dsp_bridge.h dmm_buffer: set correct buffer attributes
get-version get-version: trivial improvements
get_bits.h get_bits: add show_bits function
gstdspadec.c Add extra checks for create_args() failures
gstdspadec.h Fix compilation warnings
gstdspbase.c base: fix access to correct dmm_buffer data
gstdspbase.h dspvdec: dynamically adapt to resolution changes
gstdspbuffer.c gst-dsp-buffer: fix memory leak
gstdspbuffer.h Add new gst-dsp-buffer
gstdspdummy.c Remove unused 'alignment' field
gstdspdummy.h headers: adhear to gtk-docs weired gobject requirements
gstdsph263enc.c Activate pinned buffers for missing encoders
gstdsph264enc.c {h264,mp4v}enc: enable buffer recycling
gstdsph264enc.h headers: adhear to gtk-docs weired gobject requirements
gstdspipp.c ipp: fix alignment of strings
gstdspipp.h Fix gtk-doc stuff for ipp
gstdspjpegenc.c Activate pinned buffers for missing encoders
gstdspjpegenc.h headers: adhear to gtk-docs weired gobject requirements
gstdspmp4venc.c {h264,mp4v}enc: enable buffer recycling
gstdspmp4venc.h headers: adhear to gtk-docs weired gobject requirements
gstdspparse.c parse: avoid some error printing on H.264 checks
gstdspparse.h Add parser test
gstdspvdec.c Add gstdsp_vdec_len_fixup() helper
gstdspvdec.h Add gstdsp_vdec_len_fixup() helper
gstdspvenc.c jpeg: fixes for old socket-node
gstdspvenc.h venc: guess intra-refresh based on mode
gstdspvpp.c Add extra checks for create_args() failures
log.c log: only send to stderr pr_err()
log.h Update licence notices
parse-test.c Add parser test
plugin.c ipp: scaffold element
plugin.h Update licence notices
sem.h sem: add new g_sem_down_timed()
util.c util: fix map_buffer() warning message
util.h util: cleanup gstdsp_map_buffer() variables


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

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:


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).


== 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.


 since staging: DSP_API=2
 since ioctl renumbering: DSP_API=1
Something went wrong with that request. Please try again.