jjzjj

python : get master volume windows 7

我正在尝试构建一个应用程序,在该应用程序中,用户只需将他/她的鼠标滚动到Windows声音图标上即可更改音量。Linux用户对此已经很熟悉了。我将我的问题分为以下步骤:1.)Getcurrentaudiodevicelistusingapythonapi.2.)Controlthemastervoulmeusingtheapi.3.)Attachamouseeventlistenertoit.(SorryiamfromJavabackground).4.)Getmouseeventlistenermethodtodomywork.请推荐一个合适的pythonAPI来完成我的任务。这是针

windows - WASAPI:即使 IAudioClient->IsFormatSupported 以相同的格式失败,IAudioClient->Initialize 也会成功

我试图找出独占模式下特定音频设备支持哪些输出格式。为此,我正在使用IAudioClient->IsFormatSupported(),根据文档,它应该可用于此目的。不幸的是,对于我尝试传递的几乎所有格式,它都会返回AUDCLNT_E_UNSUPPORTED_FORMAT,默认的2声道44.1khz音频除外。如果我真的尝试初始化audioclient,有一些格式成功了,但在IsFormatSupported()中失败了。只是尝试初始化每种格式不是一种选择,因为这可能会导致其他应用程序停止音频。有没有其他人看到过这种行为,或者知道是否有其他方法可以找到特定音频设备支持的格式?

python - 使用 python 播放 .mp4 并检查它是否/仍在播放

我使用的是Windows64位。我试过几个图书馆。无法让pygame工作,无法让pymedia安装在python2.7上。最终得到了python的mplayer。已安装https://pypi.python.org/pypi/mplayer.py/我可以得到一个声音文件来播放importmplayerp==mplayer.Player(args=(),stdout=mplayer.PIPE,stderr=None,autospawn=True)p.loadfile('C:\mymusic.mp4')p.pause()出于某种原因,您必须调用暂停命令才能播放音频。主要问题出现在我想开始播

python - Windows:获取默认麦克风名称

在Windows的python2.7中,我需要获取默认麦克风的名称,这将是一个字符串,例如“Microphone(2-HighDefinitionAudioDevice)”。我的第一次尝试是使用子进程查询WMI:wmicpathWin32_SoundDeviceget*/format:list。不幸的是,这似乎返回了扬声器和麦克风,而且我看不到任何可以让我区分这两者的属性。此外,正确设备的名称格式不正确,例如它显示为简单的“HighDefinitionAudioDevice”,而不是完整的正确字符串“Microphone(2-HighDefinitionAudioDevice)”。我的

windows - 大多数(如果不是全部)音频端点是 PCM 吗?

我正在使用WASAPI编写专业音频应用程序。我机器上的所有设备都有16位或24位PCM的引擎格式。考虑到这一点,我想知道假设所有音频端点都将PCM作为其native格式是否安全。是吗?如果没有,什么样的设备没有? 最佳答案 假设所有设备都是16位或24位PCM绝对是不安全的。我知道选择正确的格式是一个很大的技巧。但它也可能类似于32位IeeeFloat。但是,作为用户,您只能设置16或24位->大多数情况下是16或24位。反正。您也可以使用独占模式。在独占模式下,你可以自己指定一种格式。但请记住:您必须被允许使用独占模式并且使用独占

windows - 24 位 USB 采样率支持

我的问题与这个问题非常相似:Link,但我无权发表评论。我将PIC32实现为声卡,现在我有一个可用的USB音频流,支持16位32kHz和48kHz采样率。我现在想将位深度更改为24位,因此我将USB描述符更改为:bSubFrameSize=0x03,//3bytespersamplebBitResolution=0x18,//24-bitresolution当我执行此操作时,他的位分辨率会按预期更改,但在麦克风的属性中,我可以更改采样频率的下拉菜单是灰色的。我没有更改端点描述符中的任何内容,仍然支持32kHz和48kHz。我的USB拓扑有1个音频控制接口(interface)和几个单元

c++ - 在从麦克风捕获期间耳机中的音量降低到 30%

我正在编写一个应用程序来使用MicrosoftMediaFoundation从麦克风中捕获声音。这是代码#include#include#include#include#include#includetemplatevoidSafeRelease(T**ppT){if(*ppT){(*ppT)->Release();*ppT=NULL;}}HRESULTProcessSamples(IMFSourceReader*pReader,IMFSinkWriter*writer){HRESULThr=S_OK;IMFSample*pSample=NULL;size_tcSamples=0;bo

c++ - 在 Windows 7/8/Store C++ 中播放内存中的压缩音频

Windows在这方面有太多的API太荒谬了。据说MediaFoundation是执行此操作的方法,但我在MSDN文档中看到很多“已弃用”,并且他们提供的示例仅用于从URL播放音乐。我在内存中有一个压缩的音频文件(mp3、m4a等)。现在我正在使用他们的CPlayer示例。(https://msdn.microsoft.com/en-us/library/windows/desktop/bb970516(v=vs.85).aspx)。有没有办法让MediaFoundation从内存中加载源?或者我是否必须在单独的线程中解压缩它并将其提供给XAudio2? 最

windows - 何时使用 Wave 可扩展格式?

我正在编写一个包括读取和写入波形文件的音频库,我了解三种可能的波形文件格式之间的差异,但不清楚在处理单声道或立体声PCM数据时何时使用可扩展格式。我一直在使用this作为我的主要引用,它澄清了何时使用可扩展格式的明显情况。但是,该链接提到如果PCM数据大于16位,则应使用可扩展格式,但是当我尝试使用Audacity导出24位或32位音频时,它们没有使用可扩展格式。我没有发现规范中有任何提及在这种情况下应该支持可扩展格式,或者是否所有文件都应该使用可扩展格式。现代图书馆甚至会支持旧格式吗?我是否应该将文件写入简化为在所有情况下都使用可扩展格式?更新:我找到了thisresource来自M

c++ - 如何获取 Windows 进程的当前音频输出级别?

我希望这是有道理的,我不确定我应该怎么说这个...您好,我正在尝试编写一个能够监控某些进程的音频输出的程序。我很难找到一种方法来真正做到这一点。我只能找到获取当前音量级别的方法,而不是实际输出级别。我一直在通过Stackoverflow进行搜索,但我发现的所有内容都只能获取程序的音量控制级别(如Windows音量混合器中的slider,但我基本上是想获取blender)我基本上想每隔x毫秒检查一次程序的输出级别,如果它高于某个阈值,则运行一个方法来做某事。我怎样才能做到这一点?谢谢!快速编辑清楚:Win7+withC++ 最佳答案