Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

IGEP GST FRAMEWORK 3.10.10

4,528 bytes added, 13:22, 14 May 2012
m
Download
IGEP gst framework it's based on TI DVSDK. It's modified version for provide all DSP&nbsp;essential packages and the [[GStreamer|gstreamer]] DSP plugin for use it in IGEP platforms. <br>
= Changes From 3.1000.00 =
*Support linux kernel 2.6.35.13-23<br> *ISEE kernel 2.6.35.13-2 *Update codec server to codecs-omap3530_4_02_00_00.<br>*Added MP3 codec (decodeonly).<br>*Added MPEG4 and H264 720P Video Encoder.<br>*Added IGEP X-Loader.<br> *Prebuild binaries for DM3730 and OMAP3530 included.<br>
== Dependences<br> ==
*Ubuntu 10.10
*Automake 1.7 and Libtool ( '''sudo apt-get install autoconf automake libtool ''')
*Gstreamer.<br> *SDK:&nbsp;<span style="color: rgb(255, 0, 0);">alsa-dev_1.0.20-r1_armv7a.ipk&nbsp;</span><span style="color: rgb(0, 0, 0);">(Now included inside the directory: tools/package).</span><span style="color: rgb(0, 0, 0);" /><br>
= Download<br> =
The package be is available in at the Official ISEE site, at the IGEPv2 download area.
<span style="colorhttp: rgb(51, 102, 255);">01-ISEE_Products --&gt; IGEPv2 --&gt; SW_Tools_SDK --&gt; igep_gst--&gt; //isee.biz/component/zoo/item/igep-dsp-gst-framework-3_10_00.tar.bz2</span><br>  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<br> =
Rules.make<br>
'''<span style="color: rgb(2550, 0, 0128);">'''''Your igep-gst directory path:''' ''</span>'''
'''<span style="color: rgb(255, 0, 0);">WORKSPACE=/home/&lt;YOUR_USER_PATH&gt;/Projects/myigep/workspace/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_00</span>'''
'''<span>DVSDK_INSTALL_DIR=$(WORKSPACE)/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_10</span>'''  <span style="color: rgb(2550, 0, 0128);">'''Your toolchain directory path:'''</span>'''
'''<span style="color: rgb(255, 0, 0);">CSTOOL_DIR=/usr/local/poky/eabi-glibc</span>'''
Now the kernel it's included with this package you don't need to change anything related to the kernel.
== BuildSelect your right processor:<br> ==
Follow next steps:<br><pre>cd '''<span style="color: rgb(2550, 0, 0255);">/home/&lt;YOUR_USER_PATH&gt;/Projects/myigep/workspace/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_00</span>''''''<span stylePLATFORM="color: rgbo3530 (255, 0, 0OMAP3530);">make</span>''''''<span style="color: rgb(255, 0, 0);"></span>'''</pre><br>
<brspan style="color: rgb(0, 0, 255);">'''''PLATFORM=dm3730 (DM3730)'''''''''' '''''</span>
You have two options: build all or every package individually. == Build &amp; Clean<br> ==
a) All packages Build the framework:<br> <pre>cd /home/&lt;YOUR_USER_PATH&gt;/Projects/myigep/workspace/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_10make</pre> Clean the framework<br> <pre>cd /home/&lt;YOUR_USER_PATH&gt;/Projects/myigep/workspace/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_10make clean</pre> == Build &amp; Clean Manually<br> ==
Build the framework:<br> <pre>cd /home/&lt;YOUR_USER_PATH&gt;/Projects/myigep/workspace/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_10make linuxmake dsplinkmake lpmmake cmemmake sdmamake codecsmake c6accelmake c6runmake dmaimake gst_ti</pre> Clean the framework:<br> <pre>cd /home/&lt;YOUR_USER_PATH&gt;/Projects/myigep/workspace/igep-dsp-gst-framework/igep-dsp-gst-framework-3_10_10make linux_cleanmake dsplink_cleanmake lpm_cleanmake cmem_cleanmake sdma_cleanmake codecs_cleanmake c6accel_cleanmake c6run_cleanmake dmai_cleanmake gst_ti_clean</pre> = Install =
b) One package After build the framework you must install all build packages inside the target directory using below command.<br> <pre>make install</pre> Inside the target directory you've two new directories:<br>
make &lt;package_name&gt; dm3730-binaries (modules, kernel ... for DM3730)<prebr>make dmai
make gstomap3530-binaries (modules, kernel ... for OMAP3530)
make dsplink Copy target directory to your board as:<br> <pre>cd targetscp -r dm3730-binaries &lt;remote_user&gt;@&lt;IGEP IP&gt;:/home/&lt;your_desired_directory&gt;scp -r scripts &lt;remote_user&gt;@&lt;IGEP IP&gt;:/home/&lt;your_desired_directory&gt;
..Also included you've the IGEP Xloader and the configuration file.
</pre>
For clean the build you should executeEnter inside your IGEP board and go to gstreamer directory normally inside /usr/lib/gstreamer-0.10 and create two symbolic links from this directory to your files: <br>  cd /usr/lib/gstreamer-0.10  ln -s /home/&lt;your_desired_directory&gt;/cs.x64P  ln -s /home/&lt;your_desired_directory&gt;/libgstticodecplugin.so
make clean or copy the files directly as inside target directory location.
or == Target Structure ==<pre>drwxr-xr-x 5 mcaro mcaro 4096 2011-08-18 11:55 dm3730-binarieslrwxrwxrwx 1 mcaro mcaro 37 2011-08-19 11:49 igep.ini -&gt; ../psp/igep-x-loader/scripts/igep.inilrwxrwxrwx 1 mcaro mcaro 14 2011-08-19 11:48 MLO -&gt; x-load.bin.iftdrwxr-xr-x 5 mcaro mcaro 4096 2011-08-18 10:42 omap3530-binariesdrwxr-xr-x 2 mcaro mcaro 4096 2011-08-18 10:54 scriptslrwxrwxrwx 1 mcaro mcaro 35 2011-08-19 11:49 x-load.bin.ift -&gt; ../psp/igep-x-loader/x-load.bin.ift</pre> <u>Directory dm3730-binaries</u>: Inside this directory resides all the build binaries for DM3730 processor.
make &lt;package_name&gt;_clean <u>Directory omap3530-binaries</u>: Inside this directory resides all the build binaries for OMAP3530 processor.
suchMLO and igep.ini: <pre>make dmai_clean[[The IGEP X-loader|IGEP X-Loader]]
make dsplink_clean<u>Scripts Directory</u>: <pre>-rwxr-xr-x 1 mcaro mcaro 290 2010-12-17 12:33 exec_gst-rwxr-xr-x 1 mcaro mcaro 198 2010-09-06 10:43 fb1-16M-settings.sh-rwxr-xr-x 1 mcaro mcaro 1109 2010-12-17 12:33 load-modules.sh-rwxr-xr-x 1 mcaro mcaro 89 2011-08-17 15:02 powervr.ini-rwxr-xr-x 1 mcaro mcaro 218 2010-12-17 12:33 unloadmodules.sh</pre> Some useful scripts.
make gst_clean<u>Directory dm3730-binaries and </u><u>Directory omap3530-binaries has the same structure.<br></u> <pre>&lt;u&gt;&lt;/u&gt;drwxr-xr-x 3 mcaro mcaro 4096 2011-08-18 11:54 bootdrwxr-xr-x 3 mcaro mcaro 4096 2011-08-18 11:55 libdrwxr-xr-x 4 mcaro mcaro 4096 2011-08-18 11:56 usr
</pre>
Build Manually Boot: Here resides the kernel and the modules. <pre>$ make linux_kernel dsplink cmem Lib: Here resides the Linux DSP Communication modules as lpm , sdma codecs dmai gst_ti opengldemos, cmemk, dsplink.  Usr: Here resides the Codec Server, the gst plugin and some other examples. </pre> = Install BUGS Detected {| width="60%" cellspacing="1" cellpadding="1" border="1"|-| Release | Description | Workaround | Other|-| 3.10.00 | Incorrect GFX install script | Copy the target and es.3x or es.5x directly | Edit Makefile line 43 and remove opengldemos_install|-| 3.10.00 | Incorrect DSP Memory map | Upgrade the package to 3.10.10 | Download the package 3.10.10|-| 3.10.10<br> | Incorrect GFX install script | Copy the target and es.3x or es.5x directly | Edit Makefile line 43 and remove opengldemos_install|-| 3.10.10| Gstreamer library initializes incorrectly the video encoder H264 and MPG4| Upgrade to a newer gst library plugin| N/A|}
Copy the "target" directory inside your IGEP board ( rcp * jdoe@192.168.2.1: ) <br>
Inside IGEPv2 board you should copy the gst plugin inside the plugins directory, normally inside /usr/lib/gstreamer-0.10 = Play with it<br> =
We included some files for configure[<span style="color: rgb(255, load and unload the kernel 0, 0);">IMPORTANT</span>] Some modules as loadmodules.sh and unloadmodulesrequires root privileges account.sh <br>
You should call Normally in this example we will use 2 frame buffers and we will use the loadmodules.sh script before you can execute gstreamerfb2 for playing the videos. <br>
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).<br>
== Uboot Setup ==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.<br>
You should configure the max kernel memory to 430MBytes for do fb1 it's on TOP and fb0 it's under fb1, it means that if you should pass don't enable the variable mem=430M to transparency it's not possible see the kernel. <pre>This is a suggested configuration:bootargs-base=mem=430M console=ttyS2,115200n8 console=tty0 omapfbfb0.mode=dvi:1280x720MR-16@60 vram=32M omapfb.vram=0:8M,1:16M,2:8M</pre> <br>
= Issues detected in this version =Now, you're ready for play some nice video using gstreamer, you can use these pipelines:
*make clean (dsplink) not work properly and it's necessary to do This is for play a make dsplink_clean for ensure all it's compiled correctly avi file and remove uses the kernel modules from the dsplink directoryomapdmaifbsink. <pre>gst-launch-0.10 -v filesrc location=$1&nbsp;! avidemux name=demux demux. audio_00&nbsp;! queue max-size-buffers=8000 max-size-time=0 max-size-bytes=0 \*gstreamer plugin directory "gstreamer! TIAuddec1&nbsp;! alsasink demux.video_00&nbsp;! queue max-size-buffers=2 max-size-time=0 max-size-ti_svnr884bytes=0&nbsp;! TIViddec2 engineName=codecServer&nbsp;! omapdmaifbsink</src/gstticodecplugin_dm3730" must be removed the first installation time (manually)pre> Or You can use this other for play a mp4 file it uses a TIDmaiVideoSink. <br> *Typo in Makefile<pre>gst-launch-0. "linaro_linux" must be changed to "linux_linaro"10 -v filesrc location=$1&nbsp;! qtdemux name=demux demux. Otherwise "make linux_kernel" failsaudio_00&nbsp;! queue max-size-buffers=8000 max-size-time=0 max-size-bytes=0 \! TIAuddec1&nbsp;! alsasink demux.video_00&nbsp;! queue max-size-buffers=2 max-size-time=0 max-size-bytes=0&nbsp;! TIViddec2 engineName=codecServer \! queue&nbsp;! TIDmaiVideoSink displayStd=fbdev displayDevice=/dev/fb1 accelFrameCopy=TRUE contiguousInputFrame=1<br/pre>
= Useful Links =
*[[Example GStreamer Pipelines]]<br>
[[Category:How_to_forgeGstreamer]]
0
edits