- 博客(19)
- 资源 (1)
- 收藏
- 关注
转载 ffmpeg0
FFmpeg是相当强大的多媒体编解码框架,在深入分析其源代码之前必须要有基本的多媒体基础知识,否则其源代码会非常晦涩难懂。本文将从介绍一些基本的多媒体只是,主要是为研读ffmpeg源代码做准备,比如一些编解码部分,只有真正了解了多媒体处理的基本流程,研读ffmpeg源代码才能事半功倍。下面分析一下多媒体中最基本最核心的视频解码过程,平常我们从网上下载一部电影或者一首歌曲,那么相应的多媒
2015-04-04 18:36:33
461
转载 OpenCV的配置
1. 准备工作 1.1. 安装 Visual Studio 2010, 需要安装 VC++ 相关功能。具体可求助度娘。 1.2. 下载 OpenCV 2.4.9 For Windows:https://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.9/opencv-2.4.9.exe/downlo
2015-03-30 17:19:19
511
原创 互斥对象
使用互斥对象还会用到的两个函数是 WaitForSingleObject和ReleaseMutex,函数声明可以百度或查阅MSDN,这两个函数的功能分别是申请互斥对象的拥有权和释放互斥对象的拥有权。那么怎么利用互斥对象来实现线程同步呢?线程同步主要是用来处理多线程需要访问共享资源的问题,那么为了防止这个过程中出现当一个线程正在访问这个资源时,由于时间
2015-03-27 13:16:27
435
转载 RTP
RTP协议1 RTP报文格式2 基于RTP的带宽控制方法 1. 接收端的控制策略 2. 发送端的控制策略 RTP(Real-time Transport Protocol)是由IETF开发的实时传输协议,可以在面向连接或无连接的下层协议上工作,通常和UDP协议一起使用。RTP的工作机理与RSVP不同,主要实现一种端到端的多
2015-03-18 20:47:05
495
转载 一种多视点自由立体高清视频播放器的设计与实现
摘 要: 根据多视点自由立体视频的压缩编码特征与数据存储结构,提出一种基于光栅显示技术的软件解决方案,采用底层Windows API 编写实现播放器的全部功能。设计实现了针对YUV视频格式的播放器,并以此为基础加入H.264解码功能模块,最终实现多线程工作模式的视频播放器,支持YUV与H.264两种视频格式,具备平面/立体播放模式自由切换功能。播放立体视频时图像清晰、流畅、立体感明显。 关键词:
2015-03-18 16:34:08
995
1
转载 windows配置live555
live555Ⅰ live555简介 Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的
2015-03-16 22:06:38
706
转载 static 关键词的使用
static 关键词的使用2.1 什么叫函数重复定义我们经常会遇到报错,说变量或者函数重复定义。那么,在此,首先我举例说明一下什么叫函数的重复定义。//a.c文件 void test() { return; } //b.c文件 void test() { return; } 那么,在编译的时候是不会报错的,但是,在链接的时候,会出现报错:
2015-03-13 16:28:56
443
转载 already defined in MSVCRTD.lib
本文主要分析和解决编译链接时产生的 LNK2005 错误。【错误信息】: mfcs90ud.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)【分析原因】: 这篇文章:《在Visual C++中以错误的顺序链接CRT库和MFC库时
2015-03-13 16:21:36
561
转载 常用的YUV格式
为节省带宽起见,大多数YUV格式平均使用的每像素位数都少于24位元。主要的抽样(subsample)格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1和YCbCr 4:4:4。YUV的表示法称为A:B:C表示法:4:4:4表示完全取样。4:2:2表示2:1的水平取样,垂直完全采样。4:2:0表示2:1的水平取样,垂直2:1采样。4:1:1表示4:1的水平取
2015-03-13 15:18:36
578
原创 小知识
UpdateData()参数只有一个,默认为TRUE。UpdateData(TRUE)——刷新控件的值到对应的变量。(外部输入值交给内部变量)即:控件的值—>变量。UpdateData(FALSE)—— 拷贝变量值到控件显示。(变量的最终运算结果值交给外部输出显示)即:变量值—>控件显示。例如,窗口中用 DDX_Text(pDX, IDC_EDIT1, m_us
2015-03-07 09:56:29
341
原创 MFC
DECLARE_MESSAGE_MAP()是MFC定义的一个宏,在里面定义了两个函数:GetMessageMap()和GetThisMessageMap()BEGIN_MESSAGE_MAP(thisClass,baseClass)的作用是,此时去定义GetMessageMap(),他返回GetThisMessageMap()。在GetThisMessageMap()里面,定义了一个数
2015-02-05 15:09:42
624
原创 #ifdef
作用:我们可以用它区隔一些与特定头文件、程序库和其他文件版本有关的代码。代码举例:新建define.cpp文件?123456789#includeusing namespace std;intmain(intargc,char*argv[]){#ifdef DEBUGcout"Beg
2015-02-05 11:21:59
453
原创 memset函数的用法
memset是计算机中C++语言函数。将s所指向的某一块内存中的前n个 字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向s的指针。memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法char buffer[4];memset(buffer,0
2015-02-03 16:31:47
412
原创 linux配置ffmpeg
ffmpeg是一开源的可跨平台使用的一个图形处理插件,这可以进行(www.111cn.net)录制、转换以及流化音视频,同时可以对视频进行截图,下面我们来看看。
2015-02-02 20:35:24
530
原创 快捷键
在VC2005中,快捷键是Ctrl + K, Ctrl + F, 这是一个组合键,即先按Ctrl + K, 这时候编辑器会等待下一个按键动作,此时再按Ctrl + F, 即可以格式化代码了,当然,也可以在选项里面设置成使用VC6的快捷键,就可以继续使用Alt + F8了也有 Visual Studio 2005的,下面的快捷键符合IDE默认的键盘映射方案,如果需要更改“工具”——“选项
2015-01-30 11:29:21
387
转载 FFmpeg编译出错_img_convert 找不到
问题出现在下载的ffmpeg的版本不一样,在0.4.8以前的版本中还有img_convert这个函数,新版本中用sws_getContext和sws_scale代替了。简单说明如下:新版本的ffmpeg添加了新的接口:libswscale来处理图像缩放。以前使用img_convert来把RGB转换成YUV12,现在使用新的接口。新接口更加标准和快速,而且里面有了MMX优化代
2015-01-29 21:16:44
486
翻译 RTP
H.264 RTP payload 格式H.264 视频 RTP 负载格式1. 网络抽象层单元类型 (NALU)NALU 头由一个字节组成, 它的语法如下: +---------------+ |0|1|2|3|4|5|6|7| +-+-+-+-+-+-+-+-+ |F|NRI| Type | +-
2015-01-29 11:26:59
337
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人