问题标签 [mci]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - mciSendString,如何获取记录的缓冲区?
我正在通过 winmm.dll 的 DllImport 使用 MCI 创建记录器:mciSendString。
我能够记录并保存它。我想在保存之前对其进行一些处理,但我没有找到任何正确的方法、方法、技巧来在录制过程中获取缓冲区(同样,没有先保存到 WAV 文件)?
任何想法?
c++ - mciSendString() setaudio 音量错误 261
我正在使用 MCI 做一些与声音相关的事情,一切正常,除了我无法改变音量。我有以下代码:
error
是 261。程序运行良好,但音量没有变化。关于有什么问题的任何建议?(谷歌搜索了两页,什么都没有)
c++ - 具有长文件路径的 MCIWindow
我在我的项目中遇到了一个场景,我正在创建一个 MCI 窗口以播放一些视频,其中当传递给它的文件路径长度超过 128 个字符时,它无法正确播放。
我正在创建一个新的 MCIWindow,如下所示:
稍后将通过执行以下操作来播放它:
在我创建m_window
使用shortPath
长度 < 128 的情况下,媒体显示和播放一切正常。但是,如果 ashortPath
长度 > 128,则不会播放任何媒体。有趣的是,在上面的VideoMedia::play()
函数中,日志表明MCIWndPlay()
调用执行良好,因为没有看到 if 内部的错误日志。
我想知道这是否只是 MCIWnd 不能支持长文件路径的情况,尽管我在文档中没有看到任何建议是这种情况?
c - mcisendstring 返回空字符串
我一直在尝试检索能够使用 WINMM 的函数 mciSendString(); 打开和播放的音乐的歌曲长度;
即使没有返回错误代码,szResponse 字符串也总是返回 NULL。
我尝试将时间格式设置为毫秒,
但也没有运气。关于我可能遗漏的任何想法?
提前致谢
c++ - 在 cocos2dx for Win32 中实现音高音频
我正在使用 cocos2dx 的 SimpleAudioEngine。(我需要使用它,而不是新的 AudioEngine)。
我尝试为 Win32 的 SimpleAudioEngine 实现音高功能,但我被卡住了。
cocos2dx 在使用 SimpleAudioEngine 时使用 MCI 进行音频播放。(MCI 参考:https ://msdn.microsoft.com/en-us/library/windows/desktop/dd742874(v=vs.85).aspx )。
我不知道如何实现音高功能。还有 setVolume,但它的实现也是空的(我猜 cocos2dx 家伙没有实现它)。我正在使用 cocos2d-x v.3.3 c++。我发现有一个 dwSpeed 变量可用于更改播放速率,但我不知道如何使用它。
这是我所做的:
这是 MciPlayer 的 cpp 文件:http: //pastebin.com/BNyC7FEK
在这种特定情况下是否有机会实施宣传?或者 MCI 不支持这个?如果有任何 MCI 极客,请提供帮助!
我想这是一项相当具有挑战性的任务。
谢谢你的时间!
克里斯
c# - 我可以更改 mciSendString 的输出 midi 设备吗
所以我终于找到了在这门课上帮助我的帖子之一
但是我似乎发现了一点问题,整个程序发出声音,但显然它输出到(microsoft gs波表合成器)在这个类中有没有办法我可以改变midi输出的方式或者它只是在播放就像那种形式的 MediaPlayer,请告诉我,这是我项目的最后一步,只是一个简单的代码,让我说我能做到我可以通过整数或名称指定 midi 设备,我的意思是MIDI 设备订购!
windows - Windows 10 上的媒体控制界面失败
我使用 Windows MCI(“媒体控制接口”)编写了一些基本的 C++ 程序,特别是用于播放 MIDI 和 MP3 文件。它们曾经在 Windows XP 上完美运行。最近我搬到了 Windows 10,现在它们有时可以工作(我不知道在什么条件下),但大多数情况下它们会立即终止,而不播放 MP3 或 MIDI 文件。奇怪的是我没有收到错误指示(非零返回码)。我确保在所有相关调用中都包含 MCI_WAIT 选项。这些程序是命令行程序,而不是图形程序。请帮忙!
好的,这是可读性更好的 PLAYSIM(PLE) 代码(抱歉,我不经常使用 stackoverflow)。你会注意到主线是非常基础的。这个实现中的设备类型是从文件类型推断出来的——它总是工作得很好(不正确或不受支持的文件类型会导致一条消息,而不是“静默失败”)。我试图在 OPEN 之前加上 CLOSE,但这是不允许的。我还寻找了某种“MCI(重新)初始化调用”,但没有找到——而且以前从未需要它。
--->>> 更简单的版本见最后。该版本应该在任何 Windows 系统上都是“可编译的”。
我怎样才能提醒微软修复这个错误???
更简单:
vb.net - 录音机 - 选择录音设备 - VB.Net
我正在尝试使用 VB.Net 创建一个录音机。
这就是我的做法:
它工作正常,唯一的问题是我有两个麦克风,其中一个是内置的,另一个是通过 USB 连接的。第二个有更好的录音质量,但这个应用程序总是从内置麦克风录音。
我已经在互联网上搜索了所有内容,但找不到选择录音设备的方法。我唯一能找到的是:
我尝试了不同的值无济于事。
我还尝试了以下代码,成功列出了我的计算机中找到的所有记录设备的所有属性,但我找不到任何可以帮助的东西:
任何建议将不胜感激。
delphi - Delphi / MCI 独家控制麦克风
所以我正在使用 MCISendString 用 Delphi 录制音频。该代码工作正常,但有一个例外。我让用户设置参数、通道、位、频率,在 Windows 7 上这很好用。现在在 Windows 10 上,我得到 mcierr_wave_inputsinuse。
如果我将参数减少到 1 个通道、8 位、8khz,它记录得很好。任何高于此的内容,MCI 都会拒绝。根据我的设备,它应该是 1 通道、16 位、48k。
我猜麦克风是共享的。有谁知道如何让 Delphi 程序获得独占控制,以便它可以使用设备的全部功能?
我做了很多挖掘工作,但没有找到任何有用的东西。
谢谢
这是我正在使用的代码。
它返回一个 322 结果代码。我已经尝试过转换为 PChar 和不转换为 PChar。
它似乎与 Cortana 有关。但由于无法完全禁用 Cortana,因此获得独占控制权似乎是唯一可能的解决方案。