文档章节

视频基础知识

来来叔叔
 来来叔叔
发布于 2017/08/04 23:57
字数 1152
阅读 2
收藏 0
点赞 0
评论 0
 

零散的一些笔记~~~

人眼及显示器对亮度的非线性,gamma校正

人眼对亮度的敏感能力优于色差
YUV,YCbCr可进行色度子采样
YCbCr 4:4:4 4:2:2 4:2:0

分辨率,帧速率:广播电视与计算机图形两条线
计算机 广播电视
          QCIF(176*144)
QVGA(320*240) CIF(352*288)
VGA(640*480) NTSC(720*480)
SVGA(800*600) PAL(720*576)
XGA(1024*768) HDTV(720p)1280*720
SXGA(1280*1024)

NTSC 隔行扫描 30fps
PAL逐行扫描 25fps


为了实现数字视频,NTSC,PAL之间的互操作 
ITU-R BT.601规定了对视频信号进行数字化编码的方法
建议采用4:2:2 YCbCr作为广播视频的首选格式
同时也提供了同步信号(HSYNC,VSYNC,FIELD)
ITU-R BT.656实际定义了实施BT.601所必须的物理接口和数据流

嵌入式数字视频系统

Analog video Camera or CCD---->HW Decode(A/D converter)------> SW Encoder(compression)
                                        |
                          storage media<--------->|
                                        |
   TV or Monitor<--HW Encoder(D/A convertr)<------SW Decoder(uncompression)


CMOS Sensor --> 去隔行(de-interlacing)-->(Scan Rate Conversion)-->pix processing
--->chroma re-sample(4:2:2 to 4:4:4)-->gamma correction,YCbCr to RGB conversion
-->scaling-->display processing-->Output to RGB LCD panel

1去隔行:方法有行倍增,行平均,中值滤波,运动补偿
2扫描速率转换:如电影录制的24fps转换为30fps,可以通过周期化的样式重复各帧来实现
3像素处理
如2d卷积滤波
边界处理:忽略边缘,复制像素,补0
4色度再采样和颜色转换
插值出Cb,Cr:复制,平均值,其它高阶滤波
色度的再采样和到RGB的转换都线性的运算,有可能组合这些步骤,形成单个的运算,从而提高效率
5缩放和裁切
缩减:最简单的方法是裁切,下采样,上采样
增加或减小每行的像素数量
丢弃像素或复制现有像素,线性内插,
增加和减小每帧的行数
丢弃行,复制行,简单垂直平均,更高阶的FIR滤波器或者多比例滤波器
6显示处理
RGB888, RGB666, RGB565
alpha混合,合成操作,色度键控
输出格式化

高效技术:
NTSC:27MB/s, 存储器:133/266MB/s
1视频流接口:FPGA, FIFO, PPI(并行外设接口)
可能的数据流
低分辨率的视频处理和JPEG等图像压缩算法,无需缓冲存储
imagedata and syncs -->PPI --(DMA)--> L1 Memory(processor)--(DMA,compressed video)-->serial port
MPEG2,MPEG4,需要将中间视频帧存储在存储器中,以执行时间域的压缩
videodata -->PPI         L1 Memory(processor)--(DMA,compressed video)-->serial port
&syncs         |         |
           |         |
           --(DMA)-->SDRAM

2视频ALU
1)专门优化的指令
如4重的8bit减法-绝对值-累加(SAA)指令
非常适合于基于块的视频运动估计(目标宏块的最佳匹配)
如4个相邻值平均值的运算指令
2)关于DMA的考虑
2D DMA可以实现视频数据顺序的转换(交织的RGB到分离的RGB)和有选择的传输
平面化和间插式缓冲格式的对比:平面化的缓冲器可能更有效,很多视频算法是依靠
单独的亮度和色度信号工作的;减少SDRAM缺页延迟
3)双重缓冲
对视频显示缓冲区的管理就是这一方法的绝好实例。通常,在系统中,如果各种视频源与最终显示的内容之间存在传输速率差异的话,就应该保证在老的内容和新的视频帧之间实现平滑的切换。这是利用双缓冲管理方法来实现的。一个缓冲区指向目前的视频帧,该帧被以一定的刷新速率送到显示器上。第二个缓冲区则用最新输出的帧来填充。当后一个缓冲器被填满时,DMA发出中断信号,指示现在应该将新的帧发送到显示器上。此时,第一个缓冲区开始填充经过处理的、用于显示的视频信号,而第二个缓冲区则输出当前的显示帧。这两个缓冲区以“乒乓”方式来回切换。


