2,543
社区成员
发帖
与我相关
我的任务
分享
img_convert_ctx = sws_getContext(c->width, c->height,c->pix_fmt,
c->width, c->height, PIX_FMT_RGB565, SWS_BILINEAR,NULL, NULL, NULL);
//LOGD("start convert 1 !");
AVFrame pFrameRGB;
avpicture_fill((AVPicture *)&pFrameRGB,Pixel, PIX_FMT_RGB565,
c->width, c->height);
//LOGD("start convert 2 !");
int retValue = sws_scale(img_convert_ctx, pic.data, pic.linesize,
0, c->height, pFrameRGB.data, pFrameRGB.linesize);
进行yuv420p到rgb565的转换,结果能显示图像,但是用yuvj420p转rgb565有问题,请教一下,是什么原因。
问题图像如下:
[/quote]
你先看看yuvj420p存储的yuv值是不是大部分落在16-240之外。img_convert_ctx = sws_getContext(c->width, c->height,c->pix_fmt,
c->width, c->height, PIX_FMT_RGB565, SWS_BILINEAR,NULL, NULL, NULL);
//LOGD("start convert 1 !");
AVFrame pFrameRGB;
avpicture_fill((AVPicture *)&pFrameRGB,Pixel, PIX_FMT_RGB565,
c->width, c->height);
//LOGD("start convert 2 !");
int retValue = sws_scale(img_convert_ctx, pic.data, pic.linesize,
0, c->height, pFrameRGB.data, pFrameRGB.linesize);