wfdb-app-toolbox
wfdb-app-toolbox copied to clipboard
Error executing WFDBTIME
What steps will reproduce the problem?
clear all;clc;close all
N=10024;
Fs=48000;
tm=[0:1/Fs:(N-1)/Fs]';
adu='V/mV/V';
info='Example 1';
sig1=double(int16(linspace(-2^15,2^15,N)'));
sig2=double(int8(sin(2*pi*tm*1000).*(2^7)))./(2^7);
sig3=(rand(N,1) > 0.97)*2 -1 + 2^16;
sig=[sig1 sig2 sig3];
mat2wfdb(sig,'Ex1',Fs,[],adu,info)
n=6000;
[timeStamp]=wfdbtime('Ex1',linspace(1,n,n))
What is the expected output? What do you see instead?
We should get an array in timeStamp, instead we we get the following error
message:
error executing: wfdbtime
>>>> java.io.IOException: Cannot run program
>>>> "Z:\Matlab\mcode\nativelibs\windows-amd64\bin\wfdbtime":
>>>> CreateProcess error=87, Falscher Parameter
>>>> at java.lang.ProcessBuilder.start(Unknown Source)
>>>> at
>>>> org.physionet.wfdb.Wfdbexec.execToStringList(Unknown
Source)
>>>> at
>>>> org.physionet.wfdb.Wfdbexec.execToStringList(Unknown
Source)
>>>> Caused by: java.io.IOException: CreateProcess
>>>> error=87, Falscher Parameter
>>>> at java.lang.ProcessImpl.create(Native Method)
>>>> at java.lang.ProcessImpl.<init>(Unknown Source)
>>>> at java.lang.ProcessImpl.start(Unknown Source)
>>>> ... 3 more
>>>> Attempt to reference field of non-structure array.
>>>>
>>>> Error in wfdbtime (line 71)
>>>> data=javaWfdbExec.execToStringList(wfdb_argument).toArray;
Original issue reported on code.google.com by [email protected]
on 28 Jul 2014 at 1:19
This appears to be mostly reproduced on Windows Systems such as this one:
MATLAB_VERSION: '8.1.0.604 (R2013a)'
>>> inOctave: 0
>>> WFDB_VERSION: '[10.5.22]'
>>> WFDB_JAVA_HOME: ' C:\wfdb\mcode\'
>>> WFDB_NATIVE_BIN: '
>>> C:\wfdb\mcode\nativelibs\windows-amd64\'
>>> EXECUTING_DIR: ' null'
>>> osName: 'windows'
>>> fullOsName: ' Windows NT (unknown)'
>>> osArch: ' amd64'
>>> customArchFlag: ' false'
>>> OSVersion: ' 6.2'
>>> JVMVersion: ' 1.6.0_17]'
Increasing the Java heap does not help ( memory leak ?).
From one of the users:
"We did find a workaround to create a large annotation-file. We did this by
writing several smaller files that were successively merged. However, there
really seems to be a problem with the wfdbtime.m-function. If you have more
than about 4000 timestamps it will crash. We encountered this problem on two
separate PCs with different versions of MATLAB"
Original comment by [email protected]
on 28 Jul 2014 at 1:22
- Added labels: Priority-High
- Removed labels: Priority-Medium