跨平台视频录制解决方案 [关闭]
Posted
技术标签:
【中文标题】跨平台视频录制解决方案 [关闭]【英文标题】: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 做这样的事情并不是不可能的。无论如何,必须有某种开源项目已经这样做了,对吧? 【参考方案1】:好的。我在最后一天对此进行了大量研究,这是我发现的当前状态:
WebRTC 是一个免费的开放项目,它通过简单的 javascript API 为 Web 浏览器提供实时通信 (RTC) 功能。目前,它仅受 Chrome 以及 Firefox 和 Opera 的最新开发版本支持。这很快就会改变,因为这三个浏览器制造商都在争取 W3C 将 WebRTC 纳入 html5 规范。因此,如果幸运的话,我们将在一两年内拥有跨浏览器的内置网络摄像头功能。
在那之前,Flash 是唯一的其他跨浏览器选项。有很多项目允许这样做,但这里有一些最好的:OpenTok、Nimbb、jRecorder 和 jQuery webcam,如果您分别只需要声音或只需要视频。后者只能保存静止图像,因此您可以尝试将其用于视频,但不推荐。
至于跨平台的开源桌面应用,我还没有找到。仍然希望有人可以在这方面提供帮助!
【讨论】:
既然你提到了 WebRTC 和跨平台桌面 - 看看 basysKom 的这个 WebRTC QML/Qt 演示:youtube.com/watch?v=Vm5ebKWKNE8以上是关于跨平台视频录制解决方案 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章