IGEP GST FRAMEWORK 3.40.00
From IGEP - ISEE Wiki
Contents
What is?
IGEP gst framework it's based on TI DVSDK. It's modified version for provide all DSP essential packages and the gstreamer DSP plugin for use it in IGEP platforms.
Changes From 3.10.10
- Support linux kernel 2.6.37.y
- Upgraded IGEP-X-Loader 2.5.0-1
- Included & upgraded toolchain IGEP SDK Yocto Toolchain 1.2.2-3
- DSP & ARM Memory map changed.
Dependences
- IGEP SDK Yocto Toolchain 1.2.1-2
- linux kernel 2.6.37.y
- Host: Ubuntu or compatible distribution
- Automake 1.7 and Libtool ( sudo apt-get install autoconf automake libtool )
Download
The package is available at the Official ISEE download area.
Download the package and uncompress this package as normal user in your desired directory (don't use sudo command for decompress this file)
How to Build
Ensure that you've the right toolchain installed (you can install it using the script included in the root package directory install_toolchain.sh)
Execute the script: build_configure.sh
It will ask you for the right processor platform:
This program will configure and build this software Select your processor: <A> DM3730, <B> OMAP3530 Please choose one. (default: DM3730)
After that you're ready for copy it inside your board.
All build binaries will reside inside the target directory under your selected platform, copy all the content inside your board.
IGEP-X-Loader and Linux kernel have self own howto about build and install it ...
Inside target/script directory you can found some useful scripts.
Memory Map
This package uses the same memory structure that dvsdk from TI, it must be configured as (in kernel command line):
mem=50M@0x80000000
mem=383M@0x88000000
BUGS Detected
Release | Description | Workaround | Other |
3.40.00 | Alsa dev headers not included | follow the instructions included inside tools/packages directory | see install.txt file |
3.40.00 | build_configure.sh has a syntax error and it not handle correctly any directoy name change. |
Go to line 19 and replace the line using this alternative: script="s|"$old_workspace"|"$WORKSPACE"|g" |
Play with it
[IMPORTANT] Some modules requires root privileges account.
Normally in this example we will use 2 frame buffers and we will use the fb2 for playing the videos.
We only need load the modules one time, we provide in the target/scripts directory some useful scripts. You should load the modules using the load-modules.sh script (just remember execute it as root).
After load all modules then you should configure the fb1, it's suggested use the fb1-16M-settings.sh script after that the video image can be black or with random pixels (just it's normal) now you've the fb1 and fb0 running.
fb1 it's on TOP and fb0 it's under fb1, it means that if you don't enable the transparency it's not possible see the fb0.
Now, you're ready for play some nice video using gstreamer, you can use these pipelines:
This is for play a avi file and uses the omapdmaifbsink.
gst-launch-0.10 -v filesrc location=$1 ! avidemux name=demux demux.audio_00 ! queue max-size-buffers=8000 max-size-time=0 max-size-bytes=0 \ ! TIAuddec1 ! alsasink demux.video_00 ! queue max-size-buffers=2 max-size-time=0 max-size-bytes=0 ! TIViddec2 engineName=codecServer ! omapdmaifbsink
Or You can use this other for play a mp4 file it uses a TIDmaiVideoSink.
gst-launch-0.10 -v filesrc location=$1 ! qtdemux name=demux demux.audio_00 ! queue max-size-buffers=8000 max-size-time=0 max-size-bytes=0 \ ! TIAuddec1 ! alsasink demux.video_00 ! queue max-size-buffers=2 max-size-time=0 max-size-bytes=0 ! TIViddec2 engineName=codecServer \ ! queue ! TIDmaiVideoSink displayStd=fbdev displayDevice=/dev/fb1 accelFrameCopy=TRUE contiguousInputFrame=1
Useful Links
If you have any question, don't ask to ask at the IGEP Community Forum or the IGEP Community Chat |