Subscribe ( )

iPhone Programming Tutorials


 

Forum

You must be logged in to post Login Register

Search 

About displaying the decoded image source which received data from socket to the screen

User Post

1:12 am
April 10, 2009


JinRyu

Noob

posts 1

1

This program source displays the decoded image source which received data from socket to the screen.
There is some problem in this source which I do not know…
If I make comment the last end of the code ( [imgview setImage:processedImage] ) it works fine but
image doesn't displays.
but if I use the code ( [imgview setImage:processedImage] ) in the end of the code the program dies in 5 minute.
I would like to know why…..

  retvalue = DecompressFrame(aBuffer, [data length], _rgbdata, buffersize);
   
   size_t pixelsWide = 176;
   size_t pixelsHigh = 144;
   int m_xy_size = pixelsWide * pixelsHigh;
   int             bitsPerComponent = 8;
   int             bitmapByteCount;

   int numberOfCompponents = 3;//CGColorSpaceGetNumberOfComponents(colorSpace); //always returns 3 -> unsupported parameter combination
   int bitsPerPixel = bitsPerComponent * numberOfCompponents;
   int bitmapBytesPerRow   = (pixelsWide * numberOfCompponents);
   bitmapByteCount     = (bitmapBytesPerRow * pixelsHigh);

   CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
  
   
   // 화면 뒤집기
   unsigned    char        *imageData;
   imageData = (unsigned char *)malloc(m_xy_size*3);
   memcpy(imageData, _rgbdata, m_xy_size*3 * sizeof(unsigned char));
   int i,j,k;
   for(j=0, k=pixelsHigh-1; j< pixelsHigh; j++, k–)
   {
    for ( i = 0; i < pixelsWide; i++)
    {
    imageData[(j*pixelsWide+i)*3+2] = imageDataAsInts[(k*pixelsWide+i)+3];
    imageData[(j*pixelsWide+i)*3+1] = imageDataAsInts[(k*pixelsWide+i)*3+1];
    imageData[(j*pixelsWide+i)*3] = imageDataAsInts[(k*pixelsWide+i)*3+2];
    }
   }
   
   CGDataProviderRef dataProvider = CGDataProviderCreateWithData(NULL, imageData, bitmapByteCount, NULL);
   
   CGImageRef cgImage = CGImageCreate(pixelsWide, pixelsHigh, bitsPerComponent,
              bitsPerPixel, bitmapBytesPerRow, colorSpace, kCGImageAlphaNone,
              dataProvider, NULL, false, kCGRenderingIntentDefault);
   
   UIImage *processedImage = [UIImage imageWithCGImage:cgImage];
   CGDataProviderRelease(dataProvider);
   CGColorSpaceRelease(colorSpace);
   
   
   
   [imgview setImage:processedImage];

Search 

About the iCodeBlog forum

Most Users Ever Online:

44


Currently Online:

4 Guests

Forum Stats:

Groups: 2

Forums: 6

Topics: 419

Posts: 893

Membership:

There are 934 Members

There has been 1 Guest

There are 2 Admins

There is 1 Moderator

Top Posters:

bobcubsfan – 54

crazyiez – 30

Uhu – 17

AdeC – 17

Nick – 15

jitesh61 – 12

Administrators: Brandon (88 Posts), Collin (0 Posts)

Moderators: VertigoSol (26 Posts)



©   

  • Posted by on 6 Aug 2008 in Uncategorized
  •   |  
  •   |  
  •   |  
  • Comments Off

Comments are closed.