yuv420p 与yuvj420p转换为RGB565

挖掘机 2014-04-09 06:58:31
问题请教:
在android中用接收h264 rtp流,并用ffmpeg解码。使用网上的库DisplayYUV_16把yuv420p的数据转换到RGB565后,在手机上显示。但是今天用一个新的数据源,decod完成,但在转换为RGB565时,出现异常。检查发现新数据decod后的fmt是yuvj420p,而老数据是yuv420p。请教一下yuv420p 与yuvj420p之间的差别,以及如何把yuvj420p转换为RGB565,谢谢。
...全文
1739 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
__cc__ 2014-04-10
  • 打赏
  • 举报
回复
yuvj420p和yuv420p格式上是一致的,只是颜色空间上的不同。yuvj使用的是Jpeg转换公式,范围是0-255;yuv的范围是16-240。yuv420p可以当做yuvj420p用。但是yuvj需要做一个范围转换到yuv。
__cc__ 2014-04-10
  • 打赏
  • 举报
回复
引用 2 楼 wajj1209 的回复:
[quote=引用 1 楼 neustar1 的回复:] yuvj420p和yuv420p格式上是一致的,只是颜色空间上的不同。yuvj使用的是Jpeg转换公式,范围是0-255;yuv的范围是16-240。yuv420p可以当做yuvj420p用。但是yuvj需要做一个范围转换到yuv。
那请问,我使用如下代码:
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之外。
挖掘机 2014-04-10
  • 打赏
  • 举报
回复
引用 1 楼 neustar1 的回复:
yuvj420p和yuv420p格式上是一致的,只是颜色空间上的不同。yuvj使用的是Jpeg转换公式,范围是0-255;yuv的范围是16-240。yuv420p可以当做yuvj420p用。但是yuvj需要做一个范围转换到yuv。

那请问,我使用如下代码:
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有问题,请教一下,是什么原因。
问题图像如下:

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