一个在IT行业摸爬滚打的老司机
作者:吴桐,网易云信音视频实时通话项目与互动直播项目负责人。先后参与网易UU网游加速器、易信音视频实时通话等项目,在高性能服务器、网络传输技术、实时音视频多媒体与直播技术各模块有资深的实践与经验。 一、前言 移动直播这把火从2015年一直烧到2016年,毫无疑问直播是当前移动互联网最热门的领域之一,在超大热度的引导下直播领域也吸引了大量的商业资本。
http://www.rosoo.net/a/201110/15146.html本文档规定了一般性的前向纠错的媒体数据流的RTP打包格式。这种格式针对基于异或操作的FEC算法进行了特殊设计,它允许终端系统使用任意长度的纠错码,并且可以同时恢复出荷载数据和RTP头中的关键数据。
一、 背景说明 在VS环境下,开发C++代码操作PPT,支持对PPT模板的修改。包括修改文本标签、图表、表格。满足大多数软件生成PPT报告的要求,先手工创建好PPT模板,在程序中修改模板数据。 二、 开发环境构建 通过VS2012的Class Wizard创建PowerPoint和Excel的COM接口;由于需要操作PPT中的图表,而图表的数据使用Excel存储的,需要修改图表的数据就得生成Excel的COM接口。
error LNK2005: _DllMain@12 已经在 dllmain.obj 中定义 今天遇到了同样的问题,搜索搜到了这里,后来解决了。。。。。。。。 创建解决方案时,用的是WIN32 DLL,添加了MFC ATL的支持,自动生成文件中是没有现成的DllMain函数的。
MinGW在线安装程序下载地址:http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get-inst/mingw-get-inst-20101030/mingw-get-inst-20101030.
一、GCC的历史 GCC是一个原本用于Unix-like系统下编程的编译器。 不过,现在GCC也有了许多Win32下的移植版本。 所以,也许对于许多Windows开发者来说,GCC还是一个比较陌生的东西。
本文参考了网络上的不少文章,但由于版本环境的问题参考文章并不能直接指导编译,本文吸收多方经验,并在自己多次编译实验的基础上写成,欢迎转载,请注名出处。 FFmpeg是在Linux平台下开发的,但它同样可以在其它操作系统环境中编译运行,本文介绍的就是在windows下编译FFmpeg。
MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++、ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便。MinGW提供了一套完整的开源编译工具集,以适合Windows平台应用开发,且不依赖任何第三方C运行时库。
原文转自:http://hi.baidu.com/doodlezone/item/74a203155efe26dbbf9042dd UDT文档阅读理解 一、 概述 UDT是一个高性能的基于UDP的数据传输协议,它是为支持高速广域网上海量数据传输而设计,为解决TCP的效率和公平问题,同时提供可靠的数据流和报文传输。
网上与UDT相关的资料不多,与UDT相关的源码例子更少。最近在接触UDT,也是因为缺少相关的资料,导致学习起来甚感痛苦。下面将我自己这两天弄出来的代码贴出来,希望对在寻找相关资料的童鞋有一定的帮助。与服务端相对应的客户端在另一篇博文中 [cpp] view plain copy ...
上面一篇文章中提出了服务端的,其实这里没有严格意义的服务端和客户端之分,因为我在代码中是基于UDP的,不存在服务端与客户端,两个都是对等的,只是我这里进行一下简单的区分而已。在这里,客户端所进行的主要操作就是首先给服务端发送文件名,然后将文件直接通过fopen(),fread()等一系列的操作将文件发送过去。
FreeSWITCH使用了大量的第三方库,本文档主要介绍关联相关库的信息: 音频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5486753.html 视频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5488890.html ① ldns dns相关的库。
FreeSWITCH使用了大量的第三方库,本文档主要介绍视频相关库的信息: 音频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5486753.html 其他相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5489315.html ① openh264 OpenH264 是思科公司以BSD协议开放的一个开源的 H.264 编码器和解码器。
FreeSWITCH使用了大量的第三方库,本文档主要介绍音频相关库的信息: 视频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5488890.html 其他相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5489315.html ① libbroadvoice BroadVoice是一种高清语音编解码,支持窄带8kHz的BV16和宽带16kHz的BV32。
博客地址:http://blog.csdn.net/kevindgk GitHub地址:https://github.com/KevinDGK/MyAudioDemo 一简介 二局域网语音配置 三Speex 1 简介 2 技术特点 3 开发-语音压缩 4 ...
本文主要介绍一种QoS的解决方案,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help QoS出现的背景: 而当网络发生拥塞的时候,所有的数据流都有可能被丢弃;为满足用户对不同应用不同服务质量的要求,就需要网络能根据用户的要求分配和调度资源,对不同的数据流提供不同的服务质量: 1、对实时性强且重要的数据报文优先处理; 2、对于实时性不强的普通数据报文,提供较低的处理优先级,网络拥塞时甚至丢弃。
Git学习较好的网址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001373962845513aefd77a99f4145f0a2c7a7ca057e7570000 开源中国的git站点:http://git.oschina.NET/oschina/git-osc/wikis/Home msysgit是Windows版的Git,从http://msysgit.github.io/下载 安装选择默认安装就可以了。
Git简介 Git是分布式版本控制系统。SVN是集中式版本控制系统,而Git则是分布式版本控制系统。 集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。
git到底是个什么东西,我这里就不介绍了,如果大家还有不懂的,可以去百度一下的。我这里给一个介绍的网址:git简介 这里在留一个地址http://baike.baidu.com/subview/1531489/12032478.htm#viewPageContent 如果大家没有安装包,也可以到这里下载:点击下载 链接地址:http://download.csdn.net/download/xmt1139057136/7191917 安装过程我就不介绍了,直接点击下一步下一步就行了。
命令行太麻烦,肿么破?便便利用睡觉的时间解决了一点效率问题,tortoiseGit处理GitHub,一样可以处理 Git @osc ,虽然说可以用gitk来调出图形界面,but,我就是不想看见黑黑的命令提示符的框框,于是乎,近乎龟毛到变态的便便又开始了新的折腾。
标签:tortoisegit 环境:win8.1 64bit 安装准备: 首先你得安装windows下的git msysgit1.9.5 安装版本控制器客户端tortoisegit tortoisegit1.
“WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的技术,是谷歌2010年以6820万美元收购Global IP Solutions公司而获得的一项技术,Google开源了这项技术!” 就 冲着600...
此文较长,建议收藏起来看。 一、一个典型的IP通信模型 二、Server2Server技术分类 Server2Server这块也是一个专门的领域,这里只简单分个类。 1、同一国家相同运营商之间: 同一运营商之间也有丢包,在铁通,鹏博士等运营商中尤甚。
Google开源实时通信项目WebRTC Google正式开源了WebRTC实时通信项目,希望浏览器厂商能够将该技术内建在浏览器中,从而使Web应用开发人员能够通过HTML标签和JavaScript API就实现Web音频、视频通信功能。
Skype表示它最近将开始向第三方开发人员和硬件制造商提供免版税认证(RF)的Silk宽带音频编码器。 Silk下载地址如下 http://developer.skype.com/silk/SILK_SDK_SRC_v1.
对比一下这三种VOIP语音算法的特点: 1 参数与特征 2 SILK性能 关于iLBC和Speex的性能可以参考以前写的文章。 3 关于VOIP一些观点(仅代表个人观点) 1) Skype 辛苦三年开发的SILK为什么...
最近简单看了一下Skype SILK codec 算法, 基本原理和流程大体明白了, 以后有时间再仔细研究一下细节,今天就简单说说. SILK Codec是一个语音和音频编解码算法, 对于音频带宽、网络带宽和算法复杂度都具有很好的弹性。
OpenAL播放pcm或wav数据流-windows/iOS/Android(一) 最近在研究渲染问题,本文采用openal做pcm和wav数据流播放,并非本地文件,demo是windows的,ios通用。
Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力。 typedef struct { WORD wMid; 用于波形音频输入设备的设备驱动程序制造商标识符。
写在前面 一开始是打算用这个老接口做讯飞语音识别的程序,在转移到UWP时发现,这玩意在Windows Runtime中屏蔽(弃用)了,将来会更新使用WASAPI的程序 WaveRecorder类代码下载地址 录音无非两种需求: 1. 非实时获得音频,也就是停止录音了你才需要处理它; 2. 实时获取音频,比如QQ电话这种这边讲话那边马上就听到的。
XAudio2 是一个跨平台的API,在Xbox 360及Windows中得到支持。在Xbox 360上, XAudio2作为一个静态库编译到游戏可执行文件中。在Windows上,XAudio2提供一个动态链接库(DLL)。
在用解码器解码音频数据得到PCM音频数据块之后,可以在将数据送给声卡播放之前调节其音量大小,具体的实现函数如下: [cpp] view plain copy void RaiseVolume(char* buf, UINT32 size, UINT32 uRepe...
与上一篇的“C++ 播放音频流(PCM裸流)” 点击打开链接 相对应,本篇是关于用C++实现录音功能的。同样是直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用,也可以下载本人上传的相关工程,这个工程是用VS2013写的,如果是较低的版本就呵呵了。
直接上代码,如果有需要可以直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用了(注意将声道和频率与你自己的文件对应)。当然我自己也用VS2008写了个例子上传了,如果有需要下载地址如下:点击打开链接。
直接上代码,如果有需要可以直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用了(注意将声道和频率与你自己的文件对应哦)。当然我自己也用VS2008(VS2013好用太多,强烈推荐还是用VS2013,只是它的工程太大,上传起来相当费劲,所以还是用VS2008重写了。
这篇文章主要介绍了使用WindowsAPI实现播放PCM音频的方法,很实用的一个功能,需要的朋友可以参考下 本文介绍了使用WindowsAPI实现播放PCM音频的方法,同前面一篇使用WindowsAPI获取录音音频的方法原理具有相似之处,这里就不再详细介绍具体的函数与结构体的参数,相同的部分加以省略,只介绍主要的功能部分代码。
这篇文章主要介绍了使用WindowsAPI获取录音音频的方法,非常实用的功能,需要的朋友可以参考下 本文实例介绍了使用winmm.h进行音频流的获取的方法,具体步骤如下: 一、首先需要包含以下引用对象 ? 1 2 3 #include #include "mmsystem.
在WINDOWS下,音频函数有多种类型,如MCI、多媒体OLE控制、高级音频等,使用方法都比较简单。但如果想编写一个功能较强大的音频处理程序,那就必须使用低级音频函数和多媒体文件I/O来控制音频设备的输入和输出。
fopen()函数: 1.作用: 在C语言中fopen()函数用于打开指定路径的文件,获取指向该文件的指针。 2.函数原型: [cpp] view plain copy FILE * fopen(const char * path,const char * mode); -- path: 文件路径,如:"F:\Visual Stdio 2012\test.txt" -- mode: 文件打开方式,例如: "r" 以只读方式打开文件,该文件必须存在。
一、简易安装 操作环境 CentOS6.5 64bit,原版本4.4.7,不能支持C++11的特性~,希望升级到4.8.2 不能通过yum的方法升级,需要自己手动下载安装包并编译 1.1 获取安装包并解压 wget http://ftp.
常见音频编码格式,有窄带编码和宽带编码,从传统的PSTN网络,到现在的IP网络,一张表格,一目了然。 常见音频编码格式 宽带语音就是扩大了采样的语音频率范围。比特率小于64Kbps的,有些适用于VOIP技术的音频编码。相关知识:PCM编码。
eclipse编译C程序时提示: ..\src\main.c:8:21: fatal error: my_type.h: No such file or directory 如图: 需要添加自己的头文件的路径: 选中工程再右键点击,选择右键菜单的Propertise: C/C...
最近微软正式发布了.net code 和asp.net code。尝试了下在linux下.net code和asp.net code使用。 具体怎么使用.net code 和asp.net code 请大家阅读大内老A写的“通过几个Hello World感受.NET Core全新的开发体验". 这里主要写在Centos 7 安装 Visual stdio Code。
一、安装中文语言支撑 我当初安装CentOS6.2时选择了中文语言支持,有iBus和拼音输入法,有gnome和kde 没有安装的可以参考:CentOS英文环境下使用中文输入法 安装中文语言支持和输入法 二、配置XWindow 1 /etc/sysconfig/i18n 文件的内容: LANG="zh_CN.
注:本文所提供的参考示例是在CentOS Linux环境下的安装,不保证适用于其他版本的Linux系统。 · 安装前的注意事项 编译源代码是需要对应的代码编译工具的,本文中安装的Eclipse只是一个编写代码的外壳,不能对代码进行编译工作,所以你的Linux系统应当安装了编译器,这样Eclipse在编译源代码的时候才可以调用到对应的编译器;小编安装了的GCC,也就是我的Eclipse使用g++/gcc 进行代码的编译工作。
之前都是使用Redhat 或者Centos 等rpm的linux ,开始使用ubuntu 很不习惯1. 安装命令Centos : yum install httpd Ubuntu: sudo apt-get install apache2 或者sudo a...
ubuntu与redhat系列的linux操作系统安装软件区别是很大的。下表列出了两者之间的对比。
工作需要开始转向centos,简单记录软件包安装 wget不是安装方式 他是一种下载软件类似与迅雷 如果要下载一个软件 我们可以直接 wget 下载地址ap-get是ubuntu下的一个软件安装方式,它是基于debainyum是redhat、centos下的一个软件安装方式,它是基于Lin...