Changes

User:Pau pajuelo

2,349 bytes added, 15:28, 5 September 2014
m
DM3730: Decode an AAC audio file (OK)
= TODO: =
 
Update peripheral tutorials, finish gpio example program
Categorize new tutorials
 
Finish tutorials below
How to manage the kernel modules on Linux
How do I edit my kernel command line
Basic Software instructions== AUDIO DSP-ARM== ===Included (IGEP GST DSP):==='''AACHEDEC -> DEC AACHE (OK)''' http://download.wavetlan.com/SVV/Media/HTTP/FAAC-HE-AAC.aac gst-launch --gst-debug-level=2 filesrc location=sampleaache.m4a ! TIAuddec1 codecName=aachedec engineName=codecServer ! volume volume=0.25 ! alsasink sync=false outofthebox->ok ---- '''MP3DEC -> DEC MP3 (AUDIO ERRORS)''' - Followed README file from ISEE - IGEP DSP - GST + DMAI Support Package 3.40.00 http://www.stephaniequinn.com/Music/Canon.mp3 gst-launch --gst-debug-level=2 filesrc location=Canon.mp3 ! TIAuddec1 codecName=mp3dec engineName=codecServer ! volume volume=0.25 ! alsasink sync=false '''Random fatal bit error''' '''mp3-plugin doesn't resolve the error''' ---- '''G711DEC -> DEC PCM uLAW (speech) (NOT TESTED)''' '''G711ENC -> ENC PCM uLAW (speech) (NOT TESTED)''' ===Not included (IGEP GST DSP):==='''ACCLCDEC -> DEC AACLE (NOT TESTED)''' '''AACLDDEC -> DEC AACLD (NOT TESTED)''' '''WMA9 -> DEC WMA9 (COMPILING ISSUES)''' '''ACCLCENC -> ENC AACLE (NOT TESTED)''' '''ACCHEENC -> ENC AACHE (NOT TESTED)''' '''AACLDENC -> ENC AACLD (NOT TESTED)''' '''WMA8 -> ENC WMA8 (NOT TESTED)''' '''Problems adding codecs into igep-gst-dsp''' == DM3730== === DM3730: Decode a MP3 file (OK) (ADDED TO REPOSISTORIES)=== '''under contruction''' '''does not have an accelerated audio decoder element''' - Compiled gst-plugins-ugly using yocto tools - rpm -igst-plugins-ugly-0.*.rpm - rpm -i libmad0-0.*.rpm - rpm -i gst-plugins-ugly-mad-0.*.rpm - gst-launch filesrc location=sample.mp3 ! mad ! volume volume=0.25 ! alsasink === DM3730: Decode a RA or RM audio file (ERRORS)=== gst-launch --gst-debug-level=3 filesrc location=sample.ra ! rmdemux ! volume volume=0.25 ! alsasink http://www.superluminal.com/andalib/ra/listen.ra gst-plugins-ugly-rmdemux-0.10.19-r1.armv7a.rpm libgstsdp-0.10-0-0.10.36-r3.armv7a.rpm:libgstsdp-0.10-0 libgstsdp-0.10.so.0 libgstrtsp-0.10-0-0.10.36-r3.armv7a.rpm:libgstrtsp-0.10-0 libgstrtsp-0.10.so.0 '''Error:'''  0:00:00.084839071 1550 0xa137b0 WARN rmdemux rmdemux.c:1012:gst_rmdemux_chain:<rmdemux0> Bogus looking header, unprintable FOURCC 0:00:00.085052695 1550 0xa137b0 WARN rmdemux rmdemux.c:1012:gst_rmdemux_chain:<rmdemux0> Bogus looking header, unprintable FOURCC 0:00:00.085540976 1550 0xa137b0 WARN rmdemux rmdemux.c:1057:gst_rmdemux_chain:<rmdemux0> Unknown object_id .ra4 0:00:00.085693564 1550 0xa137b0 WARN rmdemux rmdemux.c:1012:gst_rmdemux_chain:<rmdemux0> Bogus looking header, unprintable FOURCC 0:00:00.085815634 1550 0xa137b0 WARN rmdemux rmdemux.c:1012:gst_rmdemux_chain:<rmdemux0> Bogus looking header, unprintable FOURCC 0:00:00.085907187 1550 0xa137b0 WARN rmdemux rmdemux.c:1057:gst_rmdemux_chain:<rmdemux0> Unknown object_id RaTC === DM3730: Decode an AAC audio file (OK)=== EXTRA_OECONF += "--disable-examples --disable-experimental --disable-sdl --disable-cdaudio --disable-directfb \ --with-plugins=musicbrainz,wavpack,ivorbis,mpegvideoparse,'''faad2''' --disable-vdpau --disable-apexsink \ --disable-orc"Install:  faad2-2.7-r2.armv7a.rpmlibfaad2-2.7-r2.armv7a.rpmgst-plugins-bad-faad-0.10.23-r2.armv7a.rpm '''maybe there are necessary more packages, compare actual gst-bad-recipe and add changes. Necessary add faad2 recipe'''<pre>bitbake faad2 gst-plugins-bad</pre><pre> rpm -i faad2-2.7-r2.armv7a.rpmrpm -i libfaad2-2.7-r2.armv7a.rpmrpm -i gst-plugins-bad-faad-0.10.23-r2.1.armv7a.rpm </pre> gst-launch --gst-debug-level=3 filesrc location=sample.aac ! faad ! volume volume=0.10 ! alsasink ==== DM3730: Decode an WMA audio file (OK)==== <pre>bitbake gst-ffmpeg</pre> <pre>gst-launch -v filesrc location=sample.wma ! asfdemux ! decodebin ! audioconvert ! volume volume=0.25 ! alsasink </pre> === DM3730: Decode an OGG audio file (OK)=== '''Into repositories (base plugins):''' http://upload.wikimedia.org/wikipedia/en/0/04/Rayman_2_music_sample.ogg gst-launch -v filesrc location=sample.ogg ! oggdemux ! vorbisdec ! audioconvert ! volume volume=0.25 ! alsasink == BASE0033 CONNECTOR SUMMARY TABLE== == Configure a static IP using the same private network range == '''under construction''' IGEP Firmware Yocto uses the following Ethernet network configuration (IP addresses) *eth0 − 192.168.5.1*eth0:0 − assigned via dhcp.  This Ethernet network configuration is really useful when you work using a Linux operating system like IGEP SDK Virtual Machine. Because you use eth0 device to communicate easily with your board and eth0:0 device to get Internet acces using dhcp protocol. But some scenarios this network configuration is not useful, for example: if you use a non-Linux operating system, connect to two IP private range interfaces is not simple. This How-to can be useful to  (Make diagram one: IGEP and Linux defualt communication. Diagram 2 IGEP and other SO alternative configuration)
= igep.ini parameters =
| Only for base0010<br>=B
|}
 
