问题描述
q:: Soundplay,C:\Users\User\Desktop\testing\Ding Sound Effect.mp3
我正在尝试制作一个连续记录系统音频的功能,当我按 num9 之类的 smth 时,它会保存最后 10 或 5 秒并使用 "Soundplay" 播放。我只是想知道这是否可能,因为我搜索并找到了与我要查找的内容无关的内容!
-我尝试过的: 当你用谷歌搜索解决方案时,你会发现这篇 2006-2010 年的旧帖子
https://autohotkey.com/board/topic/49559-recording-audio-seven-ways-in-ahk-6-ways-even-work/
我尝试了作者所说的每一种都有效......对我来说没有任何效果。
-
在 SndRec32.exe 方法中...因为您需要从网站将 SndRec32.exe 安装到 wind10...很难找到没有病毒的文件...甚至当我找到时一个并复制并粘贴到 system32(如作者建议的那样),保存后我看不到该文件,并且每当 ahk 脚本午餐时,您也需要处理出现的弹出窗口!
-
SoundRecorder.exe 方法需要你有wind 7 或vista ......我使用的是win10
-
SoX 方法:我安装了 sox 并运行了脚本,但就像 audacity 一样,它给了我错误“找不到 sox!请确保 sox.exe 位于:。”是的,它说位于 ( . )
-
MCI 方法:它没有用,但它是迄今为止最好的一个......它显示了 gui 并显示了录制动画,但是在保存文件时它给了你选择命名文件并选择位置,但它没有保存文件!这个和作者提到的录音机方法的最好的事情是(它们允许 AHK 控制录音机,即使它是“隐藏的”,即运行但在屏幕上不可见)
- 正如作者所说,FMOD.DLL 和 BASS.DLL 方法仍在改进中......所以它们不起作用!
如果我做错了什么,请告诉我,我可能做错了什么。如果你也测试了这些方法,我真的会很高兴,我仍然会尝试重新阅读代码,我会尝试使大胆或 MCI 方法发挥作用,因为它们已经取得了最好的结果!
我试图理解 MCI 代码,但显然保存部分是什么把一切搞砸了,我就是不知道它到底是什么......
顺便说一句,这里是我从网站上使用的代码:
Gui 文件 MCI Gui.ahk(我不得不把它删减到没有注释的部分.. 原始代码请参考上面的网站链接)
n
还有主文件MCI.AHK(我不得不把它剪成没有注释的部分..请参考上面的网站链接获取原始代码)
#Persistent
#SingleInstance FORCE
#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%
#SingleInstance,ignore
DetectHiddenWindows,On
SetTitleMatchMode,2
#Include MCI.AHK
hMedia:=MCI_Open("new","","type waveaudio")
SetTimer showRecording,350
SetTimer showRecording,Off
Recording = 0
Step = 0
gui Margin,0
gui -MinimizeBox
gui Add,Button,w220 gRecord,Record/Pause
gui Add,wp hp gExit,Exit (Save as .WAV)
Gui,Add,StatusBar,Ready
gui,Show,MCI
Return
Record:
if (Recording = 0) {
Recording = 1
status := MCI_Record(hMedia)
SetTimer showRecording,On
gosub,showRecording
} else {
Recording = 0
status := MCI_Pause(hMedia)
SetTimer showRecording,Off
SB_SetText(" Paused")
}
return
showRecording:
Step ++
if (Step = 1)
SB_SetText("Recording")
else if (Step = 2)
SB_SetText(" Recording")
else {
SB_SetText(" Recording")
Step = 0
}
return
ESC::
Exit:
GUIClose:
MCI_Stop(hMedia)
SetTimer showRecording,Off
SB_SetText(" Saving")
FileSelectFile,SavePath,S8,.wav,*.wav
MCI_Save(hMedia,SavePath)
SB_SetText(" Saved")
SB_SetText(" Closing")
MCI_Stop(hMedia)
MCI_Close(hMedia)
ExitApp
return
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)