Changes

Updates supported codecs
Line 19: Line 19:  
By double tapping the screen, markers can be modified. This includes setting the crop and loop markers to the position tapped and adding and removing cue point markers. Cue point markers can be used to identify points of interest in the file and __playhead position can be shifted between these points with the "play cue" controller (not yet implemented)__. These markers can be selected with the "cue point" control and moved with the "cue pos" control or dragged on a touchscreen.
 
By double tapping the screen, markers can be modified. This includes setting the crop and loop markers to the position tapped and adding and removing cue point markers. Cue point markers can be used to identify points of interest in the file and __playhead position can be shifted between these points with the "play cue" controller (not yet implemented)__. These markers can be selected with the "cue point" control and moved with the "cue pos" control or dragged on a touchscreen.
   −
Playback speed and pitch can be adjusted separately and there is also a ''varispeed'' control which adjusts playback speed and pitch like a tape machine.
+
Playback speed and pitch can be adjusted separately and there is also a ''varispeed'' control which adjusts playback speed and pitch like a tape machine. Varispeed can be set zero to pause playback and to a negative value to play backwards. This can be used to ''scrub'' the audio.
 
  −
'''''Not yet implemented:''' A control allows the audio to be played forwards and backwards at the speed of the control to give a scrub or record scratch effect. (Maybe varispeed, reverse and scrub use the same control?)''
      
These controls allows manipulation of the playback and most can be used in other modes described below.
 
These controls allows manipulation of the playback and most can be used in other modes described below.
    
=== MIDI Sample Player ===
 
=== MIDI Sample Player ===
Audio Player will act as a MIDI controlled sample player. A MIDI note-on will start playback which will continue until MIDI note-off is received. The root note is middle C4 (MIDI note 60). Other notes will playback at the associated pitch change, e.g. C5 (MIDI note 72) will play at double pitch. Playback speed remains constant, i.e. the duration would be the same, only the pitch shifted. MIDI sustain pedal will sustain playback after the key is released. This controls the "sustain pedal" control that can also be manually set to sustain playback. MIDI Pitchbend will change the pitch by up to +/- 2 semitones by default. This range can be adjusted with the "bend range" control up to +/- 24 semitones (2 octaves) with a minimum value of 0 (pitchbend disabled).
+
Audio Player will act as a MIDI controlled sample player. A MIDI note-on will start playback which will continue until MIDI note-off is received. The default root note is middle C4 (MIDI note 60) but this can be changed. Other notes will playback at the associated pitch change, e.g. C5 (MIDI note 72) will play at double pitch. Playback speed remains constant, i.e. the duration would be the same, only the pitch shifted. MIDI sustain pedal will sustain playback after the key is released. This controls the "sustain pedal" control that can also be manually set to sustain playback. MIDI Pitchbend will change the pitch by up to +/- 2 semitones by default. This range can be adjusted with the "bend range" control up to +/- 24 semitones (2 octaves) with a minimum value of 0 (pitchbend disabled).
    
There is an ADSR amplitude envelope that affects MIDI note-on/off triggered playback. A non-zero release time will cause playback to continue after note-off.
 
There is an ADSR amplitude envelope that affects MIDI note-on/off triggered playback. A non-zero release time will cause playback to continue after note-off.
Line 37: Line 35:  
=== Splicer ===
 
=== Splicer ===
   −
As described above, it is possible to add cue point markers. If there are any cue point markers defined then MIDI playback behaviour changes. Instead of MIDI notes playing back at different pitch, the segments of audio between the markers are treated as separate notes. Middle C4 (MIDI note 60) will play the first segment, C#4 the second segment, etc. Playback is monophonic, i.e. only one segment will play at a time. Each segment responds with the (global) ADSR amplitude envelope. Other pitch adjustments will still operate, e.g. pitchbend, varispeed, etc.
+
As described above, it is possible to add cue point markers. If there are any cue point markers defined then MIDI playback behaviour changes. Instead of MIDI notes playing back at different pitch, the segments of audio between the markers are treated as separate notes. The ''root note'' will play the first segment, C#4 the second segment, etc. Playback is monophonic, i.e. only one segment will play at a time. Each segment responds with the (global) ADSR amplitude envelope. Other pitch adjustments will still operate, e.g. pitchbend, varispeed, etc.
    
=== Files ===
 
=== Files ===
   −
Audio Player can load and save files using Zynthian's ''presets'' mechanism. Files are stored in the ''capture'' directory on the internal storage and on any USB attached storage. These different volumes appear as ''Banks'' in the presets mechanism. The following file formats can be loaded:
+
Audio Player can load and save files using Zynthian's ''presets'' mechanism. Files are stored in the ''capture'' directory on the internal storage and on any USB attached storage. These different volumes appear as ''Banks'' in the presets mechanism. The following file formats (CODECS) can be loaded:
   −
* WAV
+
* WAV (all bit depths)
 
* FLAC
 
* FLAC
* OGG/VORBIS
+
* OGG (/VORBIS)
* MP3
+
* MP3 (MPEG I/II, layer 3)
 
* AAC
 
* AAC
 +
* AIFF
 +
* AIFC
 +
* AU
 +
* CAF
 +
* VOX
 +
* OPUS
 +
 +
Note: The CODEC appreviations listed above are used as the filename extension when searching for audio files.
   −
(There are actually many more file formats supported but these have been tested.) Any samplerate can be loaded and the audio is converted to Zynthian's native samplerate. Files are always saved as 32-bit float WAV at Zynthian's naitive samplerate.
+
Any samplerate can be loaded and the audio is converted to Zynthian's native samplerate. Files are always saved as 32-bit float WAV at Zynthian's naitive samplerate.
    
Zynthian reads and writes various metadata including:
 
Zynthian reads and writes various metadata including:
334

edits