gpt4 book ai didi

c# - 桌面应用程序 .net 中的视频通话

转载 作者:太空狗 更新时间:2023-10-29 21:27:52 27 4
gpt4 key购买 nike

我正在开发一个 wpf 应用程序,它应该具有视频通话功能。所以我打算让 Skype 为我提供解决方案。

我正在使用 Skype4COM 库来完成它。我在我的应用程序中获得了所有来自 Skype 的 friend ,我可以给我的 friend 打电话,甚至可以进行视频通话,但我无法控制流媒体。视频正在 Skype 窗口中显示,我想在我的应用程序中显示它,就像我的应用程序的一部分一样。

我什至不知道应该使用哪个控件来处理视频流。

如果有其他更好的方式或免费方式在 WPF 应用程序中添加视频通话。我已准备好更改我的偏好。

我之前计划使用 Web 浏览器控件并选择 WebRTC,但它不支持 IE,并且相信 Mozilla 和 Chrome 没有 Web 浏览器控件。

最佳答案

视频 session 的实现并非易事。您必须首先查看像 SIP 或 XMPP 这样的信令协议(protocol),它们将提供基础设施来维护“ friend ”列表以及他们是在线还是离线。信令基础设施还可以让您调用电话并在接到电话时提醒您。然后是在两个端点之间实际传输视频/音频的问题。没有单一的解决方案可以插入到您的应用中。

可以看谷歌的LibjingleConferenceXP作为起点。

要建立视频 session ,您需要以下信息:

  1. 你可以给谁打电话?这是您的好友列表。你需要一种机制来将 friend 添加到你的列表中,并确保你只能添加愿意与你交流的 friend

  2. 您如何与 friend 建立沟通 channel ?例如他们的 IP 地址是多少,他们是否支持特定的视频编解码器等等。

  3. 一旦您建立了与 friend 沟通的方式,接下来就是接收音频和视频信息并在正确的时间显示它们的问题。

求积分12您将需要所谓的信号和存在协议(protocol)。 SIP和XMPP是两个非常流行的开放协议(protocol)。

对于第 [3] 点,您可以查看像 RTP 这样的协议(protocol)。

您可以用谷歌搜索 SIP、XMPP 和 RTP。你会收到各种各样的文学作品。查看 RFC 文档以获取确切信息,它们可能有点神秘。

Libjingle 是一个用 C++ 编写的库,实现了 XMPP 和 RTPConferenceXP 是 C# 中的 RTP 实现,具有一些基本信号,但我认为您可以从示例开始,而无需真正深入了解细节。

关于c# - 桌面应用程序 .net 中的视频通话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21880108/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com