如何从Python设备访问directinfo?

2024-09-28 19:08:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我发现了this关于如何用.NET枚举声音设备信息的信息,但我不知道如何在Python中使用这些信息。你可能会说,我对windowsapi编程几乎没有任何经验。在

我可以知道如何通过WMI获取基本信息,但我需要更多信息,而且看起来下面的C代码片段可能就是我需要的,但是我不知道如何从Python访问DirectSound对象。我已经用ctypes找到了一些基本的东西,但是我不知道哪个或者如何加载DirectX.dll。。。在

DevicesCollection devColl = new DevicesCollection();
    foreach (DeviceInformation devInfo in devColl)
    {
        Device dev = new Device(devInfo.DriverGuid);   

        //use dev.Caps, devInfo to access a fair bit of info about the sound device
    }

有什么建议吗?在


Tags: 代码dev信息声音newnetdevice编程
1条回答
网友
1楼 · 发布于 2024-09-28 19:08:54

对于“穷人的”.NET库访问,请查看"Python for .NET"。在

但是,使用IronPython访问DirectSound设备可能更容易,因为它通过clr库进行了.NET绑定。在

来自IronPython cookbook的提示:

Playing an MP3 song with DirectX

import clr
clr.AddReference('Microsoft.DirectX.AudioVideoPlayback')
from Microsoft.DirectX import AudioVideoPlayback
mp3 = AudioVideoPlayback.Audio("C:\\myreallyfunky.mp3")
mp3.Play()

关于在IronPython中使用托管DirectX的更全面的教程可以从http://www.neotitans.com/resources/dot-net/mdx-ironpython-1.html找到

相关问题 更多 >