制作像Face一样的FaceTime?

时间:2013-06-13 01:24:27

标签: objective-c xcode iphone-video

我正在创建一个应用程序,允许您从一个设备到另一个设备进行视频通话。我已经做了很多搜索,但是我找不到能告诉我如何从iPhone摄像头获取视频和音频的内容,并将该实时流发送到Web服务器以连接到另一台设备。我已经完成了应用程序的所有其他元素,所以这就是我需要完成的所有内容。

2 个答案:

答案 0 :(得分:2)

这很复杂,可能比你想象的要多。

您可能需要对H.264和AAC进行许可和编码。

您需要了解RTP和SRTP。

您可能需要自己的SIP,STUN,TURN和ICE服务器。

我对这个答案不满意,但我不希望你低估你的项目的规模 - 这不是微不足道的。

答案 1 :(得分:2)

这很复杂!我假设你真的不想编写整个代码,因为这会让你永远。

我会试着简要说明你需要做些什么来实现这一目标: 1.客户端代码 - 您必须实现iPhone客户端,客户端必须连接到某个SIP服务器,启动呼叫,振铃(通过推送)等等...... 2. SIP服务器 - 这可能非常简单(如果您购买此服务,通常您每次付费或系统可以并行支持的呼叫次数)或者如果您想自己构建此服务,则真的很复杂(有些公司认为出售这些产品/服务并做到这一点。

从哪里开始? 如果您愿意使用开源(如果您的客户端也可能是最简单的方式),或者只是了解您尝试做的事情的规模我建议您尝试使用linphone(https://www.linphone.org)。 他们有免费的iPhone开源SIP客户端(几乎适用于所有平台)(如果您愿意开源,请在那里查看许可证)。您也可以购买代码,这样您就可以保密代码,但这非常昂贵!

对于服务器端,您可以使用很多服务,而且linphone有自己的服务器,您可以免费测试。所以你可以在去大型服务器之前尝试使用。

如果你不想实现这项技术并希望以你的想法开始构建你的应用程序,我建议你使用第三方为你提供一切,包括一个简单的iOS SDK,所以您可以整合分钟。检查出来:Rebtel,Twilio等。我不知道他们是否有视频,但我相信如果不是他们会很快。顺便说一句,Rebtel是完全免费的,所以没有理由不开始它(说实话我从来没有使用过Rebtel,也不知道它是不是很棒)。

在我看来,如果你刚刚开始并且你没有一个有这方面经验的大团队,从最后一个选项(第三方全服务)开始并开始构建你的想法可能是一件好事,否则你会用非常复杂的技术花费你的时间。

希望这会有所帮助。