sound関数を使う​と「入力引数が多すぎ​ます」とでる

wavファイルからy1とFs1の情報を取得しsound関数の引数としたら以下のエラーが発生しました.
>> sound(y1, Fs1)
次を使用中のエラー: sound
入力引数が多すぎます。
引数のサイズは
>> size(y1)
ans =
614400 1
>> size(Fs1)
ans =
1 1
です.
どうすればこの音源を再生できますでしょうか.

1 Kommentar

Atsushi Ueno
Atsushi Ueno am 14 Mai 2023
sound 関数の受け付ける入力引数の数(1~3)は適当であるにも関わらず当該エラーが出ている事が事実であれば、MATLABの sound 関数と同名の sound 関数が存在し、そちらが優先して呼び出されているのではないでしょうか?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Atsushi Ueno
Atsushi Ueno am 14 Mai 2023

1 Stimme

可能性のある原因を再現するプログラムと添付ファイルを準備しました。
コメントを外して、現在のフォルダ (Pathの通っているフォルダ) にある sound.m を別フォルダ (Pathの通っていないフォルダ) に移動させると、MATLAB組み込みの sound 関数の方が優先して実行される事を確認する事が出来ます。
type sound % 添付ファイル sound.m の中身を表示(入力を出力に渡すだけ)(引数が1つ存在しなければ警告を出す)
function out = sound(in) if nargin~=1, error(message('MATLAB:audiovideo:playsnd:invalidInputs')); end out = in; end
load gong.mat
%mkdir other
%movefile sound.m other
sound(y,Fs);
Error using sound
Too many input arguments.

2 Kommentare

Atsushi Ueno
Atsushi Ueno am 14 Mai 2023
どの sound 関数が実行されるのか確認する方法です。MATLAB組み込みの sound 関数が使用出来る場合は、下記に近い結果になり、当該エラーが発生している状況では、パスの通った場所に同名の sound 関数が存在するはずです。
which sound
/MATLAB/toolbox/matlab/audiovideo/sound.m
L.K
L.K am 14 Mai 2023
確認したところ,
MATLABにsound関数と同名のmatlabファイルが優先して呼び出されていました.
そのファイルを消したところ音源を再生することができました.
ご回答頂き大変ありがとうございました.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Audio I/O and Waveform Generation finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2023a

Gefragt:

L.K
am 13 Mai 2023

Kommentiert:

L.K
am 14 Mai 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!