Yoshimi (synthesizer)

Last updated
Yoshimi
Developer(s) Will J. Godfrey, Hermann Voßeler, Kristian Amlie, Jeremy Jongpier, Alan Calvert, Mark McCurry, Harald Hvaal, Nasca Octavian Paul
Initial releaseAugust 6, 2009 (2009-08-06)
Stable release
2.3.3-1 / September 25, 2024;28 days ago (2024-09-25)
Repository
Written inC++
Operating system Linux
Size 8.6Mb
Available inEnglish
Type Synthesizer
License GPL-2.0-or-later [1]
Website yoshimi.sourceforge.net

Yoshimi is an open-source software synthesizer for Linux. [2] [3] [4] It contains three synthesis engines, using additive, subtractive and wavetable synthesis (AddSynth, SubSynth, and PADSynth, respectively). Any single patch can use one or all. A kit mode allows a patch to have up to 16 of engine sets to support multi-layered sounds/drum kits. A complete setup or instance can contain anywhere from one to sixty-four patches.

Contents

All signal generation is done by synthesis, without importing external samples. Yoshimi also has extensive FX capabilities, which can be applied at all levels, ranging from one synth engine to an entire setup. It is also microtonal, and allows for custom scales to be defined.

It was originally based on the 2.4.0 version of ZynAddSubFX. [5] [6] While full compatibility with ZynAddSubFX voice patches (prior to Zyn 3.0) has been maintained, control and the user interface have deliberately diverged considerably.

Sound generation

Yoshimi combines several different methods of audio synthesis in order to create sounds: additive synthesis by the ADDsynth engine, subtractive synthesis by the SUBsynth engine, and an algorithm original to Nasca Octavian Paul used to generate wavetables in the PADsynth engine. [7] PADsynth wavetables can also be exported for use in sample players.

MIDI control

For both JACK and ALSA there is a single input port (although several sources can attach to it at the same time). At startup, Yoshimi can be instructed to choose between the two, and automatically look for a specific source and connect to it. If for some reason JACK or ALSA is not available it will try to connect to the other source. If neither can be found it will still run, giving one the chance to investigate the problem.

There are three classes of multipatch configurations available, 16, 32, and 64 patches. When the 32-patch configuration is enabled one can choose pairs (between the two sets of 16) for realtime control changes (called vector control), and when 64-patch configuration is enabled one can do this in two dimensions, between four sets of patches.

Command Line

As of version 1.3.6, it has been possible to configure numerous features when launched from a terminal window, for example, system settings and bank lists, among others. Since version 1.5.9, it has been possible to edit the instrument patches themselves. With version 1.5.10, there was almost complete access. Since version 2.2.0 every graphical control has a direct command line equivalent. Controls set laid out in context levels than closely match the graphic windows with appropriate help lists.

Audio Out

For audio output, Yoshimi supports both ALSA and JACK back-ends. Similarly to MIDI, users can select one or the other as well as setting which is the default. When ALSA is selected, it is possible for the software to look for a specific sound card. [8] When using ALSA a stereo out pair is available. When using JACK, a stereo out is available plus one pair per active patch, up to 64.

Functionality

Yoshimi can run as an LV2 plugin and is frequently tested on the most common hosts. In stand-alone mode it is also possible to run multiple instances, each with their independent sources and destinations, but sharing essential resources.

Yoshimi also supports vector control via a MIDI two axis joystick, allowing up to four parts to be sounded together with varying mixes, panning etc. all determined in real-time by the joystick position. This can be configured over MIDI, by the command line or (since version 1.4.0) via the graphical interface.

A useful development, especially for live performance contexts, was the ability to swap active channels in order to get an instant sound change while retaining the fading notes of the previous sound. This was developed further in version 1.5.1 as 'Solo' accessed from the mixer panel.

A major development was the implementation of MIDI-learn whereby you can 'teach' Yoshimi to link specific actions to any valid continuous controller. As of version 1.5.1, this includes learning aftertouch and NRPNs.

Individual instruments can be saved to- and loaded from file. There is a Yoshimi-only file format (.xiy) which is a super-set of the standard ZynAddSubFX type (.xiz). Users can save to either or both formats. The new .xiy format includes all the standard settings, but also all elements of 'Controllers' as these have been found to make a dramatic difference to the final sound. Their settings can be quite critical.

The whole state of a Yoshimi session can be saved to file for future recall. In this case all of the settings are saved, including instruments, effects, midi-learn, etc.

Since version 2.0, all windows can be resized independently and their previous sizes and positions are stored. LFOs in the synth engines can now be in sync with the MIDI timecode. [9] Version 2.1.0 expands on this with MIDI sync added to all effects where it is relevant, such as Echo delay time. Version 2.1.2 further refines the code, gives better relability for older MIDI- learn files and adds more details to the user guide.

Version 2.2.0 has a major revision of the PadSynth engine giving more control and far better responsiveness.

With version 2.3.0 there is extensive user modifiable GUI theming capability. Also, all sliders and rotary controls indicate whether they have been moved from their default position. Some significant settings have been changed to high resolution equivalents, while still maintaining backward compatibility.

Version 2.3.1 has some corrections to the microtonal section, and minor additions generally.

In version 2.3.2 there is the (user requested) ability to have separate Left and Right delay times in the Echo effect. There is also considerable code refactoring that improves efficiency without making any unintended changes to sound generation.

Information

As well as a dedicated Yoshimi directory in 'doc' with much background information and The Short Yoshimi Guide as ODF, [10] there is a Yoshimi User Guide directly accessible from the 'Yoshimi' drop-down menu. This is a lightweight HTML document but retains a link to the Advanced Reference Manual PDF. The latter is extremely comprehensive and currently runs to approximately 290 pages. [11]

Support

Support is available from developers and users on the new Yoshimi email list. [12]

See also

Related Research Articles

<span class="mw-page-title-main">Sound card</span> Expansion card that provides input and output of audio signals

A sound card is an internal expansion card that provides input and output of audio signals to and from a computer under the control of computer programs. The term sound card is also applied to external audio interfaces used for professional audio applications.

<span class="mw-page-title-main">Advanced Linux Sound Architecture</span> Software framework

Advanced Linux Sound Architecture (ALSA) is a software framework and part of the Linux kernel that provides an application programming interface (API) for sound card device drivers.

Wavetable synthesis is a sound synthesis technique used to create quasi-periodic waveforms often used in the production of musical tones or notes.

<span class="mw-page-title-main">ZynAddSubFX</span> Software synthesizer

ZynAddSubFX is a free and open-source software synthesizer for Linux, Mac OS X and Microsoft Windows. As of version 3, the completely new user interface is being released under proprietary terms with an open-source-eventually intention while the synthesis engine remains under the original GPL terms.

<span class="mw-page-title-main">Digital audio workstation</span> Electronic device or application software used for recording, editing and producing audio files

A digital audio workstation is an electronic device or application software used for recording, editing and producing audio files. DAWs come in a wide variety of configurations from a single software program on a laptop, to an integrated stand-alone unit, all the way to a highly complex configuration of numerous components controlled by a central computer. Regardless of configuration, modern DAWs have a central interface that allows the user to alter and mix multiple recordings and tracks into a final produced piece.

<span class="mw-page-title-main">Rosegarden</span> Digital audio workstation program for BSD and Linux

Rosegarden is a free software digital audio workstation program developed for Linux with ALSA, JACK and Qt4. It acts as an audio and MIDI sequencer, scorewriter, and musical composition and editing tool. It is intended to be a free alternative to such applications as Cubase.

DirectMusic is a deprecated component of the Microsoft DirectX API that allows music and sound effects to be composed and played and provides flexible interactive control over the way they are played. Architecturally, DirectMusic is a high-level set of objects, built on top of DirectSound, that allow the programmer to play sound and music without needing to get quite as low-level as DirectSound. DirectSound allows for the capture and playback of digital sound samples, whereas DirectMusic works with message-based musical data. Music can be synthesized either in hardware, in the Microsoft GS Wavetable SW Synth, or in a custom synthesizer.

<span class="mw-page-title-main">Novation Digital Music Systems</span> British musical equipment manufacturer

Novation Digital Music Systems Ltd. is a British musical equipment manufacturer, founded in 1992 by Ian Jannaway and Mark Thompson as Novation Electronic Music Systems. Today the company specializes in MIDI controllers with and without keyboards, both analog and virtual analog performance synthesizers, grid-based performance controllers, and audio interfaces. At present, Novation products are primarily manufactured in China.

<span class="mw-page-title-main">Ensoniq ESQ-1</span> Synthesizer

