Advice on video libraries
- From: rodsmith@xxxxxxxxxxxxxxxxxxxx (Rod Smith)
- Date: Wed, 22 Mar 2006 00:54:32 -0000
Hi,
I'm looking for some advice on video libraries. I'm in the process of
writing a Linux library for a colleague of mine. This library is intended
to run specialized cognitive psychology experiments, which involve the
presentation of visual stimuli and the collection of responses via
specialized input hardware. Part of what the library must do is to handle
the video display, and the main requirement on that score is timing
precision. I must be able to prepare a display (which could be
pre-generated and stored as a TIFF or other graphics file) and switch the
video display over to it instantly -- or as near to instantly as the video
hardware allows, meaning switching at the point of the vertical blank in
the video display cycle. I must also know when that vertical blank occurs
so as to be able to start a timer to get precise human reaction time data.
In all of this, the order of precision is on the millisecond level, which
is pretty sloppy by the standards of some sorts of data collection and
industrial tools, but far more precise than I could get with, say, a C++
"cout" or C "printf()".
Anyhow, I'm considering four libraries, at least three of which seem, upon
initial investigation, to support the necessary vertical blank timing
interfaces:
- SVGAlib
- DirectFB
- SDL
- OpenGL
OpenGL is definitely overkill, but I know of at least one other
psychological experiment-running program that uses it, so I'm pretty sure
it's got the features I'd need. The SVGAlib and DirectFB documention both
mention the necessary vertical blank synchronization routines, but I don't
know in practice if they'd work properly for my needs. I've just started
looking at SDL on the advice of a friend of mine, but I don't yet know if
it's even got the necessary vertical blank synchronization.
I don't need anything that's very fancy in terms of, say, 3D graphics or
dynamic displays. Simply presenting a static image is fine. Ideally, I'd
like to be able to support a wide variety of graphics modes and have a
good selection of video cards that are compatible. Simplicity of coding
from C++ is desirable.
So, any suggestions on what might work well for me?
--
Rod Smith, rodsmith@xxxxxxxxxxxxx
http://www.rodsbooks.com
Author of books on Linux, FreeBSD, and networking
.
- Follow-Ups:
- Re: Advice on video libraries
- From: Jan Panteltje
- Re: Advice on video libraries
- Prev by Date: Re: weird behavior with stat and file sizes
- Next by Date: Re: Is stork a troll? (was Re: Trolltech QT license question)
- Previous by thread: weird behavior with stat and file sizes
- Next by thread: Re: Advice on video libraries
- Index(es):
Relevant Pages
|