音视频开发的P2P技术

首要压缩包能够从这儿取得:http://anychat.oss.aliyuncs.com/AnyChatCoreSDK_Win32_V5.1.zip

也可进去网站下载其他版别(www.anychat.cn)

下载后,首要将其解压到一个临时文件夹中,然后开端后续作业。

编译后取得的是.lib文件。

AnyChat SDK向上层运用敞开了内核的P2P连接战略,能够让运用程序来干涉内核的P2P连接,以满意各种场合下的运用需求。

设置P2P连接战略的典型代码如下:

1.DWORD dwP2PPolitic = 3;

2.BRAC_SetSDKOption(BRAC_SO_NETWORK_P2PPOLITIC,(constchar*)&dwP2PPolitic,sizeof(DWORD));

当时敞开的P2P连接战略包含如下值:

0 制止P2P连接,不自动与其它用户树立P2P连接,也不接受其它用户主张的P2P连接恳求;

1 服务器操控P2P[默许],自动与当时房间内的一切用户树立P2P;

2 上层运用操控P2P连接,不自动与其它用户树立P2P连接,但可接受其它用户主张的P2P连接恳求,但运用程序能够下达与指定用户树立P2P连接的指令,收到上层运用的指令后,再测验与该用户树立P2P连接;

3 按需树立P2P连接,在需求树立P2P连接时(如恳求对方的音频、视频数据),便自动测验与该用户树立P2P连接,也自动接受其它用户的P2P连接恳求;

P2P连接树立成功,或是断时,会经过P2P状况改变音讯告诉上层运用。

由于每个客户端的P2P连接资本是有限的(每个客户端最多可与30个用户树立P2P连接),所以不一样的运用环境,需求设置不一样的P2P连接战略。

咱们主张一个运用平台上,均选用一样的P2P连接战略,不然也许出现特别状况,例如:A用户选用“上层运用操控P2P连接”战略,B用户选用“服务器操控P2P”战略,两个用户进入房间后,虽然上层运用没有向A用户下达与B用户树立P2P连接的恳求,但实际上A、B两用户之间仍然会树立P2P连接,由于B用户会自动与A用户树立连接。

AnyChat SDK默许是“服务器操控P2P”战略,用户进入房间后,将自动与房间内的一切用户树立P2P,该形式适用于同一个房间不超过50个用户(考虑到与部分客户端的P2P连接也许树立不成功)的运用,假如同一个房间的用户数较多,主张上层运用运用“上层运用操控P2P连接”或是“按需树立P2P连接”形式,使得客户端能够与需求的用户树立P2P,而不至于出现P2P连接资本被无关的用户占用的状况。

P2P连接战略能够初始化成功以后动态调整,但只要“制止P2P连接”形式被设置后,会断开与其它用户的P2P连接,设置其它的形式,均不会断开现有P2P连接。当客户端设置为“制止P2P连接”战略后,一切的音频、视频数据(包含自个传给其它用户,其它用户传给自个)都将经过服务器中转,可适用于某些特别的运用场合。

在一切P2P连接战略中,最优的战略是“按需树立P2P连接”,但没有将其作为SDK的默许P2P连接战略,主要是该战略是新增,而为了兼容老版别的SDK,便将“服务器操控P2P”战略设置为默许连接战略。

当设置为“上层运用操控P2P连接”以后,便能够经过SDK供给的接口自动与指定的用户树立P2P连接,典型代码如下:

1.DWORD dwTargetUserId =100;

2.BRAC_SetSDKOption(BRAC_SO_NETWORK_P2PCONNECT,(constchar*)&dwTargetUserId,sizeof(DWORD));

注:上述一切“树立P2P连接”并不代表P2P连接一定能树立成功,这与实际的网络状况有关,仅仅表明“测验与对方树立P2P连接”。

更多技术性问答可进入http://bbs.anychat.cn

时间: 2024-11-13 22:20:50

音视频开发的P2P技术的相关文章

音视频开发音频处理技术

在即时通讯应用中,需要进行双方,或是多方的实时语音交流,在要求较高的场合,通常都是采用外置音箱放音,这样必然会产生回音,即一方说话后,通过对方的音箱放音,然后又被对方的Mic采集到回传给自己.如果不对回音进行处理,将会影响通话质量和用户体验,更严重的还会形成震荡,产生啸叫.那么如何实现回声消除技术呢! 回声消除就是在Mic采集到声音之后,将本地音箱播放出来的声音从Mic采集的声音数据中消除掉,使得Mic录制的声音只有本地用户说话的声音. 传统的回声消除都是采用硬件方式,在硬件电路上集成DSP处理

