Package uk.ac.qmul.eecs.depic.daw
See: Description
-
Interface Summary Interface Description Automation An automation in a DAW.Parameter A parameter of the audio computationParameter.Type ParametersControl The control class of all parameters.Sample An Audio SampleSonification A Sonification object.SoundEngineFactory Interface implemented by the sound engine package.SoundWave A sound wave, the usual artifact used to represent audio visuallySoundWave.TransportControl SoundWaveEditor An editor for the sound wave with all the usual edit actions.SoundWaveListener Observer of a Sound WaveWave An abstract wave -
Class Summary Class Description AudioLoader A swing worker that loads an audio file in a separate thread.AudioLoader.ReturnObject An object returned by the AudioLoader.AutomationValue This class represent a value in an Automation.Chunk A Chunk is a set of contiguous audio samples.Clip A Clip is a piece of audio Sample.ClipList A list of ClipsDaw Entry point for the programDbWave A Wave that displays chucks in DB scaleSelection A selection on integer valuesSound a sound played by the SonificationSoundWaveEvent An event observed by SoundWaveListenersWavePeaks a list of list of chunks corresponding to peaks in the sound wave. -
Enum Summary Enum Description Direction SoundType Type of sounds that are triggered by the sonification in response to events
Package uk.ac.qmul.eecs.depic.daw Description
This package contains the core data of the program. The data model as in the Model-View-Control paradigm
It abstracts over the sound engine, that is it provides an abstract interface over the specific sound engine
so that it can be reused with other audio systems. The SoundEnfingeFactory class is the entry point for a
any sound engine package. The entry point for the sound engine is Daw.getSoundEngineFactory()
so you'd need to modify that call to make your own sound engine.
As per the faced design pattern all the functionality of a sound engine package would be attained by
providing an implementation of the SoundEngineFactory
factory interface and of, the interface types
returned by its methods (SoundWave, Parameter, Sonification and Sample) and by SoundWave's methods.
A default sound engine is provided using the Beads library (see uk.ac.qmul.eecs.depic.daw.beads package).
USAGE of the Cross-Modal DAW prototype program
Open a sound file: only mono and short wav files are supported. The wave is placed where the cursor is at the moment of opening.
edit commands: cut copy and paste can be done by the usual key strokes or from the Edit menu. The cut and copy commands take the part of wave in the audio track selection and paste pastes it where the cursor is.
selection: You make a selection by dragging your mouse on an audio track or using left and right arrow keys to move the cursor while holding shift. F2 and F3 keys move the cursor at the edges of the selection.
View menu: use the items in the "View" menu to change the view of the wave. "Generate Peaks Curve" creates a graph with the
peak level overlaid on the audio track. If you press right-click on the audio track when the peak curve is visible you
can enable the sonification of the peak level graph. "Listen to peak level" will play the whole track from the start to the end
together with the sonification.
"Switch listen peak level on/off" enables and disables the active sonification. In the active sonification it is the user who must
scan the track with left/right arrow keys and the sonification plays what's under the cursor. The active sonification
can also be enabled by pressing ctrl+p when the focus is on the audio track ( to focus the audio track tab through all the
components until you reach the audio track)
Track menu: "Cancel selection" removes the audio track selection. "Switch automation" enables the automation graph, for gain and panning, overlaid on the audio track. When the automation is enabled you can access the automation actions by right clicking on the automation graph. This allows you to insert/remove automation points, reset the automation and enable the automation graph sonification that works the same way as the sonification of the peak level graph.
Haptics: "Start haptic device" starts the phantom omni haptic device. Note you need to have the driver installed and the device plugged in. Also you need to have the open haptics toolkit installed. "Activate current view in haptics" (ctrl+h) will create a haptic representation of one of the following: automation, peak level graph, sound wave. Which one depends on what is currently visible: automation overlay, peak level overlay or just the simple wave. To switch to another type of haptics representation, just make it visible and press ctrl+h again.