哪种语言更适合P2P视频流传输?

3
我想写一个类似Skype的软件,可以进行P2P视频/音频流传输。哪种编程语言更适合?
有以下几个要求:
1. 软件应易于安装。 2. 编程应简单易懂。 3. 我想要访问视频信息,例如实时进行面部表情识别。 4. 它应该是免费的。
我正在考虑Python和Java。哪一个更好?或者可能有第三个选择更好?
补充说明:
Flash是一个有吸引力的选择,因为用户可以使用默认安装了Flash的浏览器,并且如果没有安装Flash,很容易安装。但我不知道是否可以访问视频(如果我想进行一些处理)。此外,Flash并非免费。

这个问题实际上是关于“库和平台”,而不是“编程语言”的。改变标题可能会让你得到一些答案。 - Norman Ramsey
2个回答

4
你感兴趣的功能可能涉及到较重的网络流量(用于视频流)和CPU使用率(用于面部识别)。因此,在最终产品中效率非常重要,这意味着你需要使用本地代码来处理这些关键部分,可能使用C或C++编写。
另一方面,你正在寻找一种易于编程的语言,这在实验和原型设计时非常合适。一种表达力强、能够用少量代码清晰表达你的意思的语言将帮助你专注于解决问题,而不会陷入实现细节中。Python非常适合这个任务。(事实上,Python是其他几个P2P项目,包括BitTorrentP2P-Next和我自己的视频流系统的开发语言。)
让我建议一下这种方法:
  1. 使用高级语言如Python开发第一个版本。
  2. 使用编译的视频帧处理库。几个主要的多媒体库都有Python绑定,包括gstreamerlibavcodec
  3. 一旦您拥有一个工作原型并对设计感到满意,请考虑重新用C或C++实现系统。

1
我会选择Flash,因为它的插件广泛使用,具有高级语言特性,并且已经有了用于流媒体视频的API,因此您不必在C中重新发明轮子。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接