gstreamer video 相关属性

转自:http://hi.baidu.com/wylhistory/blog/item/d439e3a8da2849b7ca130c3c.html video相关2008-10-02 18:30video的属性: 1,framerate,就是帧率,也就是每秒播放的静态图片的张数; PAL和SECAM标准是25frame/s,NTSC是29.97 frame/s,想要给人以动画的感觉至少要15f/s; 2,扫描方式,分成interlace和progressive,分别用i和p表示,比如576i50就是说垂直分辨率是576,扫描方式是各行扫描,而后面的50是指每秒50次这样的扫描,所以也就是25frame/s(因为两次才算一个完整的帧了); 3,分辨率; 分辨率大当然数据量就大了,高清和标清的区别主要就是分辨率上; 标清是指物理分辨率在720p或1080i以下的视频格式,视频宽纵比为4:3,一般指标准清晰度的广播电视信号,也包括VCD、DVD等(SD)。 高清的标准,国际上公认的有两条:视频垂直分辨率等于或超过720p或1080i;视频宽纵比为16:9(HD)。 4,比率,也就是宽高比; 用得最多的就是上面提到的4:3或者16:9; 5,颜色空间模型和位宽,也就是每个相素需要多少位来存储; 颜色空间模型用的最多的是yuv,因为人眼对亮度的敏感要优于色度。 6,视频压缩方法; 压缩重要分为两种,空间的压缩(spatial)和时间上的压缩(temporal ),空间的压缩主要是记录同一帧里面的不同部分的差异,而时间上的差异主要是记录不同时间里两帧数据之间的差异; 7,位率,bit rate,也就是人们常说的码率,单位是bps或者Mbps; 通常位率越高,其图象质量就越好,通常vcd是1 Mbit/s,而DVD是5 Mbit/s;而HDTV的bit rate 为20 Mbit/s 这里还有两种策略,也就是VBR和CBR也就是常说的可变码率和不变码率; yuv和rgb之间的转换: Y = 0.299R + 0.587G + 0.114B U = -0.147R - 0.289G + 0.436B V = 0.615R - 0.515G - 0.100B R = Y + 1.14V G = Y - 0.39U - 0.58V B = Y + 2.03U yuv就是亮度,红色和亮度之间的差值,蓝色和亮度之间的差别; 各种常见格式: YUY2格式,以4:2:2方式打包,数据排列方式为(y0u0),(y1v1),(y2u2),(y3v3)... YUYV格式(实际格式与YUY2相同),数据排列格式为(y0u0),(y3v3)...(同上) YVYU格式,以4:2:2方式打包,数据排列格式为(y0v0),(y1u1),(y2v2),(y3u3)... UYVY格式,以4:2:2方式打包,数据排列格式为(u0y0),(v1y1),(u2y2),(v3y3)... AYUV 格式,带Alpha通道的4:4:4 YUV格式(a0y0u0v0)(a1y1u1v1)... Y41P格式,以4:1:1方式打包(u0y0),(y2),(y3) Y411格式,(实际格式与Y41P相同)(u0y0),(y3) Y211格式,(y0u0),(y4u4),(y6v6) YV420格式,4:2:0的意思是,色度采样在每条横向扫描线上只有亮度采样的一半,扫描线的条数上,也只有亮度的一半!换句话说,无论是横向还是纵向,色度信号的分辨率都只有亮度信号的一半。举个例子,如果整张画面的尺寸是720*480,那么亮度信号是720*480,色度信号只有360*240,在4:2:0中,“缺失”的色度采样不单单要由左右相邻的采样通过内插补点计算补充,整行的色度采样也要通过它上下两行的色度采样通过内插补点运算获得;请注意,在4:2:0颜色格式中,色度采样被放在了两条扫描线中间。为什么会这样呢?很简单:DVD盘上的颜色采样是由其上下两条扫描线的颜色信息“平均”而来的。 Packed和PLanar: packed表示yuvyuvyuv... 而planar表示yyyyyy...uuuuuu...vvvvvv 实际上,只有YUY2才是Packed format,而YV12则是属于Planar format。 YV12和YUY2的不同,在于YV12是YUV4:2:0格式,也就是DVD/VCD上原本储存的格式。YUY2则是YUV4:2:2格式(原始MPEG数据是YUV4:2:0); 另外,我发现gstreamer-ffmpeg里面有ffmpeg也就是可以播放wmv的插件,可以移植到arm上; gstreamer-plugin-bad里面有flash video的解码器; gstreamer-plugin-ugly里面有rm的demuxer; http://gstreamer.freedesktop.org/data/doc/gstreamer/head/ 这里面有详细的信息;

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...