[mirtoolbox] Problems with MIRPEAKS and other...

  • From: "Luca Piccina" <luca.piccina@xxxxxxxxx>
  • To: <mirtoolbox@xxxxxxxxxxxxx>
  • Date: Sat, 8 Nov 2008 02:46:00 +0100

Hello,
I am Luca from Italy and I have a problem with the functions mirregularity and 
mirpeaks.
Giving as input to mirregularity a frame decomposed object like f = 
mirframes(audio) or s = mirspectrum(f) produces a lot of divide by zero warning 
(obviously audio = miraudio(myfile.wav)) :
Warning: Divide by zero.
  In mirpeaks>main at 461
  In mirfunction at 151
  In mirpeaks at 177
  In mirregularity>init at 45
  In mirfunction at 126
  In mirregularity at 37


The problem should be given by mirpeaks function, but when I call it on the 
same object, for ex. s, no warning is given. Instead, if I try to visualize the 
result, Matlab crashes giving the following message.

p = mirpeaks(s); %no error
p %crash
----------------------------------------------------------------------
       Segmentation violation detected at Sat Nov 08 02:27:40 2008
------------------------------------------------------------------------

Configuration:
  MATLAB Version:   7.0.0.19920 (R14)
  Operating System: Microsoft Windows XP
  Window System:    Version 5.1 (Build 2600: Service Pack 2)
  Processor ID:     x86 Family 6 Model 15 Stepping 6, GenuineIntel
  Virtual Machine:  Java 1.4.2 with Sun Microsystems Inc. Java HotSpot(TM) 
Client VM
    (mixed mode)
  Default Charset:  ibm-5348_P100-1997

Register State:
  EAX = 00239587  EBX = 0f416630
  ECX = 28600030  EDX = 002399fa
  ESI = 1a5946f0  EDI = 1a686580
  EBP = 00cdc9f4  ESP = 00cdc6a4
  EIP = 791bc242  FLG = 00010287

Stack Trace:
  [0] hg.dll:_render_mesh_zbuf(0x1a4acf40, 0x1ae46470, 0x01000001, 0x1a4acf40) 
+ 3746 bytes
  [1] hg.dll:_GO_RenderZbuffer(0x1a4acf40, 0x1ae46470, 0x1a686580, 0x1a686580) 
+ 25 bytes
  [2] hg.dll:void __cdecl renderKidsZbufRecursive(struct GObject_tag *,struct 
RenderBuffer *,struct MaterialProps_tag *,struct NLights_tag *)(0x1a72dc20, 
0x1a686580, 0x1a5946c0, 0x1a594690) + 362 bytes
  [3] hg.dll:void __cdecl renderKidsZbuf(struct GObject_tag *,struct 
RenderBuffer *)(0x1a686580, 0x1a686580, 0x1a72dc20, 0xb5040f00) + 137 bytes
  [4] hg.dll:_RenderAxisZbuffer(0x1a72dc20, 0, 0x01686580, 0x1a72dc20) + 145 
bytes
  [5] hg.dll:_GO_RenderZbuffer(0x1a72dc20, 0, 0x1a686580, 0x1a686290) + 25 bytes
  [6] hg.dll:bool __cdecl RenderNormalAxesChildrenRecursive(struct GObject_tag 
*,struct RenderBuffer *)(0x1a686290, 0x1a686580, 0x1a686580, 0x1acae370) + 246 
bytes
  [7] hg.dll:void __cdecl RenderFigureZbuffer(struct GObject_tag *,struct 
XFormedData *,struct RenderBuffer *)(0x1a686290, 0, 0x1a686500, 0x1a686290) + 
112 bytes
  [8] hg.dll:_GO_RenderZbuffer(0x1a686290, 0, 0x1a686580, 0x1a686290) + 25 bytes
  [9] hg.dll:public: virtual void __thiscall ZBufferRenderEngine::draw(struct 
GObject_tag *)(0x1a686290, 0x00cdcb58 "°ËÍ", 0x79187849, 0x1ae49bd4) + 128 bytes
  [10] hg.dll:void __cdecl RenderEngineDraw(struct RenderEngine_tag *,struct 
GObject_tag *)(0x1ae49bd4, 0x1a686290, 0x0f417730, 0x0f0cbb30 "PÍ\ny") + 22 
bytes
  [11] hg.dll:_figure_expose_fcn(0x0f417730, 0x00cdcb98, 0x0f417730, 0) + 185 
bytes
  [12] libmwgui.dll:void __cdecl wm_ExposeFcn(struct WinRec_tag *)(0x0f417730, 
0x0f417730, 0, 0x0f49d110) + 97 bytes
  [13] libuij.dll:public: static void __cdecl 
FigureJavaEventManager::PaintCallback(class UDInterface *,void *,void const 
*,bool)(0x1a345750, 0x1a665010, 0x00cdcc8c, 0) + 208 bytes
  [14] libuij.dll:public: virtual bool __thiscall 
