返回信息流本人现在正在做毕设,要读取yuv格式的视频再对其进行处理
现在上网查了查yuv格式的资料,发现不是很懂
(3) YUV 4:1:1
4:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由4个水平方向相邻的像素组成的宏像素需要占用6字节内存。
下面的四个像素为:
[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
存放的码流为: Y0 U0 Y1 Y2 V2 Y3
映射出像素点为:[Y0 U0 V2] [Y1 U0 V2] [Y2 U0 V2] [Y3 U0 V2]
有人知道这个存放的码流和映射的像素点怎么计算吗?
还有用ifile和ofile读写文件,为什么我直接读取原文件存入到数组里,再把数组里的文件写入硬盘的新文件里面,打开新文件发现不能成像,但是大小和原文件一样...
部分代码
unsigned char a[3763584];//176x144x99x1.5 原文件大小,分辨率176x144共99帧
void main()
{
ifstream ifile("D:/out.raw");//读取原文件
if(ifile)
{
ifile.read((char*)&a,sizeof(a));
ofstream ofile("D:/out2.raw",ios::trunc);//储存新文件
ofile.write((char*)&a,sizeof(a));
cout<<"done"<<endl;
}
else
cout<<"failed"<<endl;
}
这是一条镜像帖。来源:北邮人论坛 / cpp / #37455同步于 2010/4/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
【求助】关于yuv格式
aiyouwei
2010/4/4镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。