windows-8 - 如何从 Windows 8 中的 MediaCapture API 获取反馈

标签 windows-8 windows-runtime

我正在尝试在 Windows 8 应用程序中进行面部跟踪应用程序。而且我知道为了访问相机流,我必须使用 MediaCapture.AddEffectAsync()必须与 C++ 合并,如图所示 in this sample .

现在我可以访问流并跟踪人脸,但我无法将跟踪人脸坐标传递/返回给 C# 以进行进一步处理。

我尝试过的一种方法是在 C++ 中调用 C# 方法来传回跟踪坐标。但无济于事,因为 Visual Studio 不允许 循环依赖 项目之间。

另一种方法是不断从C++中拉取数据,但这不是我想要的。

也许还有另一种更直接的方式来访问相机缓冲区,我想知道。

所以我的问题是,如何取回跟踪坐标?或者正确的做法是什么?谢谢!

最佳答案

为了克服这个问题,我们只需在 C++ DLL 和 C# 代码之间设置 TCP/IP 本地主机连接。也就是说,我们让 C# 成为服务器,而 C++ DLL 成为客户端。每当 C++ DLL 想要与 C# 对话时,C++ 只是通过 TCP/IP 套接字将数据传递给 C#。目前,Windows 8 没有对同一进程内的 TCP/IP 通信设置限制。

一个好的起始引用是 StreamSocket sample

这不是最好的方法,并且由于数据需要通过 TCP/IP 层,因此它具有轻微的性能影响。但是,到目前为止,也许这是我们所能拥有的最好的,除非 微软 打破障碍。

关于windows-8 - 如何从 Windows 8 中的 MediaCapture API 获取反馈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12907538/

相关文章:

c# - WinRT 中未处理的异常问题

c# - LayoutAwarePage 的 MVVM 够用吗?

xaml - Windows 8 XAML 中的多列文本中的分栏符

windows-8 - metro (XAML/C#) : detect installation and/or first run

c# - GetFilesAsync 停止工作

c# - StorageFile.OpenAsync 中的 UnauthorizedAccessException

windows-8 - Windows 8 应用商店应用程序是否有类似于 Game Center 的功能?

windows-8 - 检测 Windows 8 Store App 是否有触摸屏

javascript - Windows 10 通用应用 SQLite

c# - WinRT 中的 Rijndael 解密