<?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 ippiResizeYUV422_8u_C2R and VirtualAlloc in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767584#M391</link>
    <description>ippiResizeYUV422_8u_C2R crashes when the source image exactly ends on the page boundary. If ippMalloc is used instead of VirtualAlloc, then there is no issue. So, ippiResizeYUV422_8u_C2R requires aligned memory as input?&lt;BR /&gt;&lt;BR /&gt;I am using the x86 version of IPP v7.0.205 on Windows 7. Below is a snippet to reproduce the issue. &lt;BR /&gt;&lt;BR /&gt; const int SRC_WIDTH = 640;&lt;BR /&gt; const int SRC_HEIGHT = 360;&lt;BR /&gt; const int SRC_STEP = SRC_WIDTH * 2;&lt;BR /&gt;&lt;BR /&gt; SYSTEM_INFO sysInfo;&lt;BR /&gt; ::GetSystemInfo(&amp;amp;sysInfo);&lt;BR /&gt; assert(sysInfo.dwPageSize == 4096);&lt;BR /&gt;&lt;BR /&gt; const int SRC_SIZE = SRC_WIDTH * SRC_HEIGHT * 2;&lt;BR /&gt; const int SRC_BUFFERS = 2;&lt;BR /&gt; &lt;BR /&gt; const int DST_WIDTH = 320;&lt;BR /&gt; const int DST_HEIGHT = 240;&lt;BR /&gt; const int DST_STEP = DST_WIDTH * 2;&lt;BR /&gt; const int DST_SIZE = DST_WIDTH * DST_HEIGHT * 2;&lt;BR /&gt; &lt;BR /&gt; const double SRC_AR = (double)SRC_WIDTH / SRC_HEIGHT;&lt;BR /&gt; const double DST_AR = (double)DST_WIDTH / DST_HEIGHT;&lt;BR /&gt; assert(SRC_AR &amp;gt; DST_AR);&lt;BR /&gt; &lt;BR /&gt; double xFactor = DST_WIDTH / (SRC_WIDTH * (DST_AR / SRC_AR)); &lt;BR /&gt; double yFactor = (double)DST_HEIGHT / SRC_HEIGHT;&lt;BR /&gt;&lt;BR /&gt; int croppedWidth = ((int)(SRC_WIDTH * (DST_AR / SRC_AR)) + 3) &amp;amp; ~3;&lt;BR /&gt; int croppedHeight = SRC_HEIGHT;&lt;BR /&gt; &lt;BR /&gt; Ipp8u* srcImg = (Ipp8u*)::VirtualAlloc(NULL, SRC_SIZE * SRC_BUFFERS, MEM_COMMIT, PAGE_READWRITE);&lt;BR /&gt; //Ipp8u* srcImg = (Ipp8u*)ippMalloc(SRC_SIZE * SRC_BUFFERS);&lt;BR /&gt; Ipp8u* dstImg = new Ipp8u[DST_SIZE];&lt;BR /&gt;&lt;BR /&gt; IppiSize srcSize = { SRC_WIDTH, SRC_HEIGHT };&lt;BR /&gt; &lt;BR /&gt; IppiRect srcRoi = { &lt;BR /&gt;  (SRC_WIDTH - croppedWidth) / 2,&lt;BR /&gt;  (SRC_HEIGHT - croppedHeight) / 2,&lt;BR /&gt;  croppedWidth,&lt;BR /&gt;  croppedHeight&lt;BR /&gt; };&lt;BR /&gt;&lt;BR /&gt; IppiSize dstSize = { DST_WIDTH, DST_HEIGHT };&lt;BR /&gt;&lt;BR /&gt; for(size_t j = 0; j &amp;lt; SRC_BUFFERS; ++j)&lt;BR /&gt; {&lt;BR /&gt;  Ipp8u* srcBuf = srcImg + (SRC_SIZE * j);&lt;BR /&gt;  printf("j : %d, srcBuf : %x", j, srcBuf);&lt;BR /&gt;  IppStatus status;&lt;BR /&gt;  status = ippiResizeYUV422_8u_C2R(srcBuf, srcSize, SRC_STEP, srcRoi, dstImg, DST_STEP, dstSize, xFactor, yFactor, IPPI_INTER_LINEAR);&lt;BR /&gt;  printf(" [OK]\\n");&lt;BR /&gt; }&lt;BR /&gt;&lt;BR /&gt; ::VirtualFree(srcImg, SRC_SIZE * SRC_BUFFERS, MEM_RELEASE);&lt;BR /&gt; //ippFree(srcImg);&lt;BR /&gt; delete [] dstImg;&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Mon, 22 Aug 2011 12:16:36 GMT</pubDate>
    <dc:creator>keerthishankar</dc:creator>
    <dc:date>2011-08-22T12:16:36Z</dc:date>
    <item>
      <title>ippiResizeYUV422_8u_C2R and VirtualAlloc</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767584#M391</link>
      <description>ippiResizeYUV422_8u_C2R crashes when the source image exactly ends on the page boundary. If ippMalloc is used instead of VirtualAlloc, then there is no issue. So, ippiResizeYUV422_8u_C2R requires aligned memory as input?&lt;BR /&gt;&lt;BR /&gt;I am using the x86 version of IPP v7.0.205 on Windows 7. Below is a snippet to reproduce the issue. &lt;BR /&gt;&lt;BR /&gt; const int SRC_WIDTH = 640;&lt;BR /&gt; const int SRC_HEIGHT = 360;&lt;BR /&gt; const int SRC_STEP = SRC_WIDTH * 2;&lt;BR /&gt;&lt;BR /&gt; SYSTEM_INFO sysInfo;&lt;BR /&gt; ::GetSystemInfo(&amp;amp;sysInfo);&lt;BR /&gt; assert(sysInfo.dwPageSize == 4096);&lt;BR /&gt;&lt;BR /&gt; const int SRC_SIZE = SRC_WIDTH * SRC_HEIGHT * 2;&lt;BR /&gt; const int SRC_BUFFERS = 2;&lt;BR /&gt; &lt;BR /&gt; const int DST_WIDTH = 320;&lt;BR /&gt; const int DST_HEIGHT = 240;&lt;BR /&gt; const int DST_STEP = DST_WIDTH * 2;&lt;BR /&gt; const int DST_SIZE = DST_WIDTH * DST_HEIGHT * 2;&lt;BR /&gt; &lt;BR /&gt; const double SRC_AR = (double)SRC_WIDTH / SRC_HEIGHT;&lt;BR /&gt; const double DST_AR = (double)DST_WIDTH / DST_HEIGHT;&lt;BR /&gt; assert(SRC_AR &amp;gt; DST_AR);&lt;BR /&gt; &lt;BR /&gt; double xFactor = DST_WIDTH / (SRC_WIDTH * (DST_AR / SRC_AR)); &lt;BR /&gt; double yFactor = (double)DST_HEIGHT / SRC_HEIGHT;&lt;BR /&gt;&lt;BR /&gt; int croppedWidth = ((int)(SRC_WIDTH * (DST_AR / SRC_AR)) + 3) &amp;amp; ~3;&lt;BR /&gt; int croppedHeight = SRC_HEIGHT;&lt;BR /&gt; &lt;BR /&gt; Ipp8u* srcImg = (Ipp8u*)::VirtualAlloc(NULL, SRC_SIZE * SRC_BUFFERS, MEM_COMMIT, PAGE_READWRITE);&lt;BR /&gt; //Ipp8u* srcImg = (Ipp8u*)ippMalloc(SRC_SIZE * SRC_BUFFERS);&lt;BR /&gt; Ipp8u* dstImg = new Ipp8u[DST_SIZE];&lt;BR /&gt;&lt;BR /&gt; IppiSize srcSize = { SRC_WIDTH, SRC_HEIGHT };&lt;BR /&gt; &lt;BR /&gt; IppiRect srcRoi = { &lt;BR /&gt;  (SRC_WIDTH - croppedWidth) / 2,&lt;BR /&gt;  (SRC_HEIGHT - croppedHeight) / 2,&lt;BR /&gt;  croppedWidth,&lt;BR /&gt;  croppedHeight&lt;BR /&gt; };&lt;BR /&gt;&lt;BR /&gt; IppiSize dstSize = { DST_WIDTH, DST_HEIGHT };&lt;BR /&gt;&lt;BR /&gt; for(size_t j = 0; j &amp;lt; SRC_BUFFERS; ++j)&lt;BR /&gt; {&lt;BR /&gt;  Ipp8u* srcBuf = srcImg + (SRC_SIZE * j);&lt;BR /&gt;  printf("j : %d, srcBuf : %x", j, srcBuf);&lt;BR /&gt;  IppStatus status;&lt;BR /&gt;  status = ippiResizeYUV422_8u_C2R(srcBuf, srcSize, SRC_STEP, srcRoi, dstImg, DST_STEP, dstSize, xFactor, yFactor, IPPI_INTER_LINEAR);&lt;BR /&gt;  printf(" [OK]\\n");&lt;BR /&gt; }&lt;BR /&gt;&lt;BR /&gt; ::VirtualFree(srcImg, SRC_SIZE * SRC_BUFFERS, MEM_RELEASE);&lt;BR /&gt; //ippFree(srcImg);&lt;BR /&gt; delete [] dstImg;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 22 Aug 2011 12:16:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767584#M391</guid>
      <dc:creator>keerthishankar</dc:creator>
      <dc:date>2011-08-22T12:16:36Z</dc:date>
    </item>
    <item>
      <title>ippiResizeYUV422_8u_C2R and VirtualAlloc</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767585#M392</link>
      <description>Hello, &lt;BR /&gt;&lt;BR /&gt;Thanks for your report. We are checking this problem now.&lt;BR /&gt;&lt;BR /&gt;Chao</description>
      <pubDate>Tue, 23 Aug 2011 07:32:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767585#M392</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2011-08-23T07:32:00Z</dc:date>
    </item>
    <item>
      <title>ippiResizeYUV422_8u_C2R and VirtualAlloc</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767586#M393</link>
      <description>Hello, &lt;BR /&gt;&lt;BR /&gt;This problem is expected to be fixed in the latest 7.0.6 release. could you please have a check? &lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Chao</description>
      <pubDate>Mon, 26 Dec 2011 03:52:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767586#M393</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2011-12-26T03:52:17Z</dc:date>
    </item>
    <item>
      <title>ippiResizeYUV422_8u_C2R and VirtualAlloc</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767587#M394</link>
      <description>The problemis similar to:&lt;BR /&gt;&lt;BR /&gt; &lt;A href="http://software.intel.com/en-us/forums/showthread.php?t=50079&amp;amp;o=a&amp;amp;s=lr"&gt;http://software.intel.com/en-us/forums/showthread.php?t=50079&amp;amp;o=a&amp;amp;s=lr&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Take a look at apost #7.&lt;BR /&gt;</description>
      <pubDate>Mon, 26 Dec 2011 16:03:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/ippiResizeYUV422-8u-C2R-and-VirtualAlloc/m-p/767587#M394</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2011-12-26T16:03:39Z</dc:date>
    </item>
  </channel>
</rss>

