我收到错误使用wavread时错误(第67行) 无效的Wave文件。原因:无法打开文件。
energy_per_frame出错(第2行)[inpu fs] = wavread(文件);
这是调用energy_per_frame的函数的源代码。
[inpu fs] = wavread(file);
clc;clear;close all;
file = input('Enter name of wav file ', 's');
counter=0;
for test_number = 0:4
for test_number2 = 0:20
counter=counter+1;
reference = dtw_avg(test_number2);
test = energy_per_frame(file);
distance(counter) = dtw(test,reference);
end
这是函数energy_per_frame
的源代码 [inpu fs] = wavread(file);
fn = fs/2;
bins = 512; %useable bins
frame_length = bins;
window = hamming(frame_length);
overlap = .5;
number_of_frames = (length(inpu)/(frame_length)/overlap) - 1;
这里有什么问题?
答案 0 :(得分:0)
好吧,你的函数定义看起来应该是这样的
function [ output_args ] = energy_per_frame( input_args )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
end
您似乎错过了function
关键字。
但是,如果第一个块只是一个脚本,那么在实际拥有文件名的用户输入之前,您将调用wavread。而且,实际上没有必要像函数那样调用clear等。