媒体播放/暂停模拟

我的键盘包含一排用于各种非标准键盘任务的button。 这些键包含修改音量,播放或暂停,跳过曲目等function。 我如何模拟Python的基本播放/暂停? 顺便说一句,我在Windows上。

Solutions Collecting From Web of "媒体播放/暂停模拟"

我会使用pywin32 。 与安装捆绑在一起的是大量的API文档(通常放在C:\Python32\Lib\site-packages之类的东西)。它本质上包含了许多用于许多低级别的Win32库Windows中的任务。

安装完毕后,您可以使用keybd_event的包装器。

你也可以使用SendInput而不是keybd_event但它似乎不被PyWin32包装。 SendMessage也是一个选项,但更麻烦。

您需要查看这些特殊按钮的虚拟扫描代码,因为我怀疑char-to-code映射函数可以帮助您。 你可以在这里找到参考。

那么调用这个函数就简单了。 下面的片段在我的电脑上暂停了Chuck Berry。

 >>> import win32api >>> VK_MEDIA_PLAY_PAUSE = 0xB3 >>> hwcode = win32api.MapVirtualKey(VK_MEDIA_PLAY_PAUSE, 0) >>> hwcode 34 >>> win32api.keybd_event(VK_MEDIA_PLAY_PAUSE, hwcode) 

MapVirtualKey为我们提供了keybd_event需要的硬件扫描代码(或者更可能是键盘驱动程序)。

请注意,所有这一切都是由键盘驱动程序抢购,所以你真的没有任何控制的地方发送击键。 使用SendMessage您可以将它们发送到特定的窗口。 它们通常与媒体键无关,因为它们被音乐播放器等拦截。