高清电视即高清晰度电视,英文:High Defintion TeleVision, 缩写为HDTV, 高清电视显示屏幕必须至少具备720线逐行(720p)或1080线隔行(1080i)扫描的物理分辨率,屏幕纵横比为16:9, 同时能兼容接收其它较低格式的信号并进行数字化处理重放。
编码方式有H.264, MPEG-4, WMV-HD

© 著作权归作者所有

共有 人打赏支持
来来叔叔
粉丝 0
博文 100
码字总数 55732
作品 0
广州
高级程序员
《基于 FFmpeg + SDL 的视频播放器的制作》课程的视频

这两天开始带广播电视工程大二的暑假小学期的课程设计了。本次小学期课程内容为《基于 FFmpeg + SDL 的视频播放器的制作》,其中主要讲述了视音频开发的入门知识。由于感觉本课程的内容不但适...

leixiaohua1020 ⋅ 2015/07/26 ⋅ 0

黑马程序员:前端学习路线图

前端很火,想自学前端的人也多。作为过来人,知道自学的辛苦。特来给大家分享这份学习路线图,让想自学前端的小伙伴们有一份系统专业的学习资源和学习指导。若是觉得有用记得给点个赞哦!无论...

传智播客 ⋅ 2017/03/08 ⋅ 2

自学前端之前端学习路线图

前端很火,想自学前端的人也多。作为过来人,知道自学的辛苦。特来给大家分享这份学习路线图,让想自学前端的小伙伴们有一份系统专业的学习资源和学习指导。若是觉得有用记得给点个赞哦!无论...

爱龙猫 ⋅ 2017/02/24 ⋅ 7

来自IOS开发工程师的零基础自学HTML5经验分享

移动互联网的火爆,而Html具有跨平台、开发快的优势,越来越受到开发者的青睐。感谢IOS开发工程师“小木_Boy”’带来的HTML5学习经验分享。 一、学习途径 1、很多视频网站 比如慕课、和极客学...

inw3cschool ⋅ 2017/03/21 ⋅ 0

怎样学好excel函数?

很多人认为excel很简单。说这种话的只有两种人:一种是excel高手,二种是还没有入门的菜鸟。但我今天说的不是笼统的excel,而是excel中的函数功能。如果你已经有想法要系统学习函数时,说明你...

曾贤志 ⋅ 2016/02/02 ⋅ 0

曾垂鑫的51CTO视频集锦入口(长期更新)

自入驻51CTO学院以来,已经发布的视频课程如下 Exchange邮件管理系列 Exchange Server 2016管理系列【第一季】:部署与新特性(共37课时)在线自学视频教程51CTO学院 http://edu.51cto.com/c...

zengchuixin2008 ⋅ 2015/01/16 ⋅ 0

老男孩的MySQL私房菜新书视频1-9章先堵为快

201705老男孩的MySQL私房菜深入浅出精品视频课程第1-2章 说明:关系数据库及非关系数据库的介绍,产品发布知识 http://edu.51cto.com/course/course_id-9073.html 201705老男孩的MySQL私房菜...

老男孩oldboy ⋅ 2017/06/14 ⋅ 0

C/C++Win32编程基础详解视频下载

课题视频:C/C++Win32编程基础详解 视频知识:win32窗口的创建 windows事件机制 主讲:择善Uncle老师 学习交流群:386620625 验证码:625 -----------------------------------------------...

择善_Zach ⋅ 2015/06/25 ⋅ 0

2017年11月软考全国各省市报名时间及报名网址(动态更新)

徐朋老师:10年以上软考培训经验,线下培训学员过万人。培训过的课程有:网络规划设计师、网络工程师、信息系统项目管理师、系统集成项目管理师、信息安全技术、网络技术、信息安全工程师、软...

软考徐朋 ⋅ 2017/08/02 ⋅ 0

Excel 2013 基础视频教程上线了

地址链接: http://edu.51cto.com/course/11062.html 课程简介: 此课程为Excel基础视频教程,从最基础的基本知识与操作讲起,课程内容共分为9个部分,其中包括Excel基本知识;工作表的基本操...

Amylzy ⋅ 2017/09/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

IDEA PermGen space内存溢出

解决方案: File -> Settings -> Build, Execution, Deployment / Build Tools / Maven / Runner下,找到VM Options选项,默认是空的,改为如下内容(或更大值)...

快乐的小火柴 ⋅ 10分钟前 ⋅ 0

前端常见跨域解决方案

什么是跨域? 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。 广义的跨域: 1.) 资源跳转: A链接、重定向、表单提交2.) 资源嵌入: <link>、<script>、<im...

临江仙卜算子 ⋅ 11分钟前 ⋅ 0

系统管理命令service

service命令用来控制系统服务的实用工具,例如启动、停止、重启和关闭系统服务,以及当前状态。当然也可以直接操作,例如/etc/init.d/mysqld restart等。 语法 service (选项)(参数) 选项...

Jpchina ⋅ 16分钟前 ⋅ 0

MySQL 联合索引的命中规则

为什么要用联合索引? 对于查询语句“SELECT T.* FROM T WHERE T.c1=1 AND T.c3=2”涉及到两列,这个时候我们一般采用一个联合索引(c1, c3);而不用两个单列索引,这是因为一条查询语句往往应...

hensemlee ⋅ 24分钟前 ⋅ 0

Spring 自动组件扫描

通常情况下都是在XML配置文件中手动声明Bean和组件的。不过Spring也可以自动扫描组件实例化Bean,这样就可以避免在XML文件中繁琐的Bean声明。 手动声明Bean: 这里不再啰嗦,就是简单地在XML...

霍淇滨 ⋅ 28分钟前 ⋅ 0

MapReduce简单需求分析-共同好友及查找互粉的情况

MapReduce的设计,最重要的是要找准key,然后制定一系列的数据处理流程。MapReduce的Map中,会把key相同的分配到同一个reduce中,对于key的选择,可以找到某个相同的因素。以下面的几个例子说...

Jason_typ ⋅ 30分钟前 ⋅ 0

springboot多数据源自动切换

SpringBoot多数据源切换,先上配置文件: 1.pom: <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20......

JackyRiver ⋅ 32分钟前 ⋅ 0

Boost库编译应用

版本:Boost 1.66.0 Windows库编译 官网指南:直接执行bootstrap.bat处理文件即可,可以我却遇到一堆的问题。 环境:Windows 10 + Visual Studio 2017 Boost编译出来库命名 boost库生成文件命...

水海云 ⋅ 37分钟前 ⋅ 0

解决Eclipse发布到Tomcat丢失依赖jar包的问题

如果jar文件是以外部依赖的形式导入的。Eclipse将web项目发布到Tomcat时,是不会自动发布这些依赖的。 可以通过Eclipse在项目上右击 - Propertics - Deployment Assembly,添加“Java Build ...

ArlenXu ⋅ 37分钟前 ⋅ 0

iview tree组件层级过多时可左右滚动

使用vue+iview的tree组件,iview官网iview的tree树形控件 问题描述:tree层级过多时左右不可滚动 问题解决:修改overflow属性值 .el-tree-node>.el-tree-node_children { overflow: vi...

YXMBetter ⋅ 39分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部