Tritonus modularization proposal -------------------------------- This document proposes to break up the tritonus.jar file into several pieces. The goal of it is to enhance the maintainability of Tritonus. For instance, on systems that don't have ALSA, it is now possible to just not install tritonus_mixer_alsa and tritonus_midi_alsa. It is no longer required to edit the configuration files in (formerly) tritonus.jar (and rebuild it). The second goal is to ease seperation of parts of Tritonus for use with other implementations of JS. We have already done this with the mp3 decoder. In the future, we will do this for additional converters and the entire MIDI implementation. The preferred solution would be to have the same packaging into jar files for Tritonus itself and for external usage. - tritonus_core: javax.sound.* org.tritonus.core.TInit (formerly: org.tritonus.TInit) org.tritonus.core.TMidiConfig (formerly: org.tritonus.midi.TMidiConfig) org.tritonus.core.TAudioConfig (formerly: org.tritonus.sampled.TAudioConfig) org.tritonus.core.Service (formerly: org.tritonus.util.Service) - tritonus_share.jar: org.tritonus.share.TDebug (formerly: org.tritonus.TDebug) org.tritonus.share.TNotifier (formerly: org.tritonus.TNotifier) org.tritonus.share.ArraySet (formerly: org.tritonus.util.ArraySet) org.tritonus.share.GlobalInfo (formerly: org.tritonus.util.GlobalInfo) org.tritonus.share.TCircularBuffer ?? (only used by AsyncFilteredAIS) (formerly: org.tritonus.util.TCircularBuffer) org.tritonus.share.midi.MidiUtils ?? (only used in AlsaMidiChannel) (formerly: org.tritonus.midi.MidiUtils) org.tritonus.share.midi.TMidiFileFormat ?? (only used by StandardMidiFileReader) (formerly: org.tritonus.midi.file.TMidiFileFormat) org.tritonus.share.midi.TMidiDevice (formerly: org.tritonus.midi.device.TSequencer) org.tritonus.share.midi.TSequencer (formerly: org.tritonus.midi.device.TSequencer) org.tritonus.share.sampled.AudioFileTypes (formerly: org.tritonus.sampled.AudioFileTypes) org.tritonus.share.sampled.AudioFormats (formerly: org.tritonus.sampled.AudioFormats) org.tritonus.share.sampled.AudioUtils (formerly: org.tritonus.sampled.AudioUtils) org.tritonus.share.sampled.Encodings (formerly: org.tritonus.sampled.Encodings) org.tritonus.share.sampled.FloatSampleBuffer (formerly: org.tritonus.sampled.FloatSampleBuffer) org.tritonus.share.sampled.TConversionTool (formerly: org.tritonus.sampled.TConversionTool) org.tritonus.share.sampled.TVolumeUtils ?? (formerly: org.tritonus.sampled.TVolumeUtils) org.tritonus.share.sampled.convert.* (without subdirs) (formerly: org.tritonus.sampled.convert.*) org.tritonus.share.sampled.mixer.* (without subdirs) (formerly: org.tritonus.mixer.file.*) - tritonus_midi_alsa: org.tritonus.midi.device.alsa.* org.tritonus.lowlevel.alsa.ASequencer org.tritonus.lowlevel.alsa.ASequencer0 - tritonus_midi_midishare: org.tritonus.midi.device.midishare.* ?? lowlevel classes ?? (grame.midishare.*) - tritonus_convert_standard: org.tritonus.sampled.convert.standard.* - tritonus_sampled_file_standard: org.tritonus.sampled.file.standard.* - tritonus_mp3: org.tritonus.sampled.convert.mp3.* org.tritonus.sampled.file.mp3.* ?? low-level classes for encoder ?? - tritonus_gsm: org.tritonus.sampled.convert.gsm.* org.tritonus.sampled.file.gsm.* org.tritonus.lowlevel.gsm.* - javalayer: javazoom.jl.decoder.* - tritonus_mixer_alsa: org.tritonus.sampled.mixer.alsa.* org.tritonus.lowlevel.alsa.Alsa org.tritonus.lowlevel.alsa.AlsaCtl org.tritonus.lowlevel.alsa.AlsaPcm - tritonus_mixer_esd: org.tritonus.sampled.mixer.esd.* org.tritonus.lowlevel.esd.* Package structure changes: - many classes go to core or share (see above) - MpegFormatConversionProvider goes to org.tritonus.sampled.convert.mp3 - PCM2PCMConversionProvider, SmartFormatConversionProvider, AlawFormatConversionProvider and UlawFormatConversionProvider go to org.tritonus.sampled.convert.standard - MpegAudioFileReader, MpegEncodings and MpegFileFormatType go to org.tritonus.sampled.file.mp3 - Aiff*, Au* and Wave* go to org.tritonus.sampled.file.standard - org.tritonus.TConfiguration is no longer needed and will be removed. Notes: - javalayer is seperated from tritonus_mp3 for legal reasons.