Package jm.music.data

Examples of jm.music.data.Part


        if (phr == null) {
            System.err.println("jMusic Read.jm error: The phrase is not initialised! I'm doing it for you.");
            phr = new Phrase();
        }
        phr.empty();
        Part p = new Part();
        jm(p, fileName);
        phr.addNoteList(p.getPhrase(0).getNoteArray());
    }
View Full Code Here


        }
        //Paint each phrase in turn
        Enumeration enum1 = sp.score.getPartList().elements();
        int i = 0;
        while (enum1.hasMoreElements()) {
            Part part = (Part) enum1.nextElement();

            Enumeration enum2 = part.getPhraseList().elements();
            while (enum2.hasMoreElements()) {
                Phrase phrase = (Phrase) enum2.nextElement();

                Enumeration enum3 = phrase.getNoteList().elements();
                double oldXBeat = phrase.getStartTime();
View Full Code Here

            cphr = new CPhrase();
        }
        cphr.empty();
        Score s = new Score();
        jm(s, fileName);
        Part p = new Part();
        p = s.getPart(0);
        for (int i = 0; i < p.size(); i++) {
            cphr.addPhrase(p.getPhrase(i));
        }
    }
View Full Code Here

     * @param String fileName
     */
    public static void xml(Part p, String fileName) {
        if (p == null) {
            System.err.println("jMusic Read.xml error: The part is not initialised! I'm doing it for you.");
            p = new Part();
        }
        p.empty();
        Score s = new Score();
        xml(s, fileName);
        p.addPhraseList(s.getPart(0).getPhraseArray());
View Full Code Here

        if (phr == null) {
            System.err.println("jMusic Read.xml error: The phrase is not initialised! I'm doing it for you.");
            phr = new Phrase();
        }
        phr.empty();
        Part p = new Part();
        xml(p, fileName);
        phr.addNoteList(p.getPhrase(0).getNoteArray());
    }
View Full Code Here

            cphr = new CPhrase();
        }
        cphr.empty();
        Score s = new Score();
        xml(s, fileName);
        Part p = new Part();
        p = s.getPart(0);
        for (int i = 0; i < p.size(); i++) {
            cphr.addPhrase(p.getPhrase(i));
        }
    }
View Full Code Here

            phrase.removeNote(0);
        }
        try {
            JmMidiPlayer midiPlayer = new JmMidiPlayer();
            Score sc = new Score();
            Part p = new Part();
            sc.addPart(p);
            p.addPhrase(phrase);
            Write.midi(sc, midiPlayer);
            midiPlayer.play();
            midiPlayer.close();
        } catch (MidiUnavailableException ex) {
            System.out.println(
View Full Code Here

        maxDynamicValue = 0;
        maxPanValue = 0;
        // get data values
        Enumeration enum1 = score.getPartList().elements();
        while (enum1.hasMoreElements()) {
            Part part = (Part) enum1.nextElement();
            Enumeration enum2 = part.getPhraseList().elements();
            while (enum2.hasMoreElements()) {
                Phrase phrase = (Phrase) enum2.nextElement();
                Enumeration enum3 = phrase.getNoteList().elements();
                while (enum3.hasMoreElements()) {
                    Note note = (Note) enum3.nextElement();
View Full Code Here

public class PadsGenerator implements ScoreManipulator {
    private Random random = new Random();

    @Override
    public void handleScore(Score score, ScoreContext ctx) {
        Part pad1 = ctx.getParts().get(PartType.PAD1);
        Part pad2 = ctx.getParts().get(PartType.PAD2);
        if (pad1 == null) {
            return;
        }
        Phrase pad1Phrase = new Phrase();
        pad1Phrase.setInstrument(pad1.getInstrument());
        pad1.add(pad1Phrase);

        Phrase pad2Phrase = null;
        if (pad2 != null) {
            pad2Phrase = new Phrase();
            pad2Phrase.setInstrument(pad2.getInstrument());
            pad2.add(pad2Phrase);
        }

        boolean pad1Long = Chance.test(40);
        boolean pad2Long = Chance.test(40);
        int nextContinuationChangeMeasurePad1 = 0;
        int nextContinuationChangeMeasurePad2 = 0;

        Part mainPart = ctx.getParts().get(PartType.MAIN);
        for (Phrase phrase : mainPart.getPhraseArray()) {
            ExtendedPhrase ePhrase = (ExtendedPhrase) phrase;
            for (int i = 0; i < ePhrase.getMeasures(); i++) {
                nextContinuationChangeMeasurePad1 = handlePads(ctx, ePhrase.getScale(), pad1Phrase, i, nextContinuationChangeMeasurePad1, pad1Long);
                if (pad2 != null) {
                    nextContinuationChangeMeasurePad2 = handlePads(ctx, ePhrase.getScale(), pad2Phrase, i, nextContinuationChangeMeasurePad2, pad2Long);
View Full Code Here

    private Random random = new Random();

    @Override
    public void handleScore(Score score, ScoreContext ctx) {
        Part accompanimentPart = ctx.getParts().get(PartType.ACCOMPANIMENT);
        if (accompanimentPart == null) {
            return;
        }
        //TODO disable this part for pentatonic scales, or make it work

        Part mainPart = ctx.getParts().get(PartType.MAIN);
        double currentMeasureSize = 0;
        double normalizedMeasureSize = ctx.getNormalizedMeasureSize();
        SpecialNoteType specialNoteType = null;

        boolean preferChordNotesOffset = Chance.test(20);
        // small offset of all chords from the start of the measure
        // misaligning it slightly with the main part
        double measureOffset = Chance.test(5) ? 0.15 : 0;

        for (Phrase phrase : mainPart.getPhraseArray()) {
            Phrase accompanimentPhrase = new Phrase();
            accompanimentPhrase.setTitle("Accompaniment phrase");
            Scale currentScale = ((ExtendedPhrase) phrase).getScale();
            // get copies of the static ones, so that we can shuffle them without affecting the original
            List<Chord> scaleChords = new ArrayList<Chord>(ChordUtils.chords.get(currentScale));
View Full Code Here

TOP

Related Classes of jm.music.data.Part

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.