= How to use GPIOs (update it) =
 
== Overview ==
 
This How-To is meant to be a starting point for people to learn use GPIOs for IGEP devices as quickly and easily as possible. For this How-To I used [http://labs.isee.biz/index.php/IGEP_firmware_Yocto IGEP firmware Yocto]
 
There are more ways to use GPIOs, but this one is very simple.
 
== Feedback and Contributing ==
 
At any point, if you see a mistake you can contribute to this How-To.
 
== Requirements ==
 
For this How-to, I used:
* IGEPv2 Board
* [http://labs.isee.biz/images/6/69/Gpio_examplebeta1.tar.bz2 GPIO example]
 
== Configure IGEPv2==
By default, GPIO 156 (J990:20) and GPIO 157 (J990:22) are available, connect J990:20 and J990:22 with a cable.
 
== Example program ==
 
Example program contains some libraries to control GPIOs, libraries can do:
* Export and unexport GPIOs
* Set GPIO direction
* Set GPIO value
* Get GPIO value
* Configure hardware interrupts
 
Example program configures a GPIO to wait a hardware interrupt. Once the GPIO value change from 0 value to 1 value (rising), program gives you a message.
 
=== Compile example program ===
[http://labs.isee.biz/index.php/How_to_setup_a_cross_compiler#Download.2FInstall_IGEP_SDK Download an Install] IGEP SDK if you don't have it.
 
First of all you need to initialize a suitable environment in the bash shell console inside your machine. <br> You can do this sourcing once the environment-setup script.
<pre>jdoe@ubuntu ~ $ source /opt/poky/1.2/environment-setup-armv7a-vfp-neon-poky-linux-gnueabi </pre>
 
* Download [http://labs.isee.biz/images/6/69/Gpio_examplebeta1.tar.bz2 source code]
* Extract source code
* Build source coe:
 
Cross toolchain tools are available into the built-in virtual machine Poky SDK. You only need open bash terminal prompt and write commands:
<pre>jdoe@ubuntu ~/Desktop $ arm-poky-linux-gnueabi-gcc -o gpio_example gpio_examplebeta1.c</pre>
 
* Copy binary file to IGEP Board
 
== Execute program ==
Open a remote terminal and locate your program binary:
<pre>root@igep00x0:~# ./gpio_example 157 </pre>
Result will be:
<pre>root@igep00x0:~# ./gpio_example 157
gpio/direction: No such file or directory
 
poll() GPIO 157 interrupt occurred
............. </pre>
== Generate interrupts ==
Open a second remote terminal and type:
<pre>cd /sys/class/gpio/
echo 156 > export
cd gpio156/
echo out > direction
echo 0 > value
echo 1 > value</pre>
== Result ==
At first remote terminal you should read a message simalar like this:
<pre>.......................................
poll() GPIO 157 interrupt occurred </pre>
4,199
edits