We have released v1.0.0 of our internally-developed Python software to
read header and signal data. The code can be found here:
as well as on our anonymous rsync server.
A number of you have pointed out that various open source packages you
are using to read EDF files has problems. The software we are releasing
has been extensively tested on all the EDF files we provide and works.
We have been using it for some time. We don't claim it is superior to
these other packages, but it does represent a very faithful
implementation of the EDF header as we understand it.
There is a C++ version that we use internally and regression test
against this Python code. We are only distributing the Python version at
The driver program we provide was kept simple so you can focus on how to
use the software. We have much more sophisticated interfaces that
support command line arguments, file lists, etc.
This software requires Python 3, but not much else. It should be easy to
install and run. Python 3 significantly changed how it handles strings,
aand we did not attempt to make this code backwardly compatible with
Let us know if you have problems with this software.