com.sun.media.sound.SF2Layer Java Examples

The following examples show how to use com.sun.media.sound.SF2Layer. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: TestPreciseTimestampRendering.java    From hottub with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #2
Source File: TestPreciseTimestampRendering.java    From jdk8u-dev-jdk with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #3
Source File: TestPreciseTimestampRendering.java    From jdk8u-jdk with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #4
Source File: SF2Soundbank.java    From tuxguitar with GNU Lesser General Public License v2.1 5 votes vote down vote up
public void removeResource(SoundbankResource resource) {
    if (resource instanceof SF2Instrument)
        instruments.remove((SF2Instrument)resource);
    if (resource instanceof SF2Layer)
        layers.remove((SF2Layer)resource);
    if (resource instanceof SF2Sample)
        samples.remove((SF2Sample)resource);
}
 
Example #5
Source File: SF2Soundbank.java    From tuxguitar with GNU Lesser General Public License v2.1 5 votes vote down vote up
public void addResource(SoundbankResource resource) {
    if (resource instanceof SF2Instrument)
        instruments.add((SF2Instrument)resource);
    if (resource instanceof SF2Layer)
        layers.add((SF2Layer)resource);
    if (resource instanceof SF2Sample)
        samples.add((SF2Sample)resource);
}
 
Example #6
Source File: TestPreciseTimestampRendering.java    From jdk8u_jdk with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #7
Source File: TestPreciseTimestampRendering.java    From openjdk-8 with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #8
Source File: TestPreciseTimestampRendering.java    From openjdk-8-source with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #9
Source File: TestPreciseTimestampRendering.java    From jdk8u-jdk with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #10
Source File: TestPreciseTimestampRendering.java    From openjdk-jdk9 with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #11
Source File: TestPreciseTimestampRendering.java    From openjdk-jdk8u-backup with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #12
Source File: TestPreciseTimestampRendering.java    From dragonwell8_jdk with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #13
Source File: TestPreciseTimestampRendering.java    From TencentKona-8 with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #14
Source File: TestPreciseTimestampRendering.java    From jdk8u60 with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #15
Source File: TestPreciseTimestampRendering.java    From openjdk-jdk8u with GNU General Public License v2.0 5 votes vote down vote up
public static SF2Soundbank createTestSoundbank() {
    // Create impulse instrument
    // used to measure timing of note-on playback
    SF2Soundbank soundbank = new SF2Soundbank();
    float[] data = new float[100];
    Arrays.fill(data, 0);
    data[0] = 1.0f;
    byte[] bdata = new byte[data.length * format.getFrameSize()];
    AudioFloatConverter.getConverter(format).toByteArray(data, bdata);

    SF2Sample sample = new SF2Sample(soundbank);
    sample.setName("Test Sample");
    sample.setData(bdata);
    sample.setSampleRate((long) format.getSampleRate());
    sample.setOriginalPitch(69);
    soundbank.addResource(sample);

    SF2Layer layer = new SF2Layer(soundbank);
    layer.setName("Test Layer");
    soundbank.addResource(layer);
    SF2LayerRegion region = new SF2LayerRegion();
    region.setSample(sample);
    layer.getRegions().add(region);

    SF2Instrument ins = new SF2Instrument(soundbank);
    ins.setName("Test Instrument");
    soundbank.addInstrument(ins);
    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    return soundbank;
}
 
Example #16
Source File: NoteOverFlowTest2.java    From dragonwell8_jdk with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #17
Source File: NoteOverFlowTest2.java    From openjdk-8-source with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #18
Source File: NoteOverFlowTest2.java    From hottub with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #19
Source File: NoteOverFlowTest2.java    From openjdk-8 with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #20
Source File: NoteOverFlowTest2.java    From openjdk-jdk8u with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #21
Source File: NoteOverFlowTest2.java    From jdk8u_jdk with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #22
Source File: NoteOverFlowTest2.java    From openjdk-jdk8u-backup with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #23
Source File: SF2Soundbank.java    From tuxguitar with GNU Lesser General Public License v2.1 4 votes vote down vote up
public SF2Layer[] getLayers() {
    return layers.toArray(new SF2Layer[layers.size()]);
}
 
Example #24
Source File: NoteOverFlowTest2.java    From jdk8u60 with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #25
Source File: NoteOverFlowTest2.java    From jdk8u-jdk with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #26
Source File: SF2InstrumentRegion.java    From tuxguitar with GNU Lesser General Public License v2.1 4 votes vote down vote up
public SF2Layer getLayer() {
    return layer;
}
 
Example #27
Source File: SF2InstrumentRegion.java    From tuxguitar with GNU Lesser General Public License v2.1 4 votes vote down vote up
public void setLayer(SF2Layer layer) {
    this.layer = layer;
}
 
Example #28
Source File: NoteOverFlowTest2.java    From jdk8u-jdk with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #29
Source File: NoteOverFlowTest2.java    From TencentKona-8 with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}
 
Example #30
Source File: NoteOverFlowTest2.java    From jdk8u-dev-jdk with GNU General Public License v2.0 4 votes vote down vote up
public static void main(String[] args) throws Exception
{
    // Create instance of the synthesizer with very low polyphony
    AudioSynthesizer synth = new SoftSynthesizer();
    AudioFormat format = new AudioFormat(44100, 16, 2, true, false);
    Map<String, Object> p = new HashMap<String, Object>();
    p.put("max polyphony", new Integer(5));
    AudioInputStream stream = synth.openStream(format, p);

    // Create instrument with too many regions (more than max polyphony)
    SF2Soundbank sf2 = new SF2Soundbank();

    SF2Sample sample = new SF2Sample(sf2);
    sample.setName("test sample");
    sample.setData(new byte[100]);
    sample.setSampleRate(44100);
    sample.setOriginalPitch(20);
    sf2.addResource(sample);

    SF2Layer layer = new SF2Layer(sf2);
    layer.setName("test layer");
    sf2.addResource(layer);

    for (int i = 0; i < 100; i++) {
        SF2LayerRegion region = new SF2LayerRegion();
        region.setSample(sample);
        layer.getRegions().add(region);
    }

    SF2Instrument ins = new SF2Instrument(sf2);
    ins.setPatch(new Patch(0,0));
    ins.setName("test instrument");
    sf2.addInstrument(ins);

    SF2InstrumentRegion insregion = new SF2InstrumentRegion();
    insregion.setLayer(layer);
    ins.getRegions().add(insregion);

    // Load the test soundbank into the synthesizer
    synth.unloadAllInstruments(synth.getDefaultSoundbank());
    synth.loadAllInstruments(sf2);

    // Send out one midi on message
    MidiChannel ch1 = synth.getChannels()[0];
    ch1.programChange(0);
    ch1.noteOn(64, 64);

    // Read 1 sec from stream
    stream.skip(format.getFrameSize() * ((int)(format.getFrameRate() * 2)));

    // Close the synthesizer after use
    synth.close();
}