【问题标题】:Sending a processed video from C# program to C++ program将处理后的视频从 C# 程序发送到 C++ 程序
【发布时间】:2010-10-25 18:44:36
【问题描述】:

我正在从我的网络摄像头捕获视频,它由 C# 程序处理,然后我想将它流式传输到 C++ 程序。这个 C++ 程序可以配置为从网络摄像头获取视频流,因此可以将我处理后的视频发送/流式传输到该程序,C++ 程序检测该流作为来自网络摄像头的视频。

谢谢!

编辑:我的 C# 程序访问网络摄像头并进行一些处理。另一方面,我有 CCV,它接受来自网络摄像头或视频文件的输入。所以我想将我处理过的视频发送(流)到 CCV。

【问题讨论】:

  • 你有这两个程序的源代码吗?
  • @Oded : 正如 karlphillip 所说,它是 IPC。
  • @karlphillips : C# 代码很长,我使用 Community Core Vision 作为上述 C++ 程序。

标签: c# .net c++ streaming video-streaming


【解决方案1】:

你似乎在寻找如何做Interprocess Communication on Windows

代码项目也有一个关于它的great article

【讨论】:

  • @Kenshan 理想情况下,您应该只有一个程序来从相机中获取帧、处理它们并执行您认为需要的任何其他操作。将您的解决方案分成 2 个应用程序会带来一些您在最终解决方案中可能不需要的开销。顺便问一下,你听说过 OpenCV 吗?
  • 如果您要投反对票,则应添加说明原因的注释。
  • @karlphillip:是的,我正在使用 CCV,它使用 OpenCV 进行图像处理,我同意你的观点,但问题是我没有太多时间来破解 CCV 代码库并编写补丁满足我的需要,我发现我可以用 C# 轻松完成处理部分(但我对 C# 真的很陌生)所以,我用 C# 编写处理部分
  • @karlphillip,我不明白你什么时候可以使用互操作性,你建议 Interprocess?您可以简单地用 C++ 编写一个 com 对象并在 C# 中引用它,这样您就可以同时使用这两种语言优势,从网络摄像头捕获并执行进程并连接到其他应用程序不需要 2 个不同的应用程序。如果您不熟悉 c++,则建议不要这样做。
  • @Keshan 我仍然认为您应该认真考虑 独立 解决方案,因为 IPC 和互操作性方法都需要更多工作。此链接包含一个完整的 C 程序(使用 OpenCV),它从相机读取帧并定义要在每一帧上执行的函数。它对帧进行灰度转换并将它们显示在窗口上:stackoverflow.com/questions/3907028/…
【解决方案2】:

我可以使用SplitCam 轻松解决我的问题,谢谢大家。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多