2009-11-15 60 views
1

我想创建一个C++跨平台(Windows和MacOS X)应用程序,将屏幕作为视频流发送到服务器。流式传输桌面

该应用程序是需要在讲座捕获的上下文中。最终结果将是一个基于Flash的网页,播放讲座(演示者视频和音频+幻灯片/桌面)。

我目前正在探讨的几个选项:

  • 捆绑的VLC我的应用(视频播放)二进制和使用其桌面软件流功能。
  • 使用Qt Phonon库,但它似乎不够强大。
  • 发送个人屏幕截图加时间戳到服务器而不是视频流。服务器然后将不得不创建视频流。
  • 使用Java实现它并使用Xuggler(BigBlueButton将其用于他们的桌面共享功能)
  • ...?

我将非常感谢您对如何解决此问题的见解/意见。

+1

你确定你不是在找VNC之类的东西吗? VNC可以导出到FLV。 – monksy 2009-11-15 20:18:03

+0

我认为在你的文章中有一个错字:VLC - > VNC。我仍然无法编辑它:) – 2009-11-15 21:35:49

+0

@swtomi:不错的猜测,但没有我真正的意思是VLC视频播放器。查看http://www.google.be/search?q=VLC+desktop+streaming – StackedCrooked 2009-11-15 21:58:28

回答

0

我的解决方案是在Qt中编写一个简单的GUI应用程序,在后台调用VLC进程。这工作得很好。

+0

你能分享你的解决方案吗?我试图在数周内做同样的事情。 – 2017-04-24 16:13:06

3

我认为VNC是软件解决方案的一个很好的起点。跨平台并经过充分测试。我可以想到几个商业项目,这些项目都是从VNC派生出来的 - 从Fog Creek的副驾驶出发。

但是,concider利用投影机硬件捕获幻灯片,而不是在讲师所带入的每台计算机上安装软件。即一个分离器,然后一台电脑来捕捉幻灯片视频信号以及演示者视频信号。

我在哪里工作的讲师带来了大量的笔记本电脑进行演示,而不喜欢在演讲前安装任何东西的理想选择。

我会去找一个硬件解决方案 - 一个Mac mini,带有Boinx

+0

VNC看起来不错。在Mac上,我可以使用内置的VNC服务器,这非常棒。 – StackedCrooked 2009-11-15 20:45:03

+0

如上所述,您可以使用http://www.unixuser.org/~euske/python/vnc2flv/等工具直接从vnc中提取Flash视频。 – Suppressingfire 2009-11-15 22:01:37

0

还有一堆屏流媒体和可用录音软件,在Windows平台上,你可以使用Windows Media编码器要做到这一点,甚至广播实时MMS://流

抓屏并不难做(除非屏幕上的内容是覆盖视频或全屏3D图形)。流媒体直播很复杂,在大多数多媒体框架(Directshow,gstreamer)中编码和记录它非常简单