Zynsampler guide

From ZynthianWiki
Revision as of 17:36, 4 October 2024 by Riban (talk | contribs) (→‎Recording)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

1 Zynsampler

Zynsampler is the built-in audio sampler in zynthian. It can record and playback a single audio recording at a time. Simple non-destructive editing can be performed. Playback can be looped between markers. The sample may be short or very long (hours). Speed or pitch or both (varispeed) may be adjusted. Playback can be triggered by MIDI. MIDI note may adjust playback pitch (not speed) or trigger different slices of the waveform.

There is a graphical widget in the zynsampler contol view which shows the waveform, markers, zoom and position and other information.

If the control view of a zynsampler processor (within a chain) is shown then the transport buttons (if available) control that zynsampler processor's record/play functions, otherwise the transport buttons control the global audio recorder/player.

1.1 Loading a Sample

Samples are stored as audio files in the internal capture directory and on any USB attached storage. Many audio file formats are supported including wav, aac, mp3, ogg, flac. Files are loaded using the standard zynthian preset loading procedure. There are banks for each physical location and a list of presets for each supported audio file.

1.2 Waveform Display

After loading a sample into zynplayer, it will display a graphical representation of the waveform, markers, zoom and position and other information.

Zynsampler can handle multitrack audio. Each pair of channels is presented as a coloured pair of waveforms. You can zoom and move window within the waveform display. At the bottom is a scrollbar which indicates the zoom level (by its marker width) and window position (by its marker position). The marker can be dragged to reposition the window. The waveform may also be dragged horizontally.

Within the scrollbar is an infomation display. By default this shows the duration of the sample. There is a control to adjust the displayed info:

  • None: No info displayed
  • Duration: Total duration of sample
  • Position: Playhead position
  • Ramaining: Remaining time from playhead to end of sample
  • Loop length: Duration of loop
  • Samplerate: Native samplerate of the recording
  • CODEC: CODEC used in the sample file
  • Filename: Name of sample file

1.3 Recording

To start recording audio, press the transport record button. To stop recording, press the transport record button or stop button. If the control view for a zynsampler processor is shown then the recording will loaded into the processor, otherwise a *global recording* is made which is not displayed but available for immediate replay (see below). There is a record control in zynsampler control view that toggles audio recorder.

Note: There is only one audio recorder. Starting the audio recorder from anywhere acts on the same, single recorder.


By default, zynthian records to a fixed 16-bit stereo audio WAV file at zynthian's current samplerate (48000fps by default). There is an option in each chain option, audio output menu to "Record Audio". If any is enabled then zynthian will record a multitrack audio file with a stereo pair of tracks for each enabled chain.

1.4 Playback

To start playing audio, press the transport play button. To pause playback, press the transport play button. To stop playback and reset to start of track, press transport stop button. If the control view for a zynsampler processor is shown then its sample is played, otherwise the *global recording* (most recently recorded audio) is played.

By default, the whole audio file is replayed from the start until the end at which point it stops playback. This behaviour can be modified in various ways.

1.4.1 Looping

There is a control to enable looping. When enabled, playback will play until the loop-end marker then restart from the loop-start marker. There is a control to adjust the position of the loop markers or they can be dragged on a touchscreen or with a mouse.

There are different play / loop modes:

  • one-shot: Plays audio once and stops at end of sample.
  • looping: Plays audio until loop-end marker then continually loops from loop-start marker.
  • play-all: Loops audio whilst key pressed then plays to end when released (see MIDI trigger).
  • toggle: Playback is toggled by MIDI trigger.

1.4.2 Cropping

The start and end of playback may be changed with the in and out crop markers. This is non-destructive, i.e. the audio is not removed, only the greyed out sections are not played. Use the crop controls or drag the crop markers on a touchscreen or with a mouse.

1.4.3 Pitch

There is a pitch control that adjusts the pitch of the audio without changing its speed.

1.4.4 Speed

There is a speed control that adjusts the speed of the audio without changing its pitch.

1.4.5 Varispeed (tape mode)

There is a varispeed control that adjusts both speed and pitch, like varying the speed of a tape machine. This can also be used like a scrub control, allowing both forward and reverse playback.

1.4.6 Position

There is a position control to adjust the position of the playhead. If you move the playhead beyond the edge of the view then the view scrolls to show the next section of audio.

1.4.7 Zoom

There is a zoom control that adjusts the horizontal zoom. At x1, the whole sample / file is shown. The maximum zoom depends on sample duration but will show (close to) sample accurate resolution. For larger files (over 60s), this may not quite get to sample resolution.

Zoom can also be performed on a touchscreen with horizontal pinch gesture.

If zoom is greater than one, there is a window showing part of the waveform. There is a control to adjust the view offset which allows you to see different parts of the waveform whilst zoomed.

There is a control that sets the zoom mode:

  • User: User set zoom and position
  • File: Show whole file
  • Crop: Show the cropped region
  • Loop: Show the loop region

The width of the scrollbar marker changes to indicate the zoom level. It will be full width at x1 and gets smaller at higher zoom levels. The scrollbar can be dragged to move the window of waveform shown.

There is an amp zoom control that adjusts the vertical zoom.

1.4.8 Gain

There is a gain control to adjust the overall playback level. This does not adjust the waveform, just the gain of the player.

1.4.9 Channel routing

Zynsampler has a stereo output but can handle samples of any quantity of channels. There are two controls (left/right track) which allow the selection of what gets played out of each output. The specific channel may be selected or "mixdown" which will mix all the odd tracks (for left output) or the even tracks (for right output).

1.5 MIDI Trigger

A sample may be triggered by MIDI note-on/off events. By default, playing MIDI note 60 (C4) will start playback at normal pitch. Holding the note will continue playback, looping as defined by looping control. Releasing the note will stop playback (or exit loop and play to end if looping mode is play-all). Playing other notes will playback with appropriate pitch shift, e.g. playing MIDI note 61 (C#4) will playback, pitch shifted up one semitone. By default, MIDI CC64 will act as a sustain pedal. This can be changed with normal zynthian MIDI binding / learning. There is a control that sets the base note. Adjusting base note allows another MIDI note to play audio at its default pitch.

1.5.1 Pitchbend

MIDI pitchbend can be applied to dynamically change the pitch. There is a control to adjust the pitchbend range from 0 (pitchbend disabled) to 24 (+/- 24 semitones). Default pitchbend is 2.

1.5.2 Envelope

MIDI triggered playback is affected by an AHDSR envelope with controls for:

  • attack: Time to reach full level (0..20 seconds)
  • hold: Time to hold at full level (0..20 seconds)
  • decay: Time reach sustain level (0..20 seconds)
  • sustain: Sustain level (0..1 x full level)
  • release: Time to reach zero level after note released (0..20 seconds)

1.6 Splicing

There is another MIDI trigger mode called splicing. Each MIDI note (ascending from the base note) plays a splice of the sample. Splices are defined by cue markers. Playing a MIDI note will play from the associated cue marker until the next cue marker. Cue markers can be added/removed from the marker menu (double tap the waveform). They can be selected with the cue controller and moved with the cue pos controller. Like all markers, they can be dragged on a touchscreen.

There is a control to adjust the beats in the sample. This may be used to synchronise the sample with sequencer playback. If the beats has been set to a non-zero value, the marker menu has an option to create that quantity of equally spaced cue markers.