· 扩展名: .y4m
· 格式样例: http://samples.mplayerhq.hu/yuv4mpeg2/
YUV4MPEG2 是一种简单的文件格式,它被设计用来保存原始的YCbCr(如 YCbCr 4:2:0, YCbCr 4:2:2, YCbCr 4:4:4等)数据。YUV的来源就来源于色彩空间YCbCr(常用于数字媒体中的彩色编码),YUV常在模拟PAL制传输时,应用在电视和视频录像带中。
数据格式
Y4M文件以一段明文开始。其前10个字符是署名”YUV4MPEG2 “(注意最后一个字符是空格(ASCII 0x20)。紧跟在署名后面的是各种视频参数信息,各参数信息都以空格(ASCII 0x20)分隔。参数信息通常包括 宽、高和帧率。
帧宽:’W’后跟明文整数;如:W720
· 帧宽:’H’后跟明文整数;如:H480
· 帧率: ’F’后跟每秒的整数,表示为一个分数的分子,分母。如下:
· interlacing: ‘I‘后跟一个单独的字母表明交错的模式:
· 参数‘A‘: 像素宽高比。 注意这里只是表明像素的比率,不表示是图片的宽高比:
· 参数‘C‘: 色彩空间(Color space)
· 参数‘X‘: 注释。将被 YUV4MPEG2 解析器所忽略。
跟在参数信息后面的是按照Y-Cb-Cr存储的原始YUV数据。每帧数据都以‘FRAME‘开始再在后面加一个0x0A,其后就是原始的图像帧了(注意参数信息和帧头之间也要用0x0A)。
每一帧原始图像的计算公式如下:
· 帧大小 = width * height * 3 / 2 (4:2:0)
· 帧大小 = width * height * 2 (4:2:2)
帧大小 = width * height * 3 (4:4:4)
原文:http://blog.csdn.net/hiccupzhu/article/details/19498093