BeagleBox DSP

Note
This page is a place holder for notes related to bringing up DSP on a BeagleBoard C4 using the BeagleBox build system.

Sites of interest:
 * http://elinux.org/BeagleBoard/gst-dsp
 * https://code.google.com/p/gst-dsp/ - code for gst-dsp
 * http://elinux.org/BeagleBoard/DSP_Howto
 * http://elinux.org/BeagleBoard/DSP_Clarification#dsp-bridge
 * http://dev.omapzoom.org/?p=tidspbridge/userspace-dspbridge.git;a=summary (DSP userspace GIT repo) - Has source code for commands listed on http://elinux.org/BeagleBoard/DSP_Howto
 * http://elinux.org/BeagleBoard_Ubuntu_%26_DSP_From_Sources

Updated Big Buck Bunny AVI:
 * http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_surround-fix.avi

Notes:
 * gst-dsp (google code site) has more recent DSP binaries than gforge.ti.com.
 * Buildroot 2012.05 supports gst-dsp latest releases, but does not include dsp-tools package.
 * Fixing mplayer mmap errors:
 * ofbset -fb /dev/fb1 -mem 2764800
 * http://boards.openpandora.org/index.php?/topic/1816-neon-accelerated-mplayer/

Based on all this research, it looks like my DSP stuff should just work. Here is what I get when I load the modules and try to run gst-dsp:

-rw-r--r--   1 root     root       1292052 Sep  3  2012 /lib/dsp/baseimage.dof [ 315.134887] bridgedriver: module is from the staging directory, the quality is unknown, you have been warned. [ 315.222015] proc_load: Processor Loaded /lib/dsp/baseimage.dof [ 315.228668] bridge_brd_start: Failed to get dsp mailbox handle [ 315.234832] proc_start: Failed to start the dsp [ 315.261627] DSP Bridge driver loaded
 * 1) modprobe mailbox
 * 2) modprobe bridgedriver
 * 3) ls -l /lib/dsp/baseimage.dof
 * 1) modprobe bridgedriver base_img=/lib/dsp/baseimage.dof

bridgedriver 150089 0 - Live 0xbf167000 (C) mailbox 3729 1 bridgedriver, Live 0xbf163000 pvrsrvkm 175742 0 - Live 0xbf0c8000 (O) drm 192701 1 pvrsrvkm, Live 0xbf082000 (O) arc4 1038 2 - Live 0xbf07e000 carl9170 69177 0 - Live 0xbf068000 ath 13246 1 carl9170, Live 0xbf061000 mac80211 176132 1 carl9170, Live 0xbf02c000 cfg80211 144640 3 carl9170,ath,mac80211, Live 0xbf000000 crw-rw   1 root     root      250,   0 Dec 31 22:14 /dev/DspBridge -r--r--r--   1 root     root             0 Jan  7 02:43 /proc/interrupts CPU0 7:         0      INTC  TWL4030-PIH 9:         0      INTC  l3-debug-irq 10:         0      INTC  l3-app-irq 11:         0      INTC  prcm 12:      7692      INTC  DMA 20:         0      INTC  gpmc 21:       277      INTC  SGX ISR 25:         4      INTC  OMAP DISPC, omapdss_dsi.0 28:         0      INTC  DspBridge    iommu fault 56:       241      INTC  omap_i2c 61:         0      INTC  omap_i2c 72:         0      INTC  serial idle 73:         0      INTC  serial idle 74:      3318      INTC  serial idle, OMAP UART2 76:         1      INTC  ohci_hcd:usb2 77:   8507139      INTC  ehci_hcd:usb1 83:     13065      INTC  mmc0 95:  12020109      INTC  gp timer 167:         0      GPIO  user 368:         0   twl4030  twl4030_gpio 373:         0   twl4030  twl4030_power 376:         0   twl4030  twl4030_pwrbutton 379:         0   twl4030  rtc0 384:         0   twl4030  mmc0 IPI0:         0  Timer broadcast interrupts IPI1:         0  Rescheduling interrupts IPI2:         0  Function call interrupts IPI3:         0  Single function call interrupts IPI4:         0  CPU stop interrupts Err:         0
 * 1) lsmod
 * 1) ls -l /dev/DspBridge
 * 1) ls -l /proc/interrupts
 * 1) cat /proc/interrupts

Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Missing element: AC-3 (ATSC A/52) decoder WARNING: from element /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: No decoder available for type 'audio/x-ac3, rate=(int)48000, channels=(int)6'. Additional debug info: gsturidecodebin.c(874): unknown_type_cb : /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0 Missing element: GStreamer element autovideosink ERROR: from element /GstPlayBin2:playbin20/GstPlaySink:playsink0: The autovideosink element is missing. Additional debug info: gstplaysink.c(1383): gen_video_chain : /GstPlayBin2:playbin20/GstPlaySink:playsink0 ERROR: pipeline doesn't want to preroll. Setting pipeline to NULL ... Freeing pipeline ...
 * 1) gst-launch playbin2 uri=file:///root/big_buck_bunny_480p_surround.avi