/ Interface / SoundPlayer

Flexible Layouts . Integrated Docs
ChucK VM Panel . Workspace Panel
Code Editor . Graph Editor . Grid Editor
Live Coding with Strudel
Image Editor . SoundPlayer
Log Panel . Graphical Plots

Wherein we present a simple, integrated sound-sample player.

SoundPlayer displays and plays soundfiles through your OS output sound device. It is a minimalist player with simple controls for viewing and auditioning a soundfile. SoundFiles are used in Graph Editor nodes like SoundBuf and GrainBuf so having an integrated auditioning tool can be very helpful.

SoundPlayer is well suited for managing small (0-90 second) soundfiles that are typical in granular or wavetable synthesis, soundbuffer loopers, sample libraries, etc. You can quickly audition sound files present in your Workspace. Just click on a soundfile to trigger loading it into the SoundPlayer Panel.

SoundPlayer can read a number of common soundfile formats including wav, aif, mp3, ogg. When selecting soundfiles for use in ChucK compositions keep in mind that uncompressed files (wav, aif) are typically consumed by sound synthesis engines. SoundPlayer can write wav files for the selected subregion and so can be used in simple format conversion situations.

SoundPlayer is likely to be unfit for larger sound files or for more complex sample editing tasks. For full-featured sample editing, we heartily recommend Audacity (or its ilk).

Here's an annotated view of a typical sound file loaded into SoundPlayer.

Most of these controls are quite common so we highlight only unusual elements.

YAxis Scale Widget allows you to set the the YMax value. Many audio signals "live" in a range well below the typical maximum of [-1, 1] and choosing your own YMax allows you to "zoom-in" to view small amplitude signals. Note that the value of YMax persists across sessions. This is usually desireable since groups of related soundfiles tend to have similar dynamic ranges. Still, don't be suprised if you click on a file and values are "blown-out" or miniscule. Just modify YMax to be slightly larger than the file's max value as reported in the SoundFile Info area. The YMax Widget is a draggable number which means that you can modify it by:

When moving with mouse drag or whell, can alter the sensitivity by holding Ctrl for fine tuning or Shift for coarse tuning.

The X-Signal Resolution is determined by the width of the SoundPlayer panel. We load and "subsample" the audiofile at the moment of loading. If you need more signal resolution in x, you can resize the soundplayer's width, then trigger a file-reload by re-selecting it in the Workspace.

A Region of Interest, or ROI, can be selected by dragging within the signal view. When a region is active, the player will loop over this region. To dismiss the sub-region, just click and release in the signal area. To create a new .wav file containing the ROI samples just press the export button. If successful, a new file with a clip id, like _clip0 will appear in your workspace adjacent to the audiofile original.

Note that clip-output files will have the same number of audio channels (usually 1 or 2) as the input.

In addition to the Export to .wav button, notice that the details about the ROI are provided in two forms. The first, is in minutes::seconds::fraction and the second is specified in file phase representation. This second form is useful for specifying file positions to SoundBuf and GrainBuf nodes. When visible, these numbers can be selected and copied to the clipboard for later pasting into the phase parameter of a node inspector.

home .. topics .. interface .. reference .. examples .. tipjar