gpt4 book ai didi

c# - win32 输出字节作为声音输入

转载 作者:行者123 更新时间:2023-11-30 04:16:49 25 4
gpt4 key购买 nike

我有一个关于应用程序的疯狂想法:会有两个设备。一个设备将接收麦克风输入,通过网络将原始 PCM 字节发送到另一个设备,其上的应用程序将使该设备认为这些声音来自麦克风。除了作为声音输入部分的馈送字节外,我已经设法编写了所有内容。

我已经在网上搜索了很长时间,但我找不到任何东西:看起来我不知道如何正确命名问题。

接收器是用 native C++ 编写的,带有用于 GUI 的 C# WPF 包装器。有谁知道我可以通过 Win32 API 或 .NET 中的此类功能解决此问题的方法吗?

最佳答案

你需要两件事:

  1. 实现一个符合 PortCI 标准的驱动程序:见 http://msdn.microsoft.com/en-us/library/windows/hardware/ff536829(v=vs.85).aspx作为起点
  2. 在您的应用程序中使用此驱动程序来执行您需要的任何音频功能。

在第 1 步,您必须编写一个音频适配器驱动程序,它将使用一些现有的内核驱动程序来处理网络适配器。顺便说一句,在这里您必须注意不要从网络中“窃取”不需要的数据包。您必须想出一些方法来确定哪些数据包是音频数据包,哪些不是。也许在第一步中,您只为此使用一个专用网络驱动程序。

建议在内核级别工作,以便操作系统将您的“自定义网络音频设备”视为音频设备。 Windows 提供了一个不错的 API,用于将您的字节视为音频字节,对其应用过滤器等(另请参阅 http://msdn.microsoft.com/en-us/library/windows/hardware/ff538901(v=vs.85).aspx 了解更多信息)

关于c# - win32 输出字节作为声音输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17501256/

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