What is baudline?
Mystery Signal
play deck
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.

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. 

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.


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.

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.

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.

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.

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.

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.

The diagram below illustrates the play deck signal flow.

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.

Copyright © 2007 - group - blog - site map