Rozhraní MIDI pro hudební nástroje (.mid)

MIDI Standardní

Musical Instrument Digital Interface (MIDI) je symbolický standard hudební notace, který zaznamenává události instrumentálního provedení namísto akustických zvukových vln.

Kontrola a metadata

Operační systémy a analyzátory souborů identifikují soubory MID kontrolou počáteční binární sekvence bajtů:

Vyberte nebo přetáhněte soubory sem

Soukromě - soubory nikdy neopustí vaše zařízení

nebo vložte Ctrl+V
Záruka ochrany soukromí s nulovým přenosem po síti: 0 bajtů odesláno na externí servery. Veškeré zpracování probíhalo lokálně v sandboxu vašeho prohlížeče.

Podpis hlavičky na úrovni bajtů (Magic Bytes)

Operační systémy a analyzátory souborů identifikují soubory MID kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (POSUN 0):

4D 54 68 64

ASCII REPREZENTACE: MThd

Standardizace: MIDI Manufacturers Association (MMA) / AMEI

Technické specifikace

Architektura kontejneruHierarchie bloků souboru Standard MIDI File (SMF) (hlavička MThd + bloky stop MTrk)
KompreseNekomprimované symbolické události výkonu (Note On, Note Off, Velocity, Pitch Bend)
Pořadí bajtůPořadí bitů a bajtů Big-Endian
Barevné prostoryNevztahuje se (symbolický proud instrukcí not)
Kanály a struktura16 logických MIDI kanálů na stopu
Max. rozměryProměnlivé rozlišení delta času (tiky na čtvrťovou notu, až 65 535)
PrůhlednostČistě matematická posloupnost událostí; neukládá žádný zvukový průběh
Streamování a progresivní načítáníSekvenční proud událostí; lze jej parsovat a odesílat notu po notě

Technická srovnávací matice: MID vs konkurence

Technický atributMID (Aktuální)WAVMP3MOD
Ukládaný obsahInstrukce událostí (nota, výška tónu, dynamika)Nekomprimovaná zvuková vlna PCMKomprimovaná ztrátová zvuková vlnaInstrukce stopy + vložené vzorky zvukových nástrojů
Průměrná velikost souboru10 kB až 100 kB30 MB - 50 MB3 MB - 5 MB500 kB - 2 MB
Konzistence zvukuLiší se drasticky na základě syntetizéru/zvukového fontu uživateleData událostí MIDI jsou přenositelná; zvuk při přehrávání závisí na syntezátoru nebo zvukové bance.Data událostí MIDI jsou přenositelná; zvuk při přehrávání závisí na syntezátoru nebo zvukové bance.
Úpravy aranžmáTriviální; manipulace se zápisem nota po notěExtrémně obtížné přeladění zvukuExtrémně obtížné přeladění zvukuÚpravy vzorků založené na vzorech

Běžné režimy poškození a příručka pro obnovení v hex

Noty syntetizéru znějí donekonečna („zaseknuté noty“) nebo se tempo stává astronomicky rychlým.

Hlavní příčina: Chybějící události „Note Off“ nebo poškozené hodnoty časového rozdílu s proměnnou délkou v bloku MTrk.

Obnovení: Otevřete soubor v MIDI sekvenceru nebo použijte nástroj File2File.app MIDI k vyčištění běžícího stavu a vložení chybějících příkazů Note Off.

Bezpečnostní analýza a vektory útoků na parser

Analyzátory MIDI dekódují složité hodnoty delta-time s proměnnou délkou (VLQ) a zprávy System Exclusive (SysEx), které mohou vyvolat přetečení vyrovnávací paměti v hardwarových i softwarových syntezátorech.

Známé vektory útoků

  • Nekontrolované rozšíření množství s proměnnou délkou způsobující 32bitové přetečení celého čísla.
  • Příliš velká datová část zprávy SysEx způsobuje přetečení haldy ve firmwaru syntetizéru nebo softwarových pluginech.
  • Zlonaměrně vytvořené značky smyčky způsobující nekonečné smyčky CPU v renderovacích vláknech zvuku.

Doporučené bezpečnostní postupy: Před odesláním do syntetizérů vynuťte horní limit hodnot delta-time a proveďte sanitaci bloků výrobce SysEx.

Historický vývoj a milníky

2020Dokončení standardu MIDI 2.0, který zavádí obousměrnou komunikaci a 32bitové rozlišení ovladačů.
1988Formalizován formát Standard MIDI File (SMF) s formátem 0 (jednostopý) a formátem 1 (vícestopý).
1983Dave Smith a Ikutaro Kakehashi předvádějí připojení syntetizéru Prophet-600 k syntetizéru Roland Jupiter-6 pomocí MIDI na veletrhu NAMM.

Klíčové výhody a přednosti

  • Mikroskopická velikost souboru: plná symfonická aranžmá spotřebovávají desítky kilobajtů namísto desítek megabajtů.
  • Kompletní flexibilita úprav: jednotlivé noty, tempa, tóniny a nástrojové patche lze upravovat bez ztráty kvality.
  • MIDI podporuje řada syntezátorů, digitálních pian, sekvencerů a DAW; jejich možnosti se liší

Technická omezení a nevýhody

  • Neobsahuje žádné skutečné zvukové nahrávky; přehrávání závisí zcela na syntetizéru a zvukové bance poslechového zařízení.
  • Nedokáže reprodukovat nahrané lidské zpěvní hlasy ani realistické akustické neinstrumentální zvuky.
  • Přehrávání zní na různých počítačích zcela odlišně v závislosti na nainstalovaných zvukových fontech General MIDI.

Zajímavé technické drobnosti

  • Magická hlavička „MThd“ je zkratkou pro „MIDI Track Header“, po níž následuje „MTrk“ pro každý blok stopy.
  • Klasické PC videohry jako Doom, Warcraft a Monkey Island používaly MIDI k zajištění bohaté hudby na 1,44MB disketách.
  • Dave Smith obdržel v roce 2013 technickou cenu Grammy za svou zásadní roli při vynálezu MIDI.

Často kladené technické otázky

Proč soubor MIDI zní na mém počítači jako levné nástroje?

Soubor MIDI obsahuje pouze pokyny pro notový záznam (kterou notu stisknout a jak silně). Zvuk, který slyšíte, generuje vestavěný syntetizér General MIDI vašeho operačního systému. Nahrání profesionálního SoundFontu (.sf2) výrazně zvyšuje realističnost.

Jak mohu převést soubor MIDI na soubor MP3 nebo WAV?

Protože MIDI neobsahuje žádný zvuk, jeho konverze vyžaduje „vykreslení“ (rendering) prostřednictvím softwarového syntetizéru se zvukovými nástroji. File2File.app Audio Converter automaticky vykresluje MIDI pomocí vysoce kvalitních akustických zvukových bank přímo ve vašem prohlížeči.

Jaký je rozdíl mezi formátem MIDI 0 a formátem MIDI 1?

Formát 0 slučuje všechny hudební kanály do jediného bloku stopy. Formát 1 odděluje jednotlivé nástroje (klavír, baskytara, bicí) do vlastních nezávislých bloků stop pro vícestopou úpravu.