x264Test.zip
实现了采集本机usb摄像头视频数据,并利用x264库进行h264编码,将h264数据发送至live555的rtsp服务,从而实现提供以rtsp方式播放视频。亲测640*480分辨率下,稳定、流畅。但还有待完善的地方,比如打开视频较慢、开始前几秒会出现绿屏,欢迎讨论、共同进步。本工程依赖x264、OpenCV、live555、boost的库及头文件,需要的可以联系我,当然也可以自己动手编译,或者在网上下载。
基于ffmpeg实现了解析rtsp视频为cv::Mat格式,将Mat数据推送到rtmp服务
基于ffmpeg实现了解析rtsp视频为cv::Mat格式,此时可以对cv::Mat进行处理,然后再将cv::Mat数据推送到rtmp流媒体服务。处理、转码一条龙。另外,工程中关于OpenCV、ffmpeg的库和头文件的路径需要自己根据实际路径配置,如果没有这两种依赖库,官网上可以很轻松的下载到。
简易rtsp流媒体服务,实现了系列图片转为rtsp视频流,支持多路并发
本资源在live555的基础上,实现了一系列实时的图片转为rtsp播放格式的视频流的功能,支持多路并发。Github上有这个资源,但只支持一路,我在此基础上做了改进。
rtsp2rtmpServer
利用ffmpeg实现获取rtsp视频,并推送到Nginx-rtmp流媒体服务,从而支持从客户端以rtmp、hls方式浏览视频。
nginx-rtmp-win32搭建流媒体服务器,支持rtmp、hls
本资源包括两部分,一是nginx-rtmp-win32安装包,二是安装、配置使用说明。本资源已验证实现的功能是将摄像机采集的rtsp视频流,推送到我们搭建的流媒体服务,然后以rtmp、hls两种协议VLC播放可以正常获取的到流。
red5流媒体服务器(rtmp)安装包及安装说明
Red5的主要功能是,提供基于Flash的流媒体服务的一款基于Java的开源流媒体服务器。它由Java语言编写,使用RTMP作为流媒体传输协议。它具有流化FLV、MP3文件,实时录制客户端流为FLV文件,共享对象,实时视频播放、Remoting等功能。本资源包括两部分,一是red5-server-1.09-release版本,二是red5的安装、配置使用说明。
利用red5和ffmpeg搭建rtmp流媒体服务器
本文档记录了利用ffmpeg将摄像机采集的rtsp视频流转换为rtmp视频流,并推送到rtmp服务器red5的详细步骤。最终可以供VLC、web页面访问并展示rtmp视频。
利用ffmpeg将H264裸流文件封装为MP4文件并保存
利用ffmpeg库,将H264裸流文件读到内存,然后封装为MP4文件并保存到本地。转换效果亲测,流畅,无卡顿。
testRTSPClient 通过mp4v2 将音视频流录制为mp4
修改live555的testRTSPClient 来接收音视频流,并通过mp4v2 将音视频流录制为mp4(audio:aac,video:h264)
基于H264、AAC的rtp媒体流数据合成mp4文件
接收RTP数据,获取h264视频和 acc音频流,并封装为MP4文件。
H264\AAC媒体流打包为MP4文件demo
将mp4v2库封装,实现将H264、AAC媒体流打包为MP4文件,简单易用,内含demo、源码及注意事项。
xerces-c-src_2_7_0库和头文件
本资源附件里有三部分内容:1,编译好的xerces库文件夹lib;2,src文件夹,里面有相应的头文件、源文件;3,具体的使用文档。
火狐支持ActiveX的扩展
1,火狐版本必须是51.0以下,51.0以上我没验证;
2,解压附件,安装multi_browser.exe,安装完成后,可以在火狐地址栏输入about:plugins查看是否成功;
3,如果是在HTML页面调用ActiveX,则注意object的写法,同IE是不一样的。附件callNew.html里有调用举例,注释掉的object是IE写法,没注释掉的是Firefox写法。
VC注册OCX控件
当程序中调用ActiveX控件时候,需要先检测系统是否已注册该控件,如果没有注册则注册。
流程:
1.检测系统清册表是否安装该控件BOOL OnIsRegistOCX( LPCTSTR lpCLSID)
2.如果没有注册则复制OCX文件到系统目录,如system32目录并注册 OnRegisterReg(LPCTSTR pszDllName)
3.用户需要调用的接口函数LRESULT Che
ckRegistOCX(LPCTSTR lpOCXname, LPCTSTR lpCLSID)
如何在firefox上安装未通过验证的扩展
首先下载我分享的文件,里面是config.js和config-prefs.js两个文件,然后:第一步:找到你安装的火狐的安装目录第二步:将config.js放到火狐安装的根目录下 例D:\Mozilla Firefox第三步:将config-prefs.js放到火狐目录里的defaults中的pref里 例D:\Mozilla Firefox\defaults\pref
让谷歌、火狐支持OCX插件的安装包
使Chrome、FireFox浏览器支持ocx类型的插件,像用IE的<object>标签。使用方法:在FireFox中注册axhost.r39.xpi,Chrome中注册chrome.r39.crx,然后安装ffactivex-setup-r39.exe。
C++X64之log4cplus.dll
C++X64之log4cplus.dll的编译、继承、二次封装、使用说明,简便易用、稳定可靠。
Thrift之C++初体验
thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的、高效的服务。
Qt信号和槽
信号与槽机制是qt的核心,一个信号可以接多个槽,多个信号也可以接一个槽,当然一个信号也可以接一个槽。本文的重点是讲述emit的应用,emit是qt中定义的宏,是用来发送一个信号,然后你再写一个槽函数。在构造函数中,通过connect函数将此信号与你所写的槽连接起来,即可使用。
QT线程start()和run()
线程之间共享数据,但又单独执行,QT线程QThread是平台无关的。通常主线程从main开始执行,而在主线程中创建其他线程,其他线程派生于QThread。
CplusplusConcurrencyInAction_PracticalMultithreading
CplusplusConcurrencyInAction_PracticalMultithreading
C#之ConcurrentDictionary
一般情况下,对同一个资源异步访问时,必须有多线程的处理,以及锁的存在,而ConcurrentDictionary 帮您省去了多线程的处理,以及锁的存在,而且是系统包,引用方便,简直值得拥有。