Orinj version 4.0.0
Wave files used in recording and playback
Orinj can use:
- Microsoft PCM (uncompressed) wave files (wave files with compression code 1), in which data is stored with 8-bit unsigned integers, 16-bit signed integers, or 24-bit signed integers.
- Microsoft IEEE float wave files (wave files with compression code 3) and data stored in 32-bit floating point values.
Note that both file types contain uncompressed digital sampled audio data. In both file types, the values of the analog sound signal are taken (sampled) at uniform intervals and the amplitude of the signal at each interval is recorded with numbers that use the same representation. That is, technically, both types are PCM files per the definition of PCM on this site.
- The rate at which the signal is sampled (the number of times the signal is sampled per unit of time) is the sampling rate. The larger the sampling rate, the more precise the recording of the signal.
- The representation of the numbers used to record the value at each sample is the sampling resolution. Usually, the sampling resolution is determined by the number of bits in used in the computer representation of the recorded numbers (for example, "16-bit"). With more bits, the recorded numbers can represent larger magnitudes. The larger the sampling resolution, the larger the dynamic range of the recorded signal.
Sound quality and dynamic range improve as sampling rates and sampling resolutions increase, but this happens at the expense of speed and disk space.
A standard music CD, for example, uses the sampling rate 44.1KHz and the sampling resolution 16 bits. These are usually good enough for most popular music and will do well in representing the frequencies and amplitude ranges that most people can actually hear.
The typical sampling rates used today are 44.1 KHz and 96 KHz. Orinj can record and play files with any of the two compression codes above also at 8 KHz, 11 KHz, 16 KHz, 22 KHz, 32 KHz, 48 KHz, 55.1 KHz, 64 KHz, 66.2 KHz, 77.2 KHz, 80 KHz, 88.2 KHz, and 99.2 KHz. The sampling resolutions noted above – 8, 16, 24, and 32 bits – are supported for all sampling rates.
The sampling rates and sampling resolutions that are actually available in Orinj also depend on the audio devices (i.e., soundcards) on each computer. Some soundcards will not support large sampling rates and resolutions.
Wave samples in the loop building view
The wave files used in the Orinj loop building view are PCM waves (compression code 1), recorded with 16-bit signed data at 44.1 KHz.
Other wave files
Orinj may be able to open other wave files, such as AIF, AU, A-law, and U-law wave files. Orinj will convert these files to wave PCM files and will use these newly created wave PCM files instead. The original files will not be changed.
In general, wave files have been in use for a while and there currently exists a large number of wave file formats. Wave formats usually differ in two main aspects: how and where audio data is stored and what other data is allowed in the file. Some files, for example, are compressed (usually with loss in audio quality). Some files contain other data in addition to audio data, such as the author's name, the title of the file, and the copyright owner. It is always possible to stumble upon a wave file that will not be recognized by Orinj.
MIDI files (files with extension ".mid"), rather than containing sampled audio data, contain actual notes, instruments, and controllers. Similarly to wave files, MIDI files follow standard formats. While the MIDI standard defines the notes and instruments, it does not define how these will sound on different devices. This choice is left to the manufacturer of the device. This means that one and the same MIDI file may sound differently on different soundcards.
Orinj is designed so that any MIDI file will play on the computer's soundcard provided that the sound card can handle the file. However, when modifying and creating files, Orinj treats all MIDI files as type 1 MIDI files. This means that one file can contain multiple tracks, but that all tracks would be considered a part of the same MIDI sequence and will be played together. Orinj does not support the full General MIDI standard (see General MIDI 1 and General MIDI 2). Orinj supports the standard General MIDI 1 instruments, including percussion instruments, and some of the controllers (volume, pan, pitch shift, key pressure, channel pressure).
Downloadable Sounds (DLS) files are used by MIDI synthesizers. These files contain wave samples and directions for MIDI synthesizers that state which wave sample should be played when the synthesizer must play a specific note on a specific instrument and how this wave sample should be played.
Orinj is not a synthesizer in the sense that it does not use wave data to play MIDI files during real time playback. Instead, Orinj relies on the internal system synthesizers to play MIDI files and simply relates MIDI messages to these synthesizers. However, starting with version 4.0.0, Orinj includes functionality to convert MIDI files into wave files (not in real time). Orinj relies on DLS files to do so.
The functionality in Orinj that converts MIDI files to wave files is still experimental. Orinj does not support all instructions contained in a DLS file for the synthesis of sound. For example, while Orinj uses the amplitude envelope information in DLS files (e.g., how quickly the amplitude of a note should increase and decay), Orinj does not use any low-frequency oscillation information in DLS files (e.g., what the slight variations in the note pitch should be over time).
Orinj does not yet support SoundFont files. The purpose of SoundFont files is the same as that of DLS files. The SoundFont file format is similar to the DLS format, but not the same.
The Orinj session files and loop files are specific to Orinj and are not files with a common audio format.