流式传输桌面

发布于 2024-08-11 09:14:40 字数 485 浏览 9 评论 0原文

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

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

我目前正在探索几个选项:

  • 将 VLC(视频播放器)二进制文件与我的应用程序捆绑在一起,并使用其桌面流媒体功能。
  • 使用Qt Phonon库,但似乎不够强大。
  • 将单独的屏幕截图和时间戳而不是视频流发送到服务器。然后服务器必须创建视频流。
  • 用 Java 实现它并使用 Xuggler(BigBlueButton 将其用于桌面共享功能)
  • .. .?

我非常感谢您对如何解决这个问题的见解/评论。

I want to create a C++ cross-platform (Windows and MacOS X) application that sends the screen as a video stream to a server.

The application is needed in the context of lecture capture. The end result will be a Flash based web page that plays back the lecture (presenter video and audio + slides/desktop).

I am currently exploring a few options:

  • Bundle the VLC (the Video Player) binary with my app and use its desktop streaming features.
  • Use the Qt Phonon library, but it doesn't seem to be powerful enough.
  • Send individual screenshots plus a timestamp to the server instead of a video stream. The server then would have to create the video stream.
  • Implement it in Java and use Xuggler (BigBlueButton uses it for their Desktop Sharing feature)
  • ...?

I would greatly appreciate your insights/comments on how to approach this problem.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

甜柠檬 2024-08-18 09:14:40

我认为 VNC 是软件解决方案的一个很好的起点。跨平台且经过充分测试。我能想到几个源自 VNC 的商业项目 - Fog Creek 的 Co-pilot 浮现在我的脑海中。

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

在我工作的地方,讲师们带来了大量的笔记本电脑来进行演示,并且非常不喜欢在演示之前安装任何东西的想法。

我会选择硬件解决方案 - 带有 Boinx 的 Mac mini。

I think VNC is a great starting point for a software solution. Cross platform and well tested. I can think of a couple commercial projects that are derived from VNC - Co-pilot from Fog Creek springs to mind.

But concider tapping in to the projector hardware to capture slides instead of installing software on every computer brought in by lecturers. I.e. a splitter and then a computer to capture the slide video signal as well as the presenter video signal.

Where I worked lecturers brought in a plethora of laptops for their presentations and rather disliked the idear of installing anything moments before their presentation.

I'd go for a hardware solution - a Mac mini with Boinx.

好倦 2024-08-18 09:14:40

有很多屏幕流和录制软件可用,在 Windows 平台上,您可以使用 Windows 媒体编码器来执行此操作,甚至可以直播 mms:// 流

捕获屏幕并不难(除非屏幕上的内容是覆盖视频或全屏 3D 图形)。直播很复杂,对于大多数多媒体框架(Directshow、gstreamer)来说,编码并将其记录到磁盘上非常简单

There are a bunch of screen streaming and recording software available, On the Windows platform you can use Windows media encoder to do this and even broadcast a live mms:// stream

Capturing the screen is not hard to do ( unless the content on the screen is overlay video or fullscreen 3d graphics ). Streaming it live is complicated, encoding and recording it to disk is quite straightforward with most multimedia frameworks ( Directshow, gstreamer )

奶气 2024-08-18 09:14:40

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

My solution was to write a simple GUI application in Qt that invokes a VLC process in the background. This works really well.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文