Linux Compilation

Forum for software developers to discuss BCI2000 software development
Locked
dsteines
Posts: 16
Joined: 23 Jan 2010, 17:19

Linux Compilation

Post by dsteines » 14 Jun 2010, 13:56

I tried generating makefiles on Ubuntu Linux for version 3.0, and encountered a few warnings--in particular one warning concerned a DirectSound reference in StimulusPresentation.

Have you tested version 3.0 on Linux, and are you planning on replacing the DirectSound reference with some other library?

I know that 3.0 is a work in progress, but I ask in part just to get a sense of where things stand, and if there is anything that we can offer with respect to testing BCI2000 on Linux.

Thanks,

David

griffin.milsap
Posts: 58
Joined: 08 Jun 2009, 12:42

Post by griffin.milsap » 23 Jun 2010, 12:32

David,

BCI2000 is eventually headed to other operating systems. The only real problem is with the audio code (as you've found) and some other systems. A lot of BCI2000 systems have been abstracted - so all that remains is to write platform specific code for those systems.

These changes are not intended for BCI2000 V3.0 at this time, however. A newer version of BCI2000 should be able to run on Linux and OSX, but not for the foreseeable future.

I plan to spend some more time this summer on getting some of the modules compiling and running in linux.

This is actually a pretty interesting problem. Windows Vista with BCI2000 implemented as it is now, has relatively poor input to visual output latencies. These latencies are almost unacceptable for a realtime BCI system. Windows 7 is no better. We could - of course - write a visual output layer in DirectX to speed up the visuals, but this is contrary to keeping an open portable platform.

There are several issues to be resolved in bringing BCI2000 to another operating system, however. Even if we can get the code compiling and running, we need some sort of verification system on the user end to verify that the input-output latency of the operating system is good enough. Also, many signal acquisition devices only have drivers for windows 32 bit. This is a problem for using BCI2000 on windows 64 bit, as well as other OS's like linux and OSX.

Due to the modular nature of BCI2000, it is currently possible to run the signal processing modules on a linux computer and communicate over the network to the rest of the system running on a windows computer. This has been done on BCI2000 V2.0, but I haven't heard of anyone doing this on 3.0 yet.

It's definitely on the horizon, but there's several issues to be explored first.

-Griff

Locked

Who is online

Users browsing this forum: No registered users and 0 guests