Borrar filtros
Borrar filtros

I am getting error when i try to listen mat file

1 visualización (últimos 30 días)
moonman
moonman el 31 de Oct. de 2011
Hi i am having mat file its name is sig.mat it is having dtmf tones in it
i m using
x=load('sig.mat');
soundsc(x,8000)
and i am getting error
??? Undefined function or method 'min' for input arguments of type 'struct'.
Error in ==> soundsc at 27 xmin = min(x(:));

Respuesta aceptada

Wayne King
Wayne King el 31 de Oct. de 2011
Hi Moonman, what is x?
>>whos x
If it is a structure, then feed soundsc() the appropriate field
soundsc(x.data,8000)
or whatever the field is.
  1 comentario
Wayne King
Wayne King el 31 de Oct. de 2011
for example if you tried:
x = struct('data',randn(1e3,1));
soundsc(x,8000)
You would get that error. But
soundsc(x.data,8000)
is fine

Iniciar sesión para comentar.

Más respuestas (3)

moonman
moonman el 31 de Oct. de 2011
I am having a mat file and i want to listen it
now i am using this and still getting error
x=load('sig.mat');
soundsc(x.data,8000)
the whosx command returns
whos x
Name Size Bytes Class Attributes
x 1x1 28124 struct
  1 comentario
Wayne King
Wayne King el 31 de Oct. de 2011
enter fieldnames(x) and see what you really want to listen to
Please see my comment above:
for example if you tried:
x = struct('data',randn(1e3,1));
soundsc(x,8000)
You would get that error. But
soundsc(x.data,8000)
is fine

Iniciar sesión para comentar.


moonman
moonman el 31 de Oct. de 2011
I am doing as per ur instructions now i did this but did not listen any sound
x = struct('data','dtmfsig.mat');
soundsc(x.data,8000)
  1 comentario
Wayne King
Wayne King el 31 de Oct. de 2011
That is not per my instructions. I was constructing a struct array as an example. You have entered:
x = load('sig.mat');
x is a structure array, you cannot play a structure array with soundsc(), you have to play a field of a structure array. Enter
fieldnames(x)
and see which part of x you really want to play.

Iniciar sesión para comentar.


Jan
Jan el 31 de Oct. de 2011
It seems to be nothing but non-trivial. Let me try it also, Wayne:
x = load('sig.mat');
f = fieldnames(x);
fprintf('%s\n', f{:}); % Just for information
soundsc(x.(f{1}), 8000);

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by