A brain-computer interface (BCI) is a communication system that translates brain activity into commands for a computer or other devices. In other words, a BCI allows users to act on their environment by using only brain activity, without using peripheral nerves and muscles. The major goal of BCI research is to develop systems that allow disabled users to communicate with other persons, to control artificial limbs, or to control their environment. An alternative application area for brain-computer interfaces (BCIs) lies in the field of multimedia communication. To develop systems for usage in the field of assistive technology or multimedia communication, many aspects of BCI systems are currently being investigated. Research areas include evaluation of invasive and noninvasive technologies to measure brain activity, evaluation of control signals (i.e. patterns of brain activity that can be used for communication), development of algorithms for translation of brain signals into computer commands, and the development of new BCI applications. In this paper we give an introduction to some of the aspects of BCI research mentioned above, present a concrete example of a BCI system, and highlight recent developments and open problems.