如何实现视频通话?

时间:2013-08-13 09:02:33

标签: android sip

我想实现videocall应用程序。我的问题是,是否有另外一个与SIP不同的API,或者我应该使用这些API?如果存在另一个API,您推荐哪种API用于视频会议?

非常感谢

2 个答案:

答案 0 :(得分:1)

我认为您可以查看Google+环聊API,它已被Android上的Google Talk取代。 https://developers.google.com/+/hangouts/

答案 1 :(得分:0)

为了快速开发,我建议使用QuickBlox SDK和API。除了聊天功能外,他们还有可用于视频通话(1-1和群组通话)的现成库,这些库基本上仅需要根据您的要求进行前端自定义。当然,您可以添加一些自己的额外功能。

您可以检查示例(实现示例)here,这是Quick Start指南。

Android的代码示例:

// Create collection of opponents ID
List<Integer> opponents = new ArrayList<>();
for (QBUser user : users) {
    opponents.add(user.getId());
}

// You can set any string key and value in user info
// Then retrieve this data from sessions which is returned in callbacks
// and parse them as you wish
Map<String, String> userInfo = new HashMap<>();
userInfo.put("key", "value");

// There are two call types: Audio or Video Call
QBRTCTypes.QBConferenceType qbConferenceType = QBRTCTypes.QBConferenceType.QB_CONFERENCE_TYPE_AUDIO;
// or
QBRTCTypes.QBConferenceType qbConferenceType = QBRTCTypes.QBConferenceType.QB_CONFERENCE_TYPE_VIDEO;

// Init session
QBRTCSession session = QBRTCClient.getInstance(this).createNewSessionWithOpponents(opponents, qbConferenceType);

// Start call
session.startCall(userInfo);

其他受支持的平台包括:iOS,Web以及用于跨平台开发的Flutter和React Native SDK。