Ensoniq ESQ-1 is a 61-key, velocity sensitive, eight-note polyphonic and multitimbral synthesizer released by Ensoniq in 1985. It was marketed as a "digital wave synthesizer" but was an early Music Workstation. Although its voice generation is typically subtractive in much the same fashion as most analog synthesizers that preceded it, its oscillators are neither voltage nor "digitally controlled", but true digital oscillators, provided by a custom Ensoniq wavetable chip. The signal path includes analog resonant low-pass filters and an analog amplifier.

<span class="mw-page-title-main">MusE</span> Free software MIDI/Audio sequencer

MusE is computer software, a sequencer for Musical Instrument Digital Interface (MIDI) and audio, with recording and editing abilities. It was originally written by Werner Schweer and now is developed by the MusE development team. It is free software released under GPL-2.0-or-later.

<span class="mw-page-title-main">Korg OASYS</span> Workstation synthesizer

The Korg OASYS is a workstation synthesizer released in early 2005, 1 year after the successful Korg Triton Extreme. Unlike the Triton series, the OASYS uses a custom Linux operating system that was designed to be arbitrarily expandable via software updates, with its functionality limited only by the PC-like hardware.

<span class="mw-page-title-main">Waldorf Music</span> German synthesizer company

Waldorf Music is a German synthesizer company. They are best known for the Microwave wavetable synthesizer and Blofeld virtual analogue synthesizer.

<span class="mw-page-title-main">Korg Wavestation</span> Synthesizer

The Korg Wavestation is a vector synthesis synthesizer first produced in the early 1990s and later re-released as a software synthesizer in 2004. Its primary innovation was Wave Sequencing, a method of multi-timbral sound generation in which different PCM waveform data are played successively, resulting in continuously evolving sounds. The Wavestation's "Advanced Vector Synthesis" sound architecture resembled early vector synths such as the Sequential Circuits Prophet VS.

<span class="mw-page-title-main">Sound Blaster 16</span> Sound card by Creative Technology

The Sound Blaster 16 is a series of sound cards by Creative Technology, first released in June 1992 for PCs with an ISA or PCI slot. It was the successor to the Sound Blaster Pro series of sound cards and introduced CD-quality digital audio to the Sound Blaster line. For optional wavetable synthesis, the Sound Blaster 16 also added an expansion-header for add-on MIDI-daughterboards, called a Wave Blaster connector, and a game port for optional connection with external MIDI sound modules.

MIDI Tuning Standard (MTS) is a specification of precise musical pitch agreed to by the MIDI Manufacturers Association in the MIDI protocol. MTS allows for both a bulk tuning dump message, giving a tuning for each of 128 notes, and a tuning message for individual notes as they are played.

<span class="mw-page-title-main">LMMS</span> Free software digital audio workstation

LMMS is a digital audio workstation application program. It allows music to be produced by arranging samples, synthesizing sounds, entering notes via computer keyboard or mouse or by playing on a MIDI keyboard, and combining the features of trackers and sequencers. It is free and open source software, written in Qt and released under GPL-2.0-or-later.

<span class="mw-page-title-main">Ubuntu Studio</span> Derivative of the Ubuntu operating system

Ubuntu Studio is a recognized flavor of the Ubuntu Linux distribution, which is geared to general multimedia production. The original version, based on Ubuntu 7.04, was released on 10 May 2007.

WildMIDI is a free open-source software synthesizer which converts MIDI note data into an audio signal using GUS sound patches without need for a GUS patch-compatible soundcard. WildMIDI, whose aim is to be as small as possible and easily portable, started in December 2001, can act as a virtual MIDI device, capable of receiving MIDI data from any program and transforming it into audio on-the-fly. It is the standard MIDI renderer for the GStreamer framework.

References

  1. Yoshimi license
  2. "Yoshimi, Software synthesizer for Linux" . Retrieved 2023-08-29.
  3. "Yoshimi" . Retrieved 2023-09-14.
  4. "Yoshimi – MIDI software synthesizer". LinuxLinks. Retrieved 14 September 2023.
  5. "Yoshimi - History".
  6. "Linux Audio Users Mailing List Archive: August 2009 thread where Alan Calvert describes his initial patches to ZynAddSubFX and mentions the name 'Yoshimi'".
  7. "PADsynth algorithm".
  8. "Yoshimi User Manual - Settings".
  9. "Yoshimi/Yoshimi". GitHub . 27 October 2021.
  10. "The Short Yoshimi Guide" . Retrieved 2023-08-29.
  11. "Yoshimi Advanced Reference Manual" (PDF). Retrieved 2023-08-29.
  12. "FreeLists / Yoshimi Soft-Synth".