- 博客(13)
- 资源 (8)
- 收藏
- 关注
原创 创建一个directshow应用程序二2.
事件交互的是实现directshow有一种机制,实现应用程序和Filter Graph的交互控制,该机制叫做事件通知(Event Notification)。当Filter状态转换,运行时遇到错误或者要求重画视频窗口时,都会发出一个特定的事件,由Filger Graph处理或者转发给应用程序。Filter Graph Manager上有三个接口与事件通知有关:IMedi
2014-12-26 10:31:07 8488
原创 创建一个directshow应用程序一
创建dshow应用程序一般有三个步骤:1.创建一个Filter Graph Manager组件。IGraphBuilder * pGraph = NULL;HRESULT hr = CoCreateInstance(CLSID_FilterGraph, NULL,CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void**)&pGraph);,
2014-12-26 09:28:00 5596
原创 directshow原理分析之filter到filter的智能连接
先看几个函数:IFilterGraph::AddFilter:参数为一个Filter对象,将其加入到Filter Graph中IFilterGraph::ConnectDirect:参数为一个输出Pin,一个出入Pin以及媒体类型,进行直接的链接IGraphBuilder::AddSourceFilter:参数为源文件名,自动将一个Source Filter加入到Filter Grap
2014-12-25 17:07:08 22360
原创 directshow原理分析之filter到filter的连接
Filter是Directshow中最基本的概念。Directshow使用filter graph来管理filter。filter graph是filter的容器。Filter一般由一个或者几个Pin组成。filter之间通过Pin来连接,组成一条链。PIN也是一种COM组件,每一个PIN都实现了IPin接口。试图链接的两个Pin必须在一个filter graph中。连接过
2014-12-25 14:18:44 6093 1
原创 directx学习之在屏幕上画一个三角形
前一张已经输出了一个背景为紫色的屏幕,这一节的目标是在该屏幕上输出一个三角形。下面将逐一介绍建立一个三角形的过程。一个三角形有三个点,叫做顶点。三个点的不同的集合可以建立不同的三角形。能让GPU创建一个三角形,必须将三个顶点的位置告诉它。下面是一个2D的例子。怎么将三个点的数据传给GPU?在d3d10中,顶点数据被存在一个缓存资源中。但是应该申请多大的缓存,这就是接下来
2014-12-18 14:02:09 8662
原创 (Directx11学习)开天辟地第一式
我们首先创建一个窗口,该窗口带有消息处理:最基本的win32中创建窗口程序://--------------------------------------------------------------------------------------//author:tongli//-------------------------------------------------
2014-12-17 19:01:49 5296
原创 java的字符编码集(UNICODE,utf-8,gbk等)
字符串的序列化:从char序列到byte序列的转化,叫做“编码”。1>java的String本质上是char数组。2>Unicode编码。与ISO-8859-1兼容。包含全世界所有的字符。均占2个字节。3>utf-8:采用变长编码1-N方案。英文1个字节,中文3个字节4>utf-16be编码:将16位的char从中间切开为2个byte。可以支持65535个字符编码5>GBK
2014-12-16 13:10:41 8568
原创 rtp协议分析
OSI七层模型:应用层:文件传输,电邮,文件服务等。HTTP,Telnet,DNS, FTP等协议表示层:数据格式化,代码转换,数据加密等会话层:解除或建立与别的接点的联系传输层:提供端到端的接口 TCP UDP RTP网络层:为数据包选择路由 IP ICMP RIP数据链路层:传输有地址的帧以及错误检测功能 物理层:以二进制数据形式在物理媒体上传输
2014-12-11 11:32:56 24507
原创 vs2013环境下编译SDL2.0
windows下用vs2013编译SDL2.0,遇到了一些问题,留作备忘。SDL源代码中就有VC工程。直接打开就行。编译的过程中需要用到directx的库,库是有版本要求的,直接下载最新的就行。安装好之后在工程中加入derectx 的include和lib路径。不用额外的导入lib库了。完成以上所有的之后,在VS2012之上的版本的VS编译的时候会有额外的问题。报如下的错误。
2014-12-10 18:44:57 5917
原创 ffmpeg_Cropping Video(剪裁视频)
1.Cropping Basics老版本的ffmpeg有bottom, left, right, top选项,但是现在已经被废弃了,而改用crop filter来进行描述。值ow可从oh中得到,反之亦然,但是不可以从x和y中得到,因为x和y是从ow和oh中推断出来的。值x可从y中获取,反之亦然。比如:剪切输入帧的左第三,中第三,右第三,可以用下面的命令。ffmpeg -
2014-12-02 09:50:43 12633 1
原创 ffmpeg-resize and scale
resize 的意思是改变长和宽,scale意思是用scale filter改变帧的大小。1.Resizing video宽和高用-s选项进行设置。要在output filename 之前设置。例如:初始化分辨率为320*240ffmpeg -i input_file -s 320*240 output_file2.预定义视频帧的大小下面的两个cmd有同样的
2014-12-01 15:45:18 11007
原创 ffmpeg-比特率,帧率和文件大小
比特率和帧率是音视频基本的特性,对于音视频整体的质量有关键作用!如果知道比特率和持续时间,就可以计算输出文件的大小。1.Frame(frequency)rate introduction帧率就是每秒编码进视频文件的帧数目。人类的眼睛需要每秒至少15帧才能将图像连贯在一起。帧率的单位是HZ,LCD显示一般有60Hz的平率。有2种类型的帧率-interlaced(denoted asi
2014-12-01 13:52:41 69636 6
原创 ffmpeg-Displaying Help and Features
1.Text help in FFmpeg toolsffmpeg有很多的控制台帮助信息。可以查找到比如编解码器等信息。下面的选项对于ffplay和ffprobe适用。例如:ffmpeg -h decoder=flv2.Available bitstream filtersffmpeg -bsfs
2014-12-01 13:31:27 4547
FFMPEG转码程序
2015-02-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人