【问题标题】:Cross-platform video recording solution [closed]跨平台视频录制解决方案 [关闭]
【发布时间】:2012-02-15 19:09:22
【问题描述】:

对于我的网络应用程序,我希望允许用户通过他们的网络摄像头录制自己的视频,并将其自动上传到网站。理想情况下,这将在浏览器中作为我的 Web 应用程序的一部分发生,可能通过使用 Flash 插件,例如相当流行的 nimbb.com 提供的插件。

然而,Flash 解决方案不一定是理想的,因为即使是 nimbb 演示在 Linux 上工作也很痛苦,我愿意使用用户必须先下载的基于桌面的解决方案,如果这能让我生活更轻松。它需要采用开源库或非常完整的 API 的形式,因为我需要能够自定义很多细节 - 例如允许直接流式传输视频,在一定时间后自动停止重新编码等.

我的偏好是 Python,但其他任何东西也可以。是否有任何我可以查看的程序或库来处理以下基本任务?

  • 同时通过网络摄像头录制视频,通过麦克风录制声音(最重要)
  • 保存视频
  • 去除背景噪音
  • 调整亮度

很容易推出我自己的简单解决方案,使用 Python、openCV、pygame、ffmpeg 和 sox 完成所有这些事情,但我不是该领域的专家,我对整体质量不太满意(视频以及背景噪音去除),这仅适用于 Linux,无需进行一些严重的移植(主要是由于使用了 sox)。

总结:我正在寻找具有 Skype 的视频和音频质量的东西,最好是开源的(如果可以的话,我也会付费),并且像 Python 一样灵活。有什么建议吗,还是这个命令太高了?

【问题讨论】:

  • 当我前段时间研究这种事情时,我想我得出的结论是客户端上的 Flash 基本上是最先进的,特别是如果你希望它在许多平台上工作(使用服务器上某种特殊的流媒体服务器)。我很想知道事情发生了变化(或者我错了)。
  • 嗯,是的,到目前为止,这也是我的结论。但是,我认为如果你有时间的话,完全用 Python 做这样的事情并不是不可能的。无论如何,必须有某种开源项目已经这样做了,对吧?

标签: python audio video voice-recording video-recording


【解决方案1】:

好的。我在最后一天对此进行了大量研究,这是我发现的当前状态:

WebRTC 是一个免费的开放项目,它通过简单的 Javascript API 为 Web 浏览器提供实时通信 (RTC) 功能。目前,它仅受 Chrome 以及 Firefox 和 Opera 的最新开发版本支持。这很快就会改变,因为这三个浏览器制造商都在争取 W3C 将 WebRTC 纳入 HTML5 规范。因此,如果幸运的话,我们将在一两年内拥有跨浏览器的内置网络摄像头功能。

在那之前,Flash 是唯一的其他跨浏览器选项。有很多项目允许这样做,但这里有一些最好的:OpenTokNimbbjRecorderjQuery webcam,如果您分别只需要声音或只需要视频。后者只能保存静止图像,因此您可以尝试将其用于视频,但不推荐。

至于跨平台的开源桌面应用,我还没有找到。仍然希望有人可以在这方面提供帮助!

【讨论】:

猜你喜欢
  • 2012-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-01
  • 1970-01-01
  • 2013-08-17
  • 2017-03-11
  • 1970-01-01
相关资源
最近更新 更多