Save YUV to Disk

AVFrame *avFrame;

 char *pName = "/Users/mac/myfiles2/test_30.yuv";

 FILE *ff = fopen(pName, "wb");//????
 int pic;

 avcodec_decode_video2(avCodecContext, avFrame, &pic, &avPacket);
 NSLog(@"...decode finished<<<");

 //width: 352
 //height: 288
 if (pic != 0) {
 for(int i=0; i<288; i++)
 fwrite(avFrame->data[0] + i * avFrame->linesize[0], 1, 352, ff);
 for(int i=0; i<288/2; i++)
 fwrite(avFrame->data[1] + i * avFrame->linesize[1], 1, 352/2, ff);
 for(int i=0; i<288/2; i++)
 fwrite(avFrame->data[2] + i * avFrame->linesize[2], 1, 352/2, ff);
 }

你可能感兴趣的:(Save YUV to Disk)