Replies: 2 comments
-
Very useful, thanks! Semi related question: do 24 bit and 32 bit formats still represent NAN using -32768? |
Beta Was this translation helpful? Give feedback.
0 replies
-
To be clear, there's no such thing as "NaN" in the WFDB format (which
concerns itself with integer sample values) nor in the libwfdb API
(which concerns itself with "WFDB_Sample", an integer type.) "NaN" is
a concept from IEEE 754 that has no direct relevance and no precise
equivalent.
The libwfdb API considers WFDB_INVALID_SAMPLE to represent an "invalid
sample". In particular, the API needs to return some value when
you're reading a variable-layout record and the signal in question is
absent. WFDB_INVALID_SAMPLE is currently defined as -32768, and it
would be difficult to change that.
But as far as the signal file formats are concerned, -32768 is a
perfectly ordinary sample value. Invalid samples within a segment
should be represented by the minimum possible value, which is -8388608
in format 24, and -2147483648 in format 32.
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
These are the changes I'm aware of, relating to the header and signal file formats and how they are interpreted by the WFDB library. (Annotation files are another story.)
Most of these changes are "bug fixes" of some sort, but since older applications are generally capable of reading the newer files (incorrectly), these can also be regarded as changes to the format. For example if you need to produce a database that can be read by WFDB 10.5.24, then you can't use gap segments in multi-frequency records.
10.0.1:
10.2.0:
10.4.0:
10.5.0:
10.6.0:
10.7.0:
Beta Was this translation helpful? Give feedback.
All reactions