uij::JavaEventListener::execute(class UDEvent *)(0x00cdcc8c, 0x0f564ec0, 
0x1a345750, 0x00cdcc8c) + 64 bytes
  [15] udd.dll:public: bool __thiscall UDListenerList::execute(class UDEvent 
*)(0x00cdcc8c, 0x00cdcc54 "lÌÍ", 0x788d8df9, 0x0ef745a0) + 86 bytes
  [16] udd.dll:public: virtual void __thiscall 
UDListenerManagerHost::notifyEvent(class UDDatabaseClient *,class UDEventSource 
const *,class UDEventInfo const *,class UDEvent *)(0x0ef745a0, 0x1a345754, 
0x0f564ec0, 0x00cdcc8c) + 52 bytes
  [17] udd.dll:public: virtual void __thiscall UDEventInfo::send(class 
UDDatabaseClient *,class UDInterface *,class UDEvent *)(0x0ef745a0, 0x1a345750, 
0x00cdcc8c, 0x1a345750) + 57 bytes
  [18] udd.dll:public: void __thiscall UDInterface::send(class UDDatabaseClient 
*,class UDEventInfo *,class UDEvent *)(0x0ef745a0, 0x0f564ec0, 0x00cdcc8c, 0) + 
85 bytes
  [19] udd_mi.dll:_ProcessBeanUDDEvent(291, 0x00cdcd0c, 0, 0x00cdcdf0) + 551 
bytes
  [20] uiw.dll:bool __cdecl UIW_DispatchUserMessage(int,int)(9223, 291, 0, 
0x00030000 "Actx ") + 76 bytes
  [21] uiw.dll:_HandleUserMsgHook@12(0, 1, 0x00cdcdf0, 0x00cdcec4 "ÔÎÍ") + 74 
bytes
  [22] USER32.dll:0x7e3b18e3(0x00030000 "Actx ", 1, 0x00cdcdf0, 0x7905d8b0)
  [23] USER32.dll:0x7e39f7f6(0x00cdcde0, 0x00cdcdf0, 0x00cdce0c, 0)
  [24] USER32.dll:0x7e39f94b(0x00cdcde0, 48, 0x00030000 "Actx ", 1)
  [25] ntdll.dll:0x7c91eae3(0x00cdcec4 "ÔÎÍ", 0, 0, 0)
  [26] uiw.dll:void __cdecl ws_ProcessPendingEventsMainLoop(int,bool)(0, 1, 
0x00cdcf28 "HÏÍ", 0x79189112) + 378 bytes
  [27] uiw.dll:void __cdecl ws_ProcessPendingEventsWaitForWindows(int)(0, 
0xffffffff, 0, 0x00cdd21c "PÒÍ") + 79 bytes
  [28] hg.dll:_hgDrawnow(1, 0x00cdd1bc, 0, 0x00cdd21c "PÒÍ") + 130 bytes
  [29] m_dispatcher.dll:public: virtual void __thiscall Mfh_builtin<struct 
mxArray_tag>::dispatch_mf(int,struct mxArray_tag * *,int,struct mxArray_tag * 
*)(0, 0x00cdd1bc, 0, 0x00cdd21c "PÒÍ") + 55 bytes
  [30] m_dispatcher.dll:public: virtual void __thiscall 
Mfh_MATLAB_fn::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * 
*)(0, 0x00cdd1bc, 0, 0x00cdd21c "PÒÍ") + 200 bytes
  [31] m_interpreter.dll:_inDispatchFromStack(172, 0x1a66816c "drawnow", 0, 0) 
+ 891 bytes
  [32] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const 
*,int,int,int,int *,int *)(0x1a66816c "drawnow", 172, 0, 0) + 111 bytes
  [33] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum 
opcodes,struct inPcodeNest_tag volatile *)(1, 8238, 407, 0) + 2282 bytes
  [34] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum 
inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *)(1, 8238, 9, 0) + 
272 bytes
  [35] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp 
*,bool)(0x1a681cd0, 0, 13, 13) + 773 bytes
  [36] m_interpreter.dll:_inWordsj(1, 0x00cdd8dc, 13, 0x00cdd93c) + 441 bytes
  [37] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct 
mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(1, 
0x00cdd8dc, 13, 0x00cdd93c) + 158 bytes
  [38] m_interpreter.dll:public: virtual void __thiscall 
Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * 
*,int,struct mxArray_tag * *)(0, 1, 0x00cdd8dc, 13) + 28 bytes
  [39] m_interpreter.dll:public: virtual void __thiscall 
Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 
0x00cdd8dc, 13, 0x00cdd93c) + 26 bytes
  [40] m_dispatcher.dll:public: virtual void __thiscall 
Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 
0x00cdd8dc, 13, 0x00cdd93c) + 273 bytes
  [41] m_interpreter.dll:_inDispatchFromStack(621, 0x1a6c8dec "displot", 1, 
0x01fffff3) + 891 bytes
  [42] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const 
*,int,int,int,int *,int *)(0x1a6c8dec "displot", 0, 1, 0xfffffff3) + 111 bytes
  [43] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum 
opcodes,struct inPcodeNest_tag volatile *)(1, 1160, 63, 0) + 2282 bytes
  [44] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum 
inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *)(1, 1160, 4, 0) + 
272 bytes
  [45] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp 
*,bool)(0x1a6c1d00, 0, 2, 1) + 773 bytes
  [46] m_interpreter.dll:_inWordsj(0, 0x00cddffc, 2, 0x00cde05c) + 441 bytes
  [47] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct 
mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(0, 
0x00cddffc, 2, 0x00cde05c) + 158 bytes
  [48] m_interpreter.dll:public: virtual void __thiscall 
Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * 
*,int,struct mxArray_tag * *)(0, 0, 0x00cddffc, 2) + 28 bytes
  [49] m_interpreter.dll:public: virtual void __thiscall 
Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 
0x00cddffc, 2, 0x00cde05c) + 26 bytes
  [50] m_dispatcher.dll:public: virtual void __thiscall 
Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 
0x00cddffc, 2, 0x00cde05c) + 273 bytes
  [51] m_interpreter.dll:_inDispatchFromStack(620, 0x1a33c580 "mirdisplay", 0, 
2) + 891 bytes
  [52] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const 
*,int,int,int,int *,int *)(0x1a33c580 "mirdisplay", 0, 0, 2) + 111 bytes
  [53] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum 
opcodes,struct inPcodeNest_tag volatile *)(1, 35, 4, 0) + 2282 bytes
  [54] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum 
inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *)(1, 35, 4, 0) + 272 
bytes
  [55] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp 
*,bool)(0x0eef0580 "D¸¹xF", 0, 1, 1) + 773 bytes
  [56] m_interpreter.dll:_inWordsj(0, 0x00cde71c, 1, 0x00cde77c) + 441 bytes
  [57] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct 
mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(0, 
0x00cde71c, 1, 0x00cde77c) + 158 bytes
  [58] m_interpreter.dll:public: virtual void __thiscall 
Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * 
*,int,struct mxArray_tag * *)(0, 0, 0x00cde71c, 1) + 28 bytes
  [59] m_interpreter.dll:public: virtual void __thiscall 
Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 
0x00cde71c, 1, 0x00cde77c) + 26 bytes
  [60] m_dispatcher.dll:public: virtual void __thiscall 
Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 
0x00cde71c, 1, 0x00cde77c) + 273 bytes
  [61] m_interpreter.dll:_inDispatchFromStack(70, 0x1a33a1a0 "display", 0, 1) + 
891 bytes
  [62] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const 
*,int,int,int,int *,int *)(0x1a33a1a0 "display", 70, 0, 1) + 111 bytes
  [63] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum 
opcodes,struct inPcodeNest_tag volatile *)(2, 0, 0, 0) + 2411 bytes
  [64] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum 
inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *)(2, 0, 0, 0) + 272 
bytes
  [65] m_interpreter.dll:_inInterPcode(2, 0x7876f2d8 
"¸òvx°úrx`ûrxÐúrx¸òvxØòvx", 0, 0) + 69 bytes
  [66] m_interpreter.dll:enum inExecutionStatus __cdecl 
in_local_call_eval_function(int *,struct _pcodeheader *,int *,struct 
mxArray_tag * * const,enum inDebugCheck)(0x00cdf2c8, 0x00cdf3bc, 2, 0x1a22b0c0 
"p\n") + 162 bytes
  [67] m_interpreter.dll:$L72592(0x7876f2d8 "¸òvx°úrx`ûrxÐúrx¸òvxØòvx", 
0x1a22b0c0 "p\n", 2, 0) + 196 bytes
  [68] m_interpreter.dll:enum inExecutionStatus __cdecl 
inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0, 2, 1, 
0x00cdf44c "ôôÍ") + 86 bytes
  [69] m_interpreter.dll:_inEvalCmdNoEnd(0x1a22b0c0 "p\n", 0x00cdf4e4, 
0x00cdf4a0, 0x014b1f98) + 16 bytes
  [70] bridge.dll:_mnParser(0x7c80b6a1, 0x014b1f98, 0, 0) + 431 bytes
  [71] mcr.dll:public: void __thiscall mcrInstance::mnParser(void)(271268, 
0x505c3a43, 0x72676f72, 0x696d6d61) + 87 bytes
  [72] MATLAB.exe:0x00401d2f(4194304, 0, 271268, 0x014b1f98)
  [73] MATLAB.exe:0x00403e45(3342384, 3276849, 0x7ffde000, 0x8054a6ed)
  [74] kernel32.dll:0x7c816fd7(0x00403cc0 "jth(U@", 0, 0, 1245343)

Is the function working properly or there are some problems? I am quite 
sospicious because of all those warnings and of the crash...

Another last question:  I wanted to use mirroughness to get some information, 
but there are some problems. If I pass to it a frame decomposed object like f = 
mirframe(audio) only one value is returned instead of the different values of 
roughness along time.
Using a simple audio object I read that an automatic frame decomposition is 
performed, and roughness along time is returned. But what about if I wanted to 
use a different frame length than 50 ms?
Thanks in advance for the help,
best regards

Luca Piccina

Other related posts: