奇妙なバイトから NSImage を構築しようとしています。受信したフレームのバイトを取得するために BlackMagic SDK を使用しています。
unsigned char* frame3 = NULL;
unsigned char* frame2 = (Byte*)malloc(699840);
videoFrame->GetBytes ( (void**)&frame3);
memcpy(frame2, frame3, 699840);
NSData* data = [NSData dataWithBytes:frame2 length:sizeof(frame2) ];
NSImage *image = [[NSImage alloc] initWithData:data];
//(till now i use statically 699840, because i know its size)
バイトが奇妙だと言った理由は、「frame2」の内容が次のようになっているためです。
printf("content: %s",frame2);
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200 \200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200 \200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200 \200\200........\200(最後まで)
空白の黒いフレームにする必要があります。
誰かがこれで何かを理解する方法を知っていますか?