- Pandora Handheld PC / gst-dsp -
gst-dsp を Pandora 用にコンパイルします。
[クロスコンパイラ]Crosscompiler Toolchain Based On Openpandora.org Ipks に記載されている openpandora_toolchain.sh でクロスコンパイル環境を構築している必要があります。
gst-dsp のソースを取得します。
% git clone git://github.com/felipec/gst-dsp.git
configure を修正します。
% cd gst-dsp % cp configure configure.Pandora % vi configure.Pandora % diff -C 0 configure configure.Pandora *** configure --- configure.Pandora *************** *** 2 **** --- 3 ---- + CROSS_COMPILE=${HOME}/pandora-dev/arm-2011.09/bin/arm-none-linux-gnueabi- *************** *** 7,8 **** ! GST_CFLAGS=$(pkg-config --cflags gstreamer-0.10) ! GST_LIBS=$(pkg-config --libs gstreamer-0.10) --- 8,9 ---- ! GST_CFLAGS=$(${HOME}/pandora-dev/arm-2011.09/bin/arm-none-linux-gnueabi-pkg-config --cflags gstreamer-0.10) ! GST_LIBS=$(${HOME}/pandora-dev/arm-2011.09/bin/arm-none-linux-gnueabi-pkg-config --libs gstreamer-0.10) *************** *** 16 **** ! cat > Makefile.conf <<EOF --- 17 ---- ! cat > Makefile.Pandora <<EOF *************** *** 31 **** --- 33,34 ---- + + grep -v 'include Makefile.conf' Makefile >> Makefile.Pandora
configure を実行し、作成された Makefile.Pandora を修正します。
% configure.Pandora % vi Makefile.Pandora
CFLAGS := -O2 -ggdb -Wall と続く行の最後に
-mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -fassociative-math -funsafe-math-optimizations
を付け加えます。
GST_CFLAGS := -pthread と続く行の最後に
-I$(HOME)/pandora-dev/arm-2011.09/usr/include/gstreamer-0.10
を付け加えます。
GST_LIBS := -pthread と続く行の最後に
-lz
を付け加えます。
コンパイルします。
% make -f Makefile.Pandora
出来た libgstdsp.so と gst-dsp-parse を Pandora に持って行きます。
Pandora 上で以下を実行します。
$ sudo cp libgstdsp.so /usr/lib/gstreamer-0.10/
$ sudo cp gst-dsp-parse /usr/bin/
$ sudo modprobe mailbox
$ sudo modprobe mailbox_mach
$ sudo modprobe bridgedriver base_img=/lib/dsp/baseimage.dof
$ sudo /usr/pandora/scripts/op_dsp.sh start
DSP Bridge ドライバのロードでカーネルがエラーを出しますが、一応動きます。
ただし、少々不安定かもしれません。
gst-dsp (https://code.google.com/p/gst-dsp/) から tidsp-binaries-23.i3.8.tar.gz をダウンロードします。
Pandora 上で以下を実行します。
$ tar xf tidsp-binaries-23.i3.8.tar.gz $ cd tidsp-binaries-23.i3.8 $ sudo cp baseimage.dof *.dll64P LICENSE /lib/dsp/
baseline プロファイル、レベル 3.0 に対応している様です。
(main プロファイルは再生出来ませんでした)
TI のサイトには
H.264 Decoder BP@Level 3.0 Max:D1@30 frames per second
の記述があります。
gst-omapfb の設定を行い併用しますと、更に CPU 負荷が下がります。
Ubuntu 13.10 x86_64 でクロスコンパイルしたバイナリです。
**** お約束ですが、このバイナリは無保証です。 ****
**** ご自身の判断、責任のもとご使用してください。 ****
This page is written in Japanese.
(c) Sano Yukihiko