|
GuineaPig - Overview
- guinea pig n
- 1: a small stout-bodied short-eared nearly tailless
domesticated rodent (Cavia cobaya) often kept as
a pet and widely used in biological research
2: a subject of scientific research, experimentation, or
testing
- Webster
|
The goal of the GuineaPig project is to build a
system that makes easier to create psychoacoustical listening test by
taking care of some tedious routine tasks like creation of
playlists. System will also automate the running of these tests.
Traditional procedure when making listening tests is such that the
tester edits and records the whole test on a DAT-tape that is then
played to the test subject. The test subjects listen to the test and
mark their answers on paper. The tester then has to enter the answers
manually to a computer to analyze them. GuineaPig
eliminates the need to edit the whole test into a tape beforehand and
removes the manual entering of the results. Also the test doesn't
need to be the same for all subjects. The order, in which the
individual test items consisting of sound samples are presented to the
subject, can be very easily arranged to be different for each session.
The first phase is the
test creation where
the tester selects the test type, used sound samples and
other test parameters. As the result configuration files are
generated that contain the parameters needed in the test.
The test is then run for
each test subject and results are saved.
After the tests have been performed the results can be studied,
processed and
analyzed with some statistical programs.
Test types
A
variety of test types have been
implemented including:
- A/B: Test in which the test subject
chooses one out of two samples played to him/her.
- A/B/X: Test in which the sample X is the same
sample as A or B. Subject chooses which one sample X is.
- A/B/C: Test in which A is the reference sample
and the subject chooses how much samples B and C (one of which is
the same sample as A) resemble the reference sample A.
(Actually this test is referred as a Ref/A/B-test).
- A/B Scale: An A/B test in which subject gives
an answer for both samples on a scale specified by the
test creator.
- A/B Scale, Fixed Reference: A test in which
subject gives an answer how sample compares to a reference.
- A/B Scale, Hidden Reference: A test in which
subject gives an answer for both samples on a scale specified by
the test creator. One of the samples A or B is the hidden
reference.
- Single Stimulus: A Test in which a single
stimulus signal is played and then graded.
- TAFC (Two alternatives forced choice): Test
in which two samples are played altering some parameter, until
subject can no longer hear difference between the samples.
A flexible Generic Test
class is used as base for all tests. Most tests listed above can be
implemented with the generic test only.
Testing features
Many options and parameters allow customizing the tests. Most
features are available for all tests.
- Multiple questions:
All tests can include any number of questions. GP contains
ready-made question components for giving grades,
multiple-choices, and rank-order.
Also additional question components can be added.
- Free or fixed sequence: The sample sequence can be
fixed (freely
configurable with multiple samples and pauses between samples)
or free where the subject selects in which order samples are
played.
- Time limit for answering:
A timeout can be set to limit the time the subject has for
giving the answers for a test item. Without a timeout the
subject can have as much time as he needs to decide the answers.
With a timeout, the test goes to the next item when the time
ends.
- Parallel switching:
Normally when the subject switches to another sample, the
currently playing sample stops and the another starts from
beginning. In parallel mode the switching to another sample is
done by cross-fading to the other sample and does not just jump to
the start to the beginning to the sample. Useful in test where
long samples are compared. Parallel switching is only usable
for free sequence tests.
- Playlists are used to define the order of the
test items that are presented. Different playlists may be
defined for different sessions.
Audio output features
The sound player handles the audio output of the
GuineaPig system. It reads the sample files, mixes
them together and sends the audio data to output devices. The player
is written in C. A higher level
Java
module is provided for using the player.
The Sound Player uses the SGI Audio Library and the SGI
Audio File Library, therefore all supported devices and sound
file formats supported by them are available in GP. The audio devices
includes the normal analog stereo outputs on most systems as well as
the default or additional digital outputs up to eight digital channels
on one device (ADAT). The supported audio file formats include:
AIFF/AIFF-C, Next/Sun, Wave, MPEG1, raw data, and many more.
Some features of the sound player:
- Multichannel: Number of output channels is limited
only by output devices of the machine. The sound player can use
multiple audio devices in parallel, emulating wider output port
than a single device. For example, when three ADAT cards are
used, 24-channel output is possible. Multiple devices are
syncronized automatically.
- Virtual players allow partitioning the output
of GP into smaller sections. For example, single ADAT output
could be used to implement four stereo players.
- Many audio file formats: All audio file formats
supported by SGI's audio file library including:
AIFF/AIFC, WAV, AU, MPEG-1 layers I/II and others with multiple
sample rates and sample widths.
- Sampling rates: depending on the audio device,
at least the most common rates from 8kHz to 48kHz are supported
(device may limit the possible choices. For example, digital
outputs generally support only 32/44.1/48 kHz).
- 24 bit audio: SGI audio libraries can support
up to 24 bits per sample. GP's sound player uses floating point
calculation for rendering audio output.
- Analog and digital outputs: Most SGI
workstations have analog outputs. Some also have digital
outputs by default (Octane, some Origin and Onyx2 servers) or
with an digital audio option (on O2 with the PCI
Professional Audio Option). Digital output interfaces
include ADAT/SPDIF/AES3, optical/RCA/BNC connectors. Analog
output generally are 16bit, digital upto 24 bit (ADAT/AES3).
- Sample mixing: multiple samples can be mixed to
the output with each with its own volume levels and faders.
- Sample synchronization: samples can be
synchronized with sample frame accuracy.
- Faders: each sample has its own fader that does
real fades using linear or dB linear fading. Also supports
cross-fading between samples.
- Volumes: each sample sample has its on volume
controls (with fader, see above). Also there is a calibration
level for each sample that can be used to calibrate a set of
samples used in a test. Player's output also have a calibration
or master volume level control than can be used for setting the
MCL level of a test session of general master output level.
- Java module for controlling sound player: the
sound player is a separate program. A easy object-oriented java
module is provided for controlling the player.
See also:
SGI
Audio Features.
Requirements
The system runs on and is designed only for Silicon Graphics'
workstations with IRIX 6.3 or greater. The GP's sound player engine
uses the newer SGI's Audio Library for IRIX 6.3 and up and
POSIX threads (pthreads). In future versions, IRIX 6.5 will be
required.
Most of the system is written in Java. Java 1.1 is required and it is
freely available for
download
from SGI. In future, Java 1.2 (Java2) will be used.
Additional information
More detailed description of the GuineaPig2 system can be found in
Jussi Hynninen's master's thesis:
Jussi Hynninen,
A software-based system for listening tests,
2001
The GuineaPig web-page is located at:
www.acoustics.hut.fi/projects/GuineaPig2/
The page contains the AES 106th GuineaPig paper and
presentation slides presented at the
AES 106th Convention,
May 8-11 1999, Munich, Germany:
- GuineaPig paper in AES 106th:
[ gzipped PS (674K) /
PDF (1103K) ]
- AES Presentation slides on 25/May/1999:
[ gzipped PS (256K) /
PDF (352K) ]
Slides shown at the paper presentation at 106th AES Convention.
Includes extra slides that were excluded from the presentation
to fit to the time allowed.
·
GuineaPig
·
Last modified: Thu May 2 13:14:24 2002