This is the command control console for
playing audio. It has multiple banks for looping samples, all the
controls of a typical CD-panel-like audio file player, plus a number of
sophisticated real-time DSP waveform special FX. Baudline can even play
back audio without this window; the key sequence Alt+P is play and
<pause> is the same as the stop button. However, for the full
featured effect of baudline playback, you will want to use this window.
You may even want to use this window when you are recording or paused.
F# selector banks
Each bank defines a user-selected
section of audio data. A highlighted function key button indicates that
the bank is currently selected if in play or pause mode, or that the bank
is in progress of being defined while paused or recording. This may
sound complicated but it is intuitive when you use it. The twelve
selector banks (1 - 12) also map to the function keys at the top of the
standard 104 PC keyboard when pressed in the Spectrogram or the
Waveform windows.
Position
This is the time position HH:MM:SS.mmm
(hour, minutes, seconds, milliseconds) of the cursor within the currently
selected bank. A value of ~~:~~:~~.~~~ will be shown if the cursor is not
pointed in the selected bank or if the bank is empty. Time zero is at the
top of the selection and a time equal to the Duration of the bank
selection is displayed when at the bottom of the selection. If the
signal is playing, the Position tracks the audio output.
Duration
This is like Position but
the duration of the current selection bank is displayed. If nothing
is selected then a value of ~~:~~:~~.~~~ is displayed. If using the
selector bank while recording, the duration displays the length of
the current bank.
random access slider
Just like an audio player, the random access slider
tracks the motion and position that is currently playing, which means its
position is also in sync with the Position numeric field. Note
that you can single click the first mouse button in the spectrogram or waveform
window and the Position will jump to that point and continue playing.
Navigation buttons
- fast reverse
This button forces the play direction
to be the reverse direction and each button press doubles the playback speed
up to a maximum of -16X. Note that the spectro window hotkey shortcut for
the fast and normal reverse buttons is the comma (,) and the period
(.) keys if the direction is currently reverse.
- reverse
This button forces the play direction
to be the reverse direction. It also halves the playback speed if
a play is currently in progress. The minimum playback speed is -1/128th
normal speed.
- record
This button puts baudline into
the record mode. This is the same as choosing record in the main popup
menu or hitting the <pause> key. You can't directly go from
record mode to play mode without first hitting stop.
- slash /
This button flips the play direction
from forward to reverse and from reverse to forward. Note that in
the spectro windows the hotkey shortcut for this is the / key.
- stop
This button stops playback or record. Choosing the pause
button in the main popup menu or hitting the <pause> has the same effect.
- play
This button starts playback of
selected section or if no section is selected the entire file is defaulted
to be the selection. This is the same as choosing play selection from
the main->output popup menu and the same as hitting the Alt+P hotkey
shortcut. Like reverse, hitting this button while playing will halve
the playback speed down to 1/128th of normal speed. Also hitting this
button will force the play direction into the forward direction.
- fast play
This button forces the play direction
to be the forward direction and each button press doubles the playback speed
up to a maximum of 16X normal speed. This button is the mirror of
fast reverse. Note that the hotkey shortcut for fast and normal
reverse is the comma (,) and the period (.) keys if the direction is
currently reverse.
- file open
Like an eject button, this button pops up the
open file window.
speed
This slider controls and/or tracks any playback speed changes. The
playback speed ranges from 1/128X ... 1X ... 16X. DSP filtering is
accomplished by polyphase sample rate conversion which avoids aliasing effects.
scale
Pitch Scaling is sometimes improperly referred to as Pitch Shifting which is
described below. Pitch Scaling transposes the pitch while retaining the
correct harmonic relationships. Think of this as multiplying the
frequencies by the X scale factor. If you are working with music or voice
then Pitch Scaling is most likely what you want.
shift
Pitch Shifting, also known as heterodyning or up-converting, should not be
confused with Pitch Scaling. Shifting the pitch takes the entire
spectrum and either moves it up or down so many Hz in frequency. If the
LPF and the HPF are activated then a chunk of spectrum is bounded. Since
the pitch shifting logic comes before the low and high pass filters, a piece of
spectrum can be down-converted and isolated without any aliasing, all
digitally, with incredibly steep skirts and very low ripple.
center arrow
Clicking this button resets the speed, scale, and
shift sliders all to their centered normal positions.
pan mixing
This box is a two dimensional matrix
mixer that can position a sound source anywhere in the front LCR line or
in the surround channel. Clicking the LCRS buttons will immediately
jump the positioning cursor to the Left, Center, Right, or Surround channel
respectively. The arrows keys move the channel's position accordingly and
the L, C, R, and S keys can be used as a shortcut to jump to a specific
panned location.
gain
This single slider adjusts the output gain controls in the
mixer on the audio card. If you desire individual left and right gain
controls, then make your mixer adjustments in the
output devices window. The red
clip warning indicates that the
digital gain boost is causing waveform
clipping and distortion may be audible.
popdown arrow
Clicking the side arrow pops down the hidden options box below. Look at
this image
to see the play deck top section and options box combined.
loop
When a playing section comes to the end or the start if
the direction is reversed the playback will loop and begin playing
again. This will go on forever unless manually stopped.
transition point click damping
This option performs a special transition damping algorithm
that will smooth out discontinuities and reduce the volume of clicks when
abrupt control changes or random playback access is done. This is great
for normal waveform use but if you are using baudline to play back digital non
waveform data then this option will do bad little things to the transition
points. Baudline was never designed to play digital non waveform data
like AC3 but it can, and if you do, make sure all the DSP special filtering
options are off and all pitch related sliders are in their unity centered
positions.
phono needle
Grab a time axis scroll bar, the
random access sliders, or just press and hold down the first mouse button
and shake it and you'll get DJ scratching in a manner that accurately simulates
a phono needle and analog turntable.
equalization
This convolution option enables the application of the spectral curve from the
equalization window to the audio
playback stream. What you see in the spectrogram is what you
hear (WYSIWYH). This option can be used for frequency correction,
noise reduction, and spectral shaping. Equalization convolution,
depending on the specific details of the spectral curve, can dramatically
reduce output volume. It may be necessary to use +24 dB or more of
digital gain boost to correct for this gain
reduction.
50 Hz and 60 Hz notch filters
These enable a 50 or 60 Hz notch filter that will cut that frequency by 24 dB
with very little neighbor band leakage.
keep pitch constant, lock speed:scale ratio to 1
This feature changes the playback speed or pitch scaling and keeps the pitch
the same. This is done by locking the speed:scale ratio to 1. It
sounds complicated, but it's not. Increase the playback speed, and the
pitch scaling will automatically decrease since the two controls are
locked. Move one slider and they both move. Try it. It is
cool!
low pass filter
This enables a low pass filter (LPF) at the
frequency determined by the slider. Low pass means everything below the
chosen frequency passes through, while higher frequencies are rejected.
Filtering is accomplished by spectral convolution.
high pass filter
This enables a high pass filter (HPF) at the
frequency determined by the slider. High pass means
everything above the chosen frequency passes through while lower frequencies
are rejected. Careful choice of the LPF and HPF frequencies together
can create a band pass filter situation but flipping the frequencies will
not create a band stop filter; think about it - the combination of the
two filters just don't add up that way.
mono mix down
Instead of having two cursors for
stereo channels, this feature performs a mono mix down which will
combine the stereo channels into one mono channel for mixing purposes.
surround matrix mixing
This enables or disables the pan mixing matrix surround
box. Turning the pan mixing box off does hard panning that maps
to audio channels in the output devices window. Hard panning is
useful if you are concerned about signal degradation loss done in the matrix
mixing process. The loss happens to be half a bit of resolution, which
is equal to 3 dB. This is not noticeable because the losses and noise
within the audio card are higher, but if you have a really high end audio card
and you are an audio purist, then you will want to turn this off.
Digital Gain Boost
Useful for quiet signals, this option digitally increases the signal level
from -24 dB (attenuation) to zero dB (no change) to +90 dB (maximum
saturation) in 6 dB increments. Note that this does not change the
quantization scaling. The output waveform is merely increased in
gain. When the new samples exceed the -90 dBm and +90 dBm rails the
waveform is clamped. Note that clipping is a form of distortion and it
will create audible harmonics. Watch for the red clip indicator next to
the gain slider in the play deck. If you are getting an unacceptable
amount of clipping then turn down the digital gain boost. Attentuating
with a negative dB setting would be useful when mixing multiple channels
together, testing the different bits of a DAC, or for reducing the gain to an
output device that lacks a mixer control such many SPDIF outputs.
Output Device
When set to the default automatic option baudline will map enough
output devices starting at /dev/audio such that all the input channels will
have their own output playback channels. If a 4 channel file is loaded
or recorded and two or more audio cards are present then all 4 channels will be
mapped for playback on the left and right channels of the first two audio
cards (for example /dev/audio and /dev/audio2). If only one audio card
exists then only stereo channels will be automatically mapped. This
automatic output device option works for up to 9 channels if 5 stereo
audio cards are present. Unfortunately this implementation requires
standard stereo audio cards, it does not yet support the professional
multi-channel cards. The individual output devices (/dev/audio#) are
also available options, choosing them disables the automatic mapping
feature and this can be used to force playback to specific audio device
such /dev/audio2 instead of /dev/audio.
Flow
The diagram below illustrates the play deck signal flow.
Notes
If you are curious as to exactly what a specific control does then experiment
with it. If the audible output produced is not enough to get a feel for
the control, then it is time to use baudline to analyze baudline!
Get a mini loopback cable and attach the sound card output to the sound card
input. Your driver needs to be full duplex for this to work, and then
you can run one instance of baudline in the play mode and another in the
record mode at the same or higher sampling rate. Instead of using a
physical cable you could use stdout piped to
stdin. In both cases you will be able
to analyze what the playback effect is doing, in real-time.
|