Hvad er SMF-filformatet?
Filer med filendelsen .smf indeholder MIDI - Musical Instrument Digital Interface - sekvensdata. SMF-filer gemmer komplette MIDI-afspilningsinstruktioner til hardware-synthesizere, software-sequencere og MIDI-kompatible applikationer. I modsætning til lydformater som .wav eller .mp3, indeholder SMF-filer ikke nogen samplet lyddata. Af denne grund er en SMF-fil betydeligt mindre end sammenlignelige lydfiler og langt lettere at redigere node-for-node i en DAW eller sequencer. SMF-standard-specifikationen blev først udgivet i 1988 af MIDI Manufacturers Association (MMA), og formatet har været stabilt siden.
Indhold af SMF - Standard MIDI File
En SMF-fil, der oftere gemmes med filendelsen .mid, kan indeholde instruktioner til lydenheder om at generere lyd, herunder:
- MIDI-noder (pitch og velocity),
- volumen- og panoreringskontrol,
- tildeling af instrument-spor,
- yderligere effekter såsom rumklang eller pitch bend.
Formatet tillader også lagring af yderligere information, såsom tempomarkeringer, taktarter, sangtekster og metadata om ophavsret. Hver SMF-fil er opdelt i en header (MThd) efterfulgt af en eller flere track-chunks (MTrk).
Brug af SMF-filer til deling af data
MIDI-standarden blev designet til portabilitet af lyddata mellem programmer og enheder. Format 0 understøtter kun et enkelt sammenflettet spor, mens Format 1 gemmer flere synkrone spor og er den mest udbredte type. Format 2 gemmer uafhængige asynkrone mønstre og er sjælden i praksis. SMF-filer understøttes af sequencere og DAWs såsom MuseScore, Cubase, Logic Pro og Digital Performer, samt medieafspillere herunder VLC.
Sikkerhed og tryghed
RISIKO: LOWStandard MIDI-filer indeholder passive hændelsesdata uden eksekverbar kode. Historisk set tillod CVE-2012-0003 eksekvering af kode via en misdannet MIDI i Windows Media Player - dette er rettet for længe siden, men hold dine afspillere opdateret. Ellers er en .smf sikker data.
Formatdetaljer
kort fortalt- Simple Machine Forum backup - Visse forum-softwares bruger .smf til eksportfiler af forum-databaser - almindelig tekst/SQL, fuldstændig urelateret til MIDI.
Programmer der åbner SMF-filer
Tekniske detaljer
dyb specifikation| Magic bytes | `MThd` (hex 4D 54 68 64) ved offset 0 - identifikator for MIDI-header-chunk |
| Header-chunk struktur | `MThd` + 4-byte længde `00 00 00 06` + format-type (2 bytes) + antal spor (2 bytes) + timing-division (2 bytes) |
| Track-chunk magi | `MTrk` (hex 4D 54 72 6B) starter hver track-chunk |
| Byte-rækkefølge | Big-endian for alle multi-byte heltal |
| Format-typer | 0 (enkelt sammenflettet spor), 1 (multi-spor synkront - mest almindelig), 2 (multi-spor asynkront - sjælden) |
| Timing-opløsning | Indstilles af division-feltet i headeren (f.eks. 480 ticks/fjerdedelsnode); tempo angives af `FF 51` meta-hændelse i mikrosekunder/slag |
| Typisk filstørrelse | 1 KB - 100 KB; en komplet multi-spor sang er normalt under 50 KB |
| Komprimering | Ingen; delta-tid bruger variable-length quantity (VLQ) kodning for kompakthed, ikke datakomprimering |
| Lydindhold | Gemmer MIDI-hændelsesinstruktioner (node til/fra, velocity, programskift, controller), ikke samplede bølgeformer |
| MIDI-kanaler | Op til 16 samtidige kanaler pr. fil; kanal 10 er reserveret til slagtøj ifølge General MIDI-konventionen |
| Meta-hændelser | Tempo (`FF 51`), taktart (`FF 58`), spornavn (`FF 03`), sangtekster (`FF 05`), ophavsret, slut-på-spor (`FF 2F`) |
| MIME-type | `audio/midi`; genkendes også som `audio/x-midi` og `audio/sp-midi` |
| Udgivet | 1988 (SMF 1.0 specification) |
| Seneste version | SMF 1.0 (stable since 1988; unchanged format) |
| Åben standard | Ja · royaltyfri |
| Specifikation | midi.org |
SMF-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om SMF-filer.