Your starting point
Keep the input and every generated take. Compare them with one sound at one tempo, then save an editable four-bar phrase and a short decision record.
Before you begin. Difro 2.0 installed from Initial Audio on a supported Windows or macOS system (the product page specifies macOS 12 minimum); Python 3 for the original fixture; a music editor that imports MIDI and displays individual notes in a piano roll. Allow time and disk space for the vendor model setup. No paid plan is required for three generations within the free monthly allowance.
Product details and verification
Difro accepts an input MIDI phrase and exposes a generated MIDI output clip below its Render to WAV control. Source ↗
The current free tier lists 80 monthly generations; Pro is listed at $69 once. Source ↗
The original Python helper generated a 188-byte MIDI file. An independent parser verified format 0, one track, 480 ticks per quarter, sixteen quarter notes and eight seconds at 120 BPM. Difro, model generation, playback and the music-editor workflow were not executed.
This exercise is for a musician who wants a short phrase to revise. The finished folder contains input.mid, three generated MIDI takes, an edited choice and a decision note. You can repeat the comparison when a model or your musical brief changes.
MIDI stores note instructions: pitch, timing and velocity. A piano roll is the editor view where each note appears as a bar. An audio file records the resulting sound. Keeping the note instructions makes later changes to rhythm, pitch and instrumentation straightforward.
1. Set up a small comparison
Create an empty folder named melody-check. Keep this exercise separate from a production song so experiments cannot overwrite its clips. Open your music editor, create one instrument track and choose a plain piano sound. Set the project to 120 beats per minute and a 4/4 time signature: four quarter-note beats in each bar.
Use the same sound and playback level for every take. Avoid effects, extra drums and loudness processing during this comparison. Write your brief before generating: a four-bar phrase in C major that begins simply and has a clear ending. The generated result is allowed to surprise you, but your review should use the same brief for each take.
2. Make the original input
Save the complete code below as make_motif.py inside melody-check. Open a terminal in that folder. On macOS or Linux run python3 make_motif.py; on Windows with the Python launcher installed run py make_motif.py. The script uses only the Python standard library and writes input.mid in the current folder. It does not contact a network or call a model.
Expected terminal output: input.mid | 16 notes | 4 bars | 120 BPM | 8 seconds. The sixteen pitches are 60, 64, 67, 64, 65, 69, 67, 64, 62, 65, 69, 65, 67, 71, 67, 72. Each lasts one quarter note at velocity 80. These facts let you check an import independently of how convincing it sounds.
from pathlib import Path
import struct
# One original four-bar motif. MIDI 60 is middle C.
notes = [60, 64, 67, 64, 65, 69, 67, 64,
62, 65, 69, 65, 67, 71, 67, 72]
def vlq(value):
data = [value & 127]
value >>= 7
while value:
data.insert(0, (value & 127) | 128)
value >>= 7
return bytes(data)
# 120 BPM, 4/4, 480 ticks per quarter note.
track = bytearray(b'\x00\xff\x51\x03\x07\xa1\x20')
track += b'\x00\xff\x58\x04\x04\x02\x18\x08'
track += b'\x00\xc0\x00'
for pitch in notes:
track += b'\x00\x90' + bytes([pitch, 80])
track += vlq(480) + b'\x80' + bytes([pitch, 0])
track += b'\x00\xff\x2f\x00'
header = b'MThd' + struct.pack('>IHHH', 6, 0, 1, 480)
Path('input.mid').write_bytes(header + b'MTrk' + struct.pack('>I', len(track)) + track)
print('input.mid | 16 notes | 4 bars | 120 BPM | 8 seconds')Import input.mid into the piano track at bar 1. Confirm sixteen notes and an end at the start of bar 5. Some editors label MIDI note 60 as C3 and others as C4; use the numerical pitch and intervals if the octave labels differ. Play once and keep this clip as the untouched reference.
3. Produce and retain three takes
Open Difro 2 and complete its documented initial model setup. Drag input.mid into its MIDI input area. Use Re-Imagine to create a variation. Save the generated MIDI by dragging the output MIDI clip, located below Render to WAV, into your music editor. Export that imported clip as take-01.mid in melody-check. Use the editor’s MIDI export command; a WAV export would discard the editable note events.
Return to the same original input for each attempt. Keep the creativity setting fixed for all three takes and write its displayed value in your decision note. If the interface gives no numeric value, record the slider position with a screenshot or a plain description. Generate and save take-02.mid and take-03.mid the same way. Do not feed take 1 back in as take 2’s starting point: that would change the comparison input.
Preserve the complete generated files, even if a take is longer than the brief. In the editor, duplicate each take into a separate audition clip and trim that copy to four bars. Align each at bar 1 and play only one at a time. Keep the untouched exports for recovery and later comparison.
4. Decide using a fixed scorecard
First apply the structural checks below. A structurally valid take can still be musically weak. After checking its notes, listen twice alongside the original and choose the take that best fits the brief. A different sound can disguise awkward note choices, so keep the same piano until this decision is complete.
| Check | Pass condition | If it fails |
|---|---|---|
| Editable file | The editor shows individual notes after importing the saved MIDI. | Return to the MIDI output clip and export MIDI again. |
| Reference preserved | input.mid still imports as sixteen quarter notes across four bars. | Regenerate the original fixture in a fresh folder and compare. |
| Actual variation | At least one pitch or onset differs from the original when inspected in the piano roll. | Mark this take as unchanged; do not describe it as a new idea. |
| Four-bar audition | The comparison copy starts at bar 1 and ends at the start of bar 5. | Trim a duplicate clip and retain the full export. |
| Brief fit | You can identify a beginning, a coherent middle and an ending you would keep. | Record the specific weak bar before making any edits. |
Copy your preferred audition clip to a new track and make one deliberate edit: for example, shorten a crowded final bar or move the last note to a pitch that resolves the phrase. Export it as chosen.mid. The exact melody is variable; there is no single correct generated answer. A successful exercise produces an editable choice and a defensible reason for choosing it.
5. Save the decision with the files
Date:
Difro version: 2.0 (replace if your installed version differs)
Editor and version:
Input: input.mid — 16 quarter notes, 120 BPM, 4/4
Creativity setting recorded as:
Playback sound:
Take 1: structural pass/fail; changed notes; musical reason
Take 2: structural pass/fail; changed notes; musical reason
Take 3: structural pass/fail; changed notes; musical reason
Selected take:
One deliberate edit:
Saved result: chosen.mid
Generations used: 3
Unresolved problem, if any:Fill every line from the actual session; the empty lines are fields for your observations. A useful reason names a musical property, such as a repeated rhythm that makes the second bar easier to remember. “Sounds better” alone gives you little to reuse next time. Keep the decision note next to all five MIDI files.
Common failures and recovery
If the helper command is missing, install or select a supported Python 3 interpreter and run it again in the intended folder. If input.mid is missing, check the terminal’s working directory. If the file has a .txt suffix, save the script as plain text with the exact .py filename.
If the reference imports at the wrong speed, set the editor to 120 BPM explicitly; editors can choose to ignore a file’s tempo event. If it is silent, assign a piano instrument to the MIDI track and check that the track is enabled. Silence does not by itself mean the file is invalid.
If Difro fails during model setup or generation, keep input.mid and note the error and installed version. Consult the vendor’s current system requirements before trying again. Do not count a failed attempt as a tested take, and avoid repeated retries that use an unknown amount of your allowance.
If the output is a dense chord instead of a melody, inspect overlapping notes and choose a simpler take or edit a copy. If the result only seems better because it is louder, return to the common playback track and level before deciding.
What this exercise establishes
The helper test establishes that the supplied input file is structurally consistent with the stated phrase. It does not establish the quality of Difro’s generation or successful import in your specific editor. The product steps above follow public documentation and are awaiting full workflow execution.
A three-take comparison is a small creative exercise. It does not measure model quality across genres, establish commercial licensing for someone else’s input, or prove that output is unique. Use the original fixture or material you have permission to process. Before commercial use, review the vendor’s current terms and the rights attached to your source material.
Sources & next steps
Web · official
Initial Audio product index ↗
Followed creator index from the discovered video; inspected Difro 2 version and free/Pro choices.
Initial Audio · page checked 2026-10-19
YouTube · official
Difro 2 official first look and demo ↗
Expanded original description read: October 16, 10,609 views and 190 likes. Metadata only; no transcript or video viewing. Date precision is one day.
Initial Audio · video metadata checked 2026-10-19 · Published 2026-10-16
10,609 views · 190 likes · observed 2026-10-19 20:16 UTC
Web · official
Difro 2 product and controls ↗
Product page read for local MIDI generation, input/output controls, system requirements and access. Product workflow not executed.
Initial Audio · page checked 2026-10-19
Guide history
Revisions preserve the original instructions. A source recheck alone does not create a new revision.
Revision 1 · New original four-bar fixture, three-take comparison, edit/export handoff, pass/fail scorecard and recovery guidance. Helper tested; full product workflow explicitly unexecuted.