188旅游网站源码,网站建设的税收编码,网站建设中的主要功能,专业培训机构原文#xff1a;http://www.linphone.org/eng/documentation/dev/mediastreamer2.htmlMediastreamer2 是一个功能强大且小巧的流引擎#xff0c;专门为音视频电话应用而开发。这个库为linphone中所有的接收、发送多媒体流提供处理#xff0c;包括音/视频捕获#xff0c;编码…原文http://www.linphone.org/eng/documentation/dev/mediastreamer2.htmlMediastreamer2 是一个功能强大且小巧的流引擎专门为音视频电话应用而开发。这个库为linphone中所有的接收、发送多媒体流提供处理包括音/视频捕获编码和解码渲染。特色Read/Write from to an alsa device, an oss device, a windows waveapi deviceSend and receive RTP packetsEncode and decode the following formats: speex, G711, GSM, iLBC, AMR , H263, theora, MPEG4, and H264.Read and write from/to a wav fileRead YUV pictures from a webcam (provided that it has video4linux v1 or v2 driver)Display YUV pictures (using SDL library or native apis on windows)Dual tones generationEcho cancelation, using the extraordinary echo canceler algorithm from the speex libraryAudio conferencingAudio parametric equalizer using a FIR filterVolume control, automatic gain controlMediastreamer2可以使用动态插件进行扩展当前可用的插件有h264ILBCt和AMR可移植性 linux/x86、linux/x86_64、Embedded linux:ARM and Blackfin 、windows XP、Vista and 7、 Mac Os X、Google Android设计与原理每一个处理实体都被封装在MSFilter对象中MSFilter使用inputs和outputs与其它MSFilter进行连接。一个简单实例帮助理解MSRtpRecv 是一个接收RTP包的MSFilter解包后再把它们放到output上。MSSpeexDec是一个依赖input的MSFilter如果input接收到speex编码包对它们进行解码并放在outputMSFileRec是一个依赖input的MSFilter如果input是16位pcm数据则保存为wav格式MSFilter可以可以连在一起组成一个MSFIlter chain如果我们把这三个Filter连在一起这样就形成了一个可以接收RTP包对包进行解码把解码的数据保存成wav格式的处理链。MSRtpRecv -- MSSpeexDec -- MSFileRec媒体处理任务通过“MSTicker”对象来调度一个线程可以每隔10ms处理MSFilter chain的数据几个MSTicker可以被同时使用比如一个音频filter、一个视频 filter。使用简单如果你想创建音视频流要调用audiostream.h和videostream.h的定义来创建音视频流。如果你想添加mediastreamer2的功能实现一个mediastreamer2 filter是非常简单的因为mediastreamer2是非常轻量级的封装。由于mediastreamer2是一个轻框架工程师可以集中精力在于图像/信号算法的实现。mediastreamer2适用于嵌入式系统mediastreamer2是纯C开发的mediastreamer2可以用gcc编译mediastreamer2最小依赖只需oRTP和libc。其他ffmpeg, speex, alsa...根据需要添加。由于是插件框架mediastreamer2可以通过硬件codecs接口扩展如video codecs dspediastreamer2是轻量级的。例如在linux/x86平台上使用共享库的时全功能大约只有800k下载Mediastreamer2 是 linphone 的一部分你也可能使用git获取最新的源码:git clone git://git.linphone.org/mediastreamer2.git采用GPL许可协议 原文http://www.linphone.org/eng/documentation/dev/mediastreamer2.html