0
edits
Changes
From IGEP - ISEE Wiki
m
<span lang="EN-US" />We will demostrate how to add a new codec inside the IGEP-GST-DSP-FRAMEWORK.
<span lang="EN-US" />DM3730 or OMAP3530 accept the codecs Omtimized for OMAP3530 & DM3730 or C64+ DSP based devices.
<span lang="EN-US">/*</span> <span lang="EN-US">The XDC file in the codec directory (i.e.AACHEENC.xdc) contains the different sections that are defined in the algorithm
<span lang="EN-US">/* in my case with aacheenc */</span><span lang="EN-US"> AACHEENC.serverFxns = "AUDENC1_SKEL";</span>
<span lang="EN-US" /><span lang="EN-US">AACHEENC.stubFxns = "AUDENC1_STUBS";</span><span lang="EN-US"> AACHEENC.useCache = false;</span>
<span lang="EN-US"> AACHEENC.alg.watermark = false;</span>
<span lang="EN-US"> AACHEENC.alg.codeSection = codeSection;</span>
<span lang="EN-US"> AACHEENC.alg.udataSection = udataSection;</span>
<span lang="EN-US"> AACHEENC.alg.dataSection = dataSection;</span>
<span lang="EN-US">/* Add the Algorithm to the server by adding
<span lang="EN-US"><o:p> </o:p></span>{ <span lang="EN-US">{name: "aacheenc", mod: AACHEENC ,threadAttrs: {</span> <span lang="EN-US"> stackMemId: 0, priority: Server.MINPRI + 3},</span> <span lang="EN-US"> groupId : 2,</span> <span lang="EN-US"> },</span>
<!--[if !supportLineBreakNewLine]--><!--[endif]--></span></pre> <span lang="EN-US" />
*<span lang="EN-US">Many thanks to<nbsp;o:p></o:p></span><span lang="EN-US">[http://processors.wiki.ti.com/index.php/How_do_I_Integrate_new_codecs_into_DVSDK#Modifications_inside_the_Codec_Server <span style="color:windowtext;text-decoration:none;text-underline:none">http://processors.wiki.ti.com/index.php/How_do_I_Integrate_new_codecs_into_DVSDK#Modifications_inside_the_Codec_Server</span>]</span> *<span lang="EN-US">[http://www.igep.es/indexPratik G Shinde for this contribution.php?option=com_kunena&Itemid=97&func=view&catid=80&id=6765&limit=6&limitstart=12#6806 <span style="color:windowtext;text-decoration:none;text-underline:none">http://www.igep.es/index.php?option=com_kunena&Itemid=97&func=view&catid=80&id=6765&limit=6&limitstart=12#6806</span>]</span><br> <span lang="EN-US"><span style="color:windowtext;text-decoration:none;text-underline:none" /></span> == Thanks ==
Many thanks to Pratik G Shinde for this contribution.[[Category:Gstreamer]]
removed broken link
= How to add a new codec in IGEP-GST-DSP-FRAMEWORK =
Texas instruments DSP Codecs page it's [http://focus.ti.com/dsp/docs/dspfindtoolswbytooltype.tsp?sectionId=3&tabId=1460&toolTypeId=65&familyId=44 here].
We will integrate a acc audio encoder in the codec server.
<span lang="EN-US">igep-dsp-gst-framework-3_20_00/codecs-omap3530_4_02_00_00/packages/ti/sdo/codecs</span>
=== ''<span lang="EN-US">Step 4 - </span><span lang="EN-US">Modifications inside the</span>'' Codec Server ===
<span lang="EN-US">Once the Codec Package is integrated inside
var AACHEENC = xdc.useModule('ti.sdo.codecs.aacheenc.ce.AACHEENC');
that require to be mapped to defined memory sections by the server. Usually
this memory definitions are contained in the TCF file (''server.tcf''). For example to fulfill the requirements for the AACHE
encoder algorithm, and continuing with the variable defined before, the
following entries are added to the configuration file: </span> <span lang="EN-US">*/</span>
a new set to the ''Server.algs'' array.
For example to add the AACHEENCODER algorithm, the following entry needs to be
added */</span>
</pre>
<br>
of the Server, add the codec to the validation entries in </span><span class="Teletype"><span lang="EN-US">package.xs</span></span><span lang="EN-US"> file
of the server, which is in same directory as codec.cfg</span>
<pre><span lang="EN-US">/* in my case with aacheenc */</span> <span lang="EN-US">validate_one_codec( "ti.sdo.codecs.aacheenc", "AACHEENC" );</span><br></pre> <span lang="EN-US" /> <br>
=== <span lang="EN-US">''Step 6 - Add codec in gstreamer''</span> ===
<span lang="EN-US">directory and add following lines.</span>
<pre><span lang="EN-US"><o:p> </o:p></span><span lang="EN-US">/* in my case with aacheenc */</span> <span lang="EN-US">{
"AAC Audio Encoder", /* String name of codec used by plugin*/
"aacheenc", /* String name of codec used by CE */
codecServer /* Engine that contains this codec */
},
=== <span lang="EN-US">Step 7 - Compile</span> ===
IGEP-GST-DSP framework, copy newly generated files cs.x64P and
ligstticodecplugin.so on board and test with
gstreamer pipeline.</span> <br> <pre>gst-launch-0.10 alsasrc ! TIAudenc1 codecName=aacheenc engineName=codecServer ! filesink location=test.aac</pre> == <span lang="EN-US">References</span> ==
*<span lang="EN-US"><[http://processors.wiki.ti.com/index.php/How_do_I_Integrate_new_codecs_into_DVSDK#Modifications_inside_the_Codec_Server <span style="color:windowtext;otext-decoration:p> <none;text-underline:none">http://processors.wiki.ti.com/index.php/How_do_I_Integrate_new_codecs_into_DVSDK#Modifications_inside_the_Codec_Server</o:p>span>]</span>
== <span lang="EN-US"><o:p>References</o:p></span> Thanks ==