音视频 开发技术,让智能家居更智能!

智能家居是在物联网的影响之下物联化体现.智能家居通过物联网技术将家中的各种设备(如音视频设备.照明系统.窗帘控制.空调控制.安防系统.数字影院系统.网络家电以及三表抄送等)连接到一起,提供家电控制.照明控制.窗帘控制.电话远程控制.室内外遥控.防盗报警.环境监测.暖通控制.红外转发以及可编程定时控制等多种功能和手段. 定义 智能家居是一个居住环境,是以住宅为平台安装有智能家居系统的居住环境,实施智能家居系统的过程就称为智能家居集成.以住宅为平台,利用综合布线技术.网络通信技术. 智能家居-系统设

音视频开发技术之自主集成第三方编解码器

AnyChat Platform Core SDK支持加载外部音视频的编码.解码模块(简称AnyChat Codec库),增强系统的可扩展性,同时也满足一些特定应用环境的特殊需求,如与特定的硬件平台(android.pad)集成时,可以调用硬件编解码器,实现更高效率的即时通讯应用. AnyChat Platform Core SDK内核已经实现了部分常用的音视频编码.解码模块,如H.264视频编码.解码算法,ARM-WB.AAC.SPEEX.CELT等音频编码.解码算法.上层应用可以自己定义新的

音视频开发技术之排查故障信息

在开发,或是使用AnyChat Platform Core SDK的过程中,特别是在对AnyChat SDK不熟悉的情况下,遇到问题通常无从下手,这里我们给出较通用的故障分析.排查和解决方案: 一.服务器部分 服务器程序启动后,会在服务器程序所在目录生成一个日志文件:“AnyChatCoreServer.log”,典型的日志文件内容如下: 1.---------------------------Init Service--------------------------- 2.Current 

音视频开发的视频编解码技术

2012年8月,爱立信公司推出了首款H.265[1]编解码器,而在仅仅六个月之后,国际电联(ITU)就正式批准通过了HEVC/H.265标准,标准全称为高效视频编码(High Efficiency Video Coding),相较于之前的H.264标准有了相当大的改善,中国华为公司拥有最多的核心专利,是该标准的主导者.国内拥有领先音视频开发技术的AnyChat解决方案,目前采用的是H.264视频编解码技术,相信不久会紧跟趋势采用H.265视频编解码技术. H.265/HEVC的编码架构大致上和H

手机音视频开发APP应用

1.前言 随着手机技术不断发展,iPhone(iOS)以及Android等智能手机普及速度加快,越来越多的人选择使用手机终端进行各种音视频,比如视频聊天.视频会议.远程医疗.IM.在线开户等.根据市场研究机构comScore发布的最新消息,2011年8月,在美国Android和iOS设备控制了71%的智能手机市场份额,所以开发APP是需要的,也是必要的. 2.开发要求 无论是开发iOS APP还是Android APP,都需要各自的SDK开发工具包.其中iOS限制较多,Android则相对开放.

转:?Android IOS WebRTC 音视频开发总结 (系列文章集合)

随笔分类 - webrtc Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). callstats是一家做实时通讯性能测阅读全文 posted @ 2016-07-22 08:24

Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)

本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). 回顾:Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上) 连接网络摄像头 正如上文所提,我们选用一款简单的D-Link DCS-7010L网络摄像头.关键原因在于它支持RTSP协议,因此服务

Android IOS WebRTC 音视频开发总结(六八)-- Google: What's next for WebRTC

本文主要从用户,公司和技术角度分析美女视频直播这个行业,文章最早发表在我们的微信公众号上,支持原创,详见这里, 欢迎关注微信公众号blackerteam,更多详见www.rtc.help Justion和Sarah是google webrtc项目的主要负责人,下面的图片是根据他们分享的内容进行整理的,涉及webrtc进展.优化等方方面面.整理这些资料的过程中我们发现他们对待webrtc还是挺用心的,为webrtc的完善做了很多的工作,谢谢他们! 原始视频时长53分13秒,全英文的,所以我们考虑做