好吧,我在开始这个问题时遇到了麻烦.我试图在Octave中使用soundsc函数,但我一直收到此错误:
error: sound.m: No command line utility found for sound playing
Run Code Online (Sandbox Code Playgroud)
我在网上搜索了一些但却找不到该做什么.这是我在网上找到的包含错误的文件的源代码的链接:http://octave-audio.sourcearchive.com/documentation/1.1.3/sound_8m-source.html
我认为错误来自这里:
## What do we use for playing?
global sound_play_utility;
if ~isempty(sound_play_utility),
## User specified command
elseif (file_in_path(EXEC_PATH, "ofsndplay"))
## Mac
sound_play_utility = "ofsndplay -"
elseif (file_in_path(EXEC_PATH, "play"))
## Linux (sox)
sound_play_utility = "play -t AU -";
else
error("sound.m: No command line utility found for sound playing");
endif
Run Code Online (Sandbox Code Playgroud)
我只是碰巧使用Windows 7,所以我想我必须以某种方式指定自己的路径?更改源代码?我不知道我想要做些什么才能让它发挥作用!有人能告诉我吗?
我不知道这是否适用于Windows 7,但这就是我设法在Windows XP上运行soundsc,sox和octave:假设你已经安装了八度,
现在,八度音程应该找到播放声音的"播放"可执行文件.
您可以使用以下代码尝试它,这应该产生一些丑陋的哔哔声;-)
% Sampling theorem - mirror frequency
% s3s11_1.m * mw * 11/17/2007
FS = 8000; % sampling frequency in Hz
t = 0:1/FS:1; % normalized time
x = [];
for k = 1:7
x = [x sin(2*pi*k*1e3*t)]; % signal 1...7 kHz
end
soundsc(x,FS) % sound
Run Code Online (Sandbox Code Playgroud)
希望有所帮助:-).