<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: G729 Crashing. in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941693#M17705</link>
    <description>&lt;DIV&gt;Hi,&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I think it would be better, if you submit this issue through technical support, so itcan be tracked, analized and so on.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Thanks,&lt;/DIV&gt;
&lt;DIV&gt; Vladimir&lt;/DIV&gt;</description>
    <pubDate>Wed, 08 Sep 2004 21:05:51 GMT</pubDate>
    <dc:creator>Vladimir_Dudnik</dc:creator>
    <dc:date>2004-09-08T21:05:51Z</dc:date>
    <item>
      <title>G279 Crashing.</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941690#M17702</link>
      <description>&lt;P&gt;Hi, I downloaded the speech proessing example code from the IPP page on intel.com. The example program in the zip "w_ipp-G729_p_4.0.005.zip" throws an access violation when giving any 8khz 16bit pcm audio data. However, on the assumption that it's the fault of the example program and not the IPP libray itself, I simply call the following 3 or 4 IPP functions and it crashes with an access violation:&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;int required_size;&lt;BR /&gt;apiG729Decoder_Alloc((G729Codec_Type)G729A_CODEC, &amp;amp;required_size);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;G729Decoder_Obj* decoder_ = (G729Decoder_Obj*)ippsMalloc_8u(required_size);&lt;BR /&gt;apiG729Decoder_Init(decoder_, (G729Codec_Type)G729A_CODEC);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;unsigned char* compressed_buffer;&lt;BR /&gt;// compressed_buffer is filled with data from a Cisco7960 IP phone...&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;short* decompressed_buffer;&lt;BR /&gt;// decompressed_buffer is setup...&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;apiG729Decode(&lt;BR /&gt;decoder_,&lt;BR /&gt;compressed_buffer,&lt;BR /&gt;G729A_CODEC,&lt;BR /&gt;decompressed_buffer);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;The call to apiG729Decode() throws an access violation on line 1442 of file decg729.c, does anybody have any idea why?&lt;/P&gt;
&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 02 Sep 2004 06:28:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941690#M17702</guid>
      <dc:creator>damiancoventry</dc:creator>
      <dc:date>2004-09-02T06:28:00Z</dc:date>
    </item>
    <item>
      <title>Re: G279 Crashing.</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941691#M17703</link>
      <description>&lt;DIV&gt;Hi,&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Could you look to expert's answer below:&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size="2"&gt;
&lt;P&gt;I may suggest two reasons for exception/violation:&lt;/P&gt;
&lt;P&gt;1) First one, let consider the user code snippet: (cleaned out of &amp;amp;amr; etc)&lt;/P&gt;
&lt;P&gt;int required_size;&lt;/P&gt;
&lt;P&gt;apiG729Decoder_Alloc((G729Codec_Type)G729A_CODEC, required_size);&lt;/P&gt;
&lt;P&gt;G729Decoder_Obj* decoder_ = (G729Decoder_Obj*)ippsMalloc_8u(required_size);&lt;/P&gt;
&lt;P&gt;apiG729Decoder_Init(decoder_, (G729Codec_Type)G729A_CODEC);&lt;/P&gt;
&lt;P&gt;unsigned char* compressed_buffer;// compressed_buffer is filled with data from a Cisco7960 IP phone...&lt;/P&gt;
&lt;P&gt;short* decompressed_buffer;// decompressed_buffer is setup...&lt;/P&gt;
&lt;P&gt;apiG729Decode(decoder_,compressed_buffer,G729A_CODEC,decompressed_buffer); &lt;/P&gt;
&lt;P&gt;I see the bug in &lt;/P&gt;
&lt;P&gt;apiG729Decoder_Alloc(..., &amp;amp;required_size);&lt;/P&gt;
&lt;P&gt;2) and second one, just to clarify for user proper use of input data, g729 sample supports a raw pcm input for encoder and the ITU G.729 bitstream test format input for decoder. RTP storage format not supported so far. &lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt; Vladimir&lt;/P&gt;&lt;/FONT&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 07 Sep 2004 22:33:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941691#M17703</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2004-09-07T22:33:09Z</dc:date>
    </item>
    <item>
      <title>Re: G729 Crashing.</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941692#M17704</link>
      <description>&lt;DIV&gt;Hi Vladimir,&lt;BR /&gt;I think if you changed the code as you specify it wouldn't even compile, and if it did it, running it would crash. The "g729api.h" file defines the two Alloc functions as follows:&lt;BR /&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: black 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: black 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: black 1px solid"&gt;&lt;SPAN class="text_smallest"&gt;Code:&lt;/SPAN&gt;&lt;PRE&gt;G729_CODECAPI(APIG729_Status, apiG729Encoder_Alloc, (G729Codec_Type codecType, int *pCodecSize))
G729_CODECAPI(APIG729_Status, apiG729Decoder_Alloc, (G729Codec_Type codecType, int *pCodecSize))&lt;/PRE&gt;&lt;/DIV&gt;Clearly you pass the address of an integer to this function, not an integer. It's my understanding that this function calculates how many bytes you need to allocate and returns it to you via this pointer.&lt;/DIV&gt;
&lt;DIV&gt;Raw PCM data is being read and fed into the encoder routines, not the decoder - sorry, i should have been more clear here. The raw PCM data is 16 bit mono data, and it's being read at the standard rate of 8khz.&lt;BR /&gt;The code is as follows&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: black 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: black 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: black 1px solid"&gt;&lt;SPAN class="text_smallest"&gt;Code:&lt;/SPAN&gt;&lt;PRE&gt;int required_size;
apiG729Encoder_Alloc((G729Codec_Type)G729A_CODEC, &amp;amp;required_size);
encoder_ = (G729Encoder_Obj*)ippsMalloc_8u(required_size);
apiG729Encoder_Init(encoder_, (G729Codec_Type)G729A_CODEC, G729Encode_VAD_Disabled);
int frametype;
apiG729Encode(
    encoder_,
    souce_data,
    dest_data,
    G729A_CODEC,
    &amp;amp;frametype);&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;souce_data is filled with raw PCM data (16 bit mono), and dest_data is bitstream that gets the compressed data. The function apiG729Encode crashes as noted previously when it executes the line:&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: black 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; BORDER-LEFT: black 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: black 1px solid"&gt;&lt;SPAN class="text_smallest"&gt;Code:&lt;/SPAN&gt;&lt;PRE&gt;/* Clause 3.2.1 Windowing and autocorrelation computation */
ippsAutoCorr_G729B(LPC_WINDOW, &amp;amp;norm,r_auto);&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;which can be found in the Intel supplied code in the file "encg729.c"&lt;BR /&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 08 Sep 2004 02:58:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941692#M17704</guid>
      <dc:creator>damiancoventry</dc:creator>
      <dc:date>2004-09-08T02:58:16Z</dc:date>
    </item>
    <item>
      <title>Re: G729 Crashing.</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941693#M17705</link>
      <description>&lt;DIV&gt;Hi,&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I think it would be better, if you submit this issue through technical support, so itcan be tracked, analized and so on.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Thanks,&lt;/DIV&gt;
&lt;DIV&gt; Vladimir&lt;/DIV&gt;</description>
      <pubDate>Wed, 08 Sep 2004 21:05:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941693#M17705</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2004-09-08T21:05:51Z</dc:date>
    </item>
    <item>
      <title>Re: G279 Crashing and RTP</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941694#M17706</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;How do I convert the bitstream format to the format expected by RTP?&lt;BR /&gt;&lt;BR /&gt;Is it better to convert the frame or to modify the G.729 encoder so that is natively generates frames in the format I want?&lt;BR /&gt;&lt;BR /&gt;Where can I find documentation for the 'bitstream' format currently in use?&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;&lt;BR /&gt;Daniel</description>
      <pubDate>Tue, 14 Sep 2004 20:38:08 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941694#M17706</guid>
      <dc:creator>Anonymous87</dc:creator>
      <dc:date>2004-09-14T20:38:08Z</dc:date>
    </item>
    <item>
      <title>I took Damian's source code</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941695#M17707</link>
      <description>&lt;P&gt;I took Damian's source code as template and it also crashed. The reason is missing calls to apiG729Encoder_InitBuffer and apiG729Decoder_InitBuffer. Useful template code can be found at&amp;nbsp;https://github.com/vir/yate-g72X-ipp/blob/master/g729codec.cpp&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Kind regards,&lt;BR /&gt;
	Ulrich&lt;BR /&gt;
	&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 21 Oct 2016 10:57:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941695#M17707</guid>
      <dc:creator>Ulrich_H_1</dc:creator>
      <dc:date>2016-10-21T10:57:52Z</dc:date>
    </item>
    <item>
      <title>Dear Ulrich and All,</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941696#M17708</link>
      <description>&lt;P&gt;Dear Ulrich and All,&lt;/P&gt;

&lt;P&gt;thanks for the update and sharing.&lt;/P&gt;

&lt;P&gt;Just notes, the speech codec functionality including G729 were deprecated from IPP 8.0 version (2 years before).&amp;nbsp; So no further investigate on all of the related questions. Sorry for the bad news.&lt;/P&gt;

&lt;P&gt;Best Regards,&lt;BR /&gt;
	Ying&lt;/P&gt;</description>
      <pubDate>Tue, 01 Nov 2016 08:48:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/G279-Crashing/m-p/941696#M17708</guid>
      <dc:creator>Ying_H_Intel</dc:creator>
      <dc:date>2016-11-01T08:48:19Z</dc:date>
    </item>
  </channel>
</rss>

