prípona súboru SMF. Formáty SMF Otvorte súbor smf

Ak má váš počítač antivírusový program môcť skenovať všetky súbory v počítači, ako aj každý súbor jednotlivo. Akýkoľvek súbor môžete skontrolovať kliknutím pravým tlačidlom myši na súbor a výberom príslušnej možnosti na kontrolu súboru na prítomnosť vírusov.

Napríklad na tomto obrázku súbor môj-súbor.smf, potom musíte kliknúť pravým tlačidlom myši na tento súbor a v ponuke súboru vybrať možnosť "skenovať pomocou AVG". Výberom tejto možnosti otvoríte AVG Antivirus a skontrolujete súbor na prítomnosť vírusov.


Niekedy môže dôjsť k chybe nesprávna inštalácia softvéru, čo môže byť spôsobené problémom, ktorý sa vyskytol počas procesu inštalácie. Môže to rušiť váš operačný systém priraďte svoj súbor SMF k správnej softvérovej aplikácii, ovplyvňujúce tzv "pridruženia prípony súboru".

Niekedy jednoduché preinštalovanie apache openoffice môže vyriešiť váš problém správnym prepojením SMF s Apache OpenOffice. V iných prípadoch môžu vzniknúť problémy s priraďovaním súborov zlé programovanie softvéru vývojára a možno budete musieť kontaktovať vývojára so žiadosťou o ďalšiu pomoc.


Poradenstvo: Skúste aktualizovať Apache OpenOffice na najnovšiu verziu, aby ste sa uistili, že máte najnovšie opravy a aktualizácie.


Môže sa to zdať príliš zrejmé, ale často problém môže spôsobovať samotný súbor SMF. Ak ste dostali súbor v prílohe e-mailu alebo ste si ho stiahli z webovej stránky a proces sťahovania bol prerušený (napríklad výpadkom prúdu alebo z iného dôvodu), súbor môže byť poškodený. Ak je to možné, pokúste sa získať novú kópiu súboru SMF a skúste ho znova otvoriť.


Opatrne: Poškodený súbor môže spôsobiť vedľajšie poškodenie predchádzajúceho alebo existujúceho malvéru vo vašom počítači, preto je dôležité, aby bol váš počítač aktualizovaný pomocou aktuálneho antivírusu.


Ak váš súbor SMF spojené s hardvérom vášho počítača na otvorenie súboru, ktorý možno budete potrebovať aktualizovať ovládače zariadení spojené s týmto zariadením.

Tento problém zvyčajne spojené s typmi mediálnych súborov, ktoré závisia od úspešného otvorenia hardvéru vo vnútri počítača, napr. zvuková karta alebo grafická karta. Ak sa napríklad pokúšate otvoriť zvukový súbor, ale nemôžete ho otvoriť, možno to budete musieť urobiť aktualizovať ovládače zvukovej karty.


Poradenstvo: Ak sa pri pokuse o otvorenie súboru SMF dostanete Chybové hlásenie súvisiace so súborom .SYS, problém môže byť pravdepodobne spojené s poškodenými alebo zastaranými ovládačmi zariadení ktoré je potrebné aktualizovať. Tento proces možno uľahčiť použitím softvéru na aktualizáciu ovládačov, ako je napríklad DriverDoc.


Ak kroky nevyriešili problém a stále máte problémy s otváraním súborov SMF, môže to byť spôsobené nedostatok dostupných systémových prostriedkov. Niektoré verzie súborov SMF môžu vyžadovať značné množstvo zdrojov (napr. pamäť/RAM, výpočtový výkon), aby sa v počítači správne otvorili. Tento problém je celkom bežný, ak súčasne používate pomerne starý počítačový hardvér a oveľa novší operačný systém.

Tento problém sa môže vyskytnúť, keď má počítač problém s dokončením úlohy, pretože operačný systém (a ďalšie služby bežiace na pozadí) spotrebuje príliš veľa zdrojov na otvorenie súboru SMF. Pred otvorením súboru StarMath Formula File skúste zatvoriť všetky aplikácie v počítači. Uvoľnením všetkých dostupných zdrojov na vašom počítači zabezpečíte najlepšie podmienky pre pokus o otvorenie súboru SMF.


Ak ty dokončil všetky vyššie uvedené kroky a váš súbor SMF sa stále neotvorí, možno budete musieť spustiť upgrade hardvéru. Vo väčšine prípadov, dokonca aj so staršími verziami hardvéru, môže byť výpočtový výkon stále viac než dostatočný pre väčšinu používateľských aplikácií (pokiaľ nevykonávate veľa práce náročnej na CPU, ako je 3D vykresľovanie, finančné/vedecké modelovanie alebo náročnosť na médiá. ). teda je pravdepodobné, že váš počítač nemá dostatok pamäte(bežnejšie označované ako "RAM" alebo RAM) na vykonanie úlohy otvorenia súboru.

Piata časť série článkov podrobne popisuje protokol MIDI.

Jednou z troch súčastí protokolu MIDI je špecifikácia formátu ukladania údajov (pripomeňme, že ďalšie dve súčasti sú formát správy a špecifikácia hardvérového rozhrania). O formáte správy sa hovorilo v prvých troch článkoch cyklu, teraz je čas na formát úložiska. Bol navrhnutý organizáciou MMA koncom roku 1987 a nazýval sa „Štandardné MIDI súbory“ (Štandardné MIDI súbory, SMF).

Účelom súborov MIDI je umožniť výmenu udalostí (t. j. správ MIDI, ktoré majú časovú značku) medzi rôznymi zariadeniami a programami. Pred príchodom štandardných MIDI súborov nebolo možné usporiadanie pripravené v jednom sekvenceri načítať do iného z dôvodu nekompatibility formátu. Nedá sa povedať, že s príchodom SMF prešli na tento formát všetci výrobcovia sekvencerov. Dôvodov je viacero a aj o nich si dnes povieme.

Keďže ukladanie informácií priamo súvisí so štruktúrou sekvenátorov, budeme sa tejto veci venovať podrobnejšie, ale len v rozsahu potrebnom na pochopenie SMF. A sekvencerom, samozrejme, venujeme jeden z ďalších článkov cyklu.

Diania
Zavolá sa MIDI správa s časovou pečiatkou udalosť. Na označenie času je možné použiť rôzne jednotky – tikania, interné impulzy, čas vo formáte SMPTE atď. Je dôležité pochopiť zásadný rozdiel medzi udalosťou a správou. Správa „žije“ zlomok milisekúnd reálneho času – od okamihu, keď je vygenerovaná zdrojom, až po okamih, keď príde na vykonanie príjemcovi. Dá sa zachytiť počas prenosu cez MIDI kábel ako súbor impulzov. Udalosť je niekoľko bajtov informácie zaznamenanej v pamäti zariadenia, na základe ktorej sa v budúcnosti v určenom čase vygeneruje správa.

Pamäť sekvencera môže napríklad uložiť udalosť „play note“ s časovou značkou 100 ms od začiatku prehrávania. Túto udalosť môžete upraviť v dvoch rozmeroch: po prvé, zmeniť parametre samotnej MIDI správy (v tomto prípade výšku alebo dynamiku noty) a po druhé, posunúť notu po stope, to znamená zmeniť načasovanie noty. správa.

Udalosti sa objavujú v pamäti sekvencera počas nahrávania MIDI správ. Keď stlačíte tlačidlo Record, sekvencer zapne hardvérový generátor impulzov (tiká) a začne „počúvať“ určený MIDI vstup. Napríklad, keď je stlačené tlačidlo, vstup dostane správu "vziať na vedomie". Sekvenátor vyzerá - áno, správa prišla na 20. tik a zapíše ju do pamäte so značkou 20. Po niekoľkých sekundách sa kláves uvoľnil - prišla správa "odstrániť poznámku", interný generátor v tej chvíli radostne zamával 64 tickov do sekvencera. Sekvencer uloží správu s označením 64. Teraz máme do činenia s dvomi udalosťami – Note On a Note Off. Počas prehrávania sa generátor impulzov opäť zapne. Keď sa priblíži 20. tick, do MIDI výstupu sekvencera sa odošle správa Note On, 64. tik - Note Off. Nahrávali sme a potom reprodukovali akcie účinkujúceho!

Je zrejmé, že to isté sa dá robiť aj „offline“, teda bez potreby živého vystúpenia. Kliknutím myšou na správne miesto v stope (a výberom trvania noty vopred) vytvoríme presne predchádzajúci obrázok v pamäti sekvencera.

Typy pamäte
Teraz je čas použiť dva zastrašujúce počítačové pojmy: primárnu a sekundárnu pamäť. Primárna (alebo interná) pamäť je pamäť sekvencera, kde sa píšu správy a kde sa ukladajú udalosti počas celej relácie. Po vypnutí napájania sa obsah tejto pamäte vynuluje. Táto interpretácia je vhodnejšia pre hardvérové ​​sekvencery. V softvérových sekvenceroch je primárna pamäť jednoducho hlavnou pamäťou počítača. Na dlhodobé uloženie obsahu primárnej pamäte sa používa sekundárna pamäť, alebo inak povedané pamäťové médium. Môže to byť disketa, pevný disk, čipová karta a podobne.

Množstvo primárnej pamäte v hardvérových sekvenceroch a pracovných staniciach (pripomíname, že pracovná stanica je tónový generátor a sekvencer v jednom boxe) sa zvyčajne vyjadruje počtom uložených nôt (napríklad 200 tisíc). Niekedy je hlasitosť vyjadrená v udalostiach, v takom prípade sa musíte mať na pozore – jedna nota si vyžaduje uloženie dvoch udalostí (stlačenie a uvoľnenie klávesy) a otočenie kolieska pitch alebo aftertouch môže vygenerovať až 100 alebo viac udalostí. Stáva sa, že množstvo pamäte sekvencera je vyjadrené v natívnych počítačových jednotkách - kilobajtoch. To však tiež nie je príliš pohodlné - jedna udalosť môže trvať rôzny počet bajtov (od piatich do niekoľkých desiatok).

V moderných softvérových sekvenceroch málokomu záleží na množstve primárnej pamäte – aj na stroji so 128 MB RAM môžete zabudnúť na akékoľvek obmedzenia pri práci s MIDI dátami. Okrem toho existujú sekvencery, ktoré dokážu prehrať aranžmán priamo z disku bez toho, aby ho načítali do primárnej pamäte (a, mimochodom, aj nahrávali), čo vo všeobecnosti stiera rozdiel medzi týmito dvoma typmi pamäte.

V sekundárnom úložisku sa dáta zvyčajne zapisujú do súboru. Väčšina sekvencerov má svoj vlastný formát tohto súboru, uzavretý, čo sťažuje výmenu usporiadaní vytvorených v rôznych zariadeniach alebo programoch. Dávnejšie sa hovorilo, že to bol hlavný dôvod vzniku SMF.

Meranie času
V skutočnosti nie sú vo vnútri sekvencera žiadne „tikania“. Existuje hardvérový časovač, ktorý generuje impulzy s prísne konštantnou frekvenciou (napríklad každú mikrosekundu). Nútiť hudobníkov, aby merali čas v mikrosekundách, by bol obludný výsmech, rovnako ako v iných jednotkách reálneho času (sekundy, minúty). Hudobníci sú zvyknutí uvažovať v taktoch a úderoch a vyjadrovať čas v relatívnych jednotkách (dĺžkach nôt) v závislosti od aktuálneho tempa.

"Žiadny problém," odpovedali výrobcovia, "nechajme ich merať tak, ako im to najviac vyhovuje." Len minimálnou mernou jednotkou nebude nejaký 32. čas trvania, ale podmienečne odobratý tiket (jednotka je ešte menšia, takže napríklad jedna tridsaťsekunda môže obsahovať 48 tikov). Keďže od klasickej éry sa tempo meria počtom kvartálov za minútu (BPM, tepy za minútu), rozhodlo sa, že hlavné trvanie bude štvrtina a uvedie sa počet tikov za štvrťrok - PPQN (Pulse Per Štvrťročná poznámka). Čím väčšie je PPQN, tým lepšie rozlíšenie má sekvencer a tým presnejšie dokáže zachytiť správy počas nahrávania a pri prehrávaní ich vydávať na MIDI výstup. Väčšina sekvencerov vám umožňuje ľubovoľne nastaviť PPQN - napríklad od 32 do 1536 tikov za štvrťrok (moderné sekvencery - až 15360 PPQN).

Tik je jednotka závislá od tempa: čím rýchlejšie je tempo, tým kratší je interval medzi tikaniami v jednotkách v reálnom čase. Tento interval možno nájsť pomocou vzorca na obr. jeden.

Napríklad pri tempe 120 BPM a rozlíšení 96 PPQN budú tikania každých 5,208 milisekúnd. Pri rovnakom rozlíšení a tempe 180 BPM sa interval medzi tikotmi skráti na 3,472 ms. Ako tiká počet sekvencií, ak jeho interný časovač pulzuje každú mikrosekundu? Áno, je to veľmi jednoduché: na základe aktuálneho tempa a rozlíšenia v štvrtine, presne podľa zadaného vzorca. Pretože jedna milisekunda má 1000 mikrosekúnd, v poslednom príklade sekvenátor vygeneruje ďalší tick, keď prijme 3472 impulzov z časovača.

Keď vysoké rozlíšenie nedáva zmysel
Ak sú sekvencer a generátor tónov „pod jednou strechou“ (pracovná stanica alebo počítač so softvérovým sekvencerom a syntetizátorom na zvukovej karte, prípadne virtuálny syntetizátor), potom môže byť vnútorné rozlíšenie takéhoto systému ľubovoľne veľké ( číslo 15360 PPQN je pôsobivé). To umožňuje, aby synchronizácia MIDI a audio dát bola vzorovo presná. Akonáhle ale prepojíme sekvencer a tónový generátor MIDI káblom cez MIDI rozhranie, vysoké rozlíšenie už nie je podstatné.

prečo? Dovoľte mi pripomenúť, že jeden bajt sa prenesie cez rozhranie MIDI do 320 mikrosekúnd. A to znamená, že napríklad správa o zapísaní poznámky (pozostávajúca z troch bajtov) sa bude vysielať 960 μs, teda takmer celú milisekúndu. Teraz si predstavme, že do sekvencera sú naprogramované dve noty pri 120 BPM a 2048 PPQN, s intervalom dvoch tikaní medzi sebou. V jednotkách reálneho času je to 488 mikrosekúnd. Takže: Tónový generátor nebude schopný prijať druhú notu 488 mikrosekúnd po prvej, ale v skutočnosti až po 960 µs. Takže ho vykoná nie po dvoch, ale takmer po štyroch.

Z toho vyplýva záver: pri práci cez MIDI rozhranie (keď sú sekvencer a generátor tónov od seba vzdialené), rozlíšenie sekvencera viac ako jeden tick za 960 mikrosekúnd nedáva zmysel. Ak chcete zistiť, koľko to bude v PPQN, môžete použiť vzorec na obr. 2.

V tabuľke na obr. 3 pre rôzne sadzby ukazuje hodnoty PPQN, ktoré je zbytočné prekračovať.

Pozícia udalosti na časovom pravítku sa nastavuje v sekvenceri, zvyčajne vo formáte „bars: beats: ticks“, napríklad 22:3:152. To znamená: dvadsiaty druhý takt, tretí takt, 152. takt od začiatku tretieho taktu. Podobný princíp časovania (anglický výraz - Timebase) sa nazýva hudobný (hudobný), pretože je pre hudobníkov známy a pohodlný. Upozorňujeme, že na prácu v tomto formáte potrebujete poznať aktuálny takt. To znamená, koľko úderov obsahuje takt a čomu sa každý úder rovná.

Takže v 4/4 takte sa úder rovná štvrtine a takt obsahuje štyri údery. Pri rozlíšení 384 PPQN bude 384 tikov v jednom takte, respektíve 1536 tikov v každom takte (384 x 4). Pri takte 6/8 a rovnakom rozlíšení bude zaznieť 192 tikaní na takt (osmina je polovica dĺžky štvrťovej noty) a 6 taktov na takt, čiže 1152 tikaní (192 x 6). Záznam 22:3:152 teda v prvom prípade znamená 35096 tikov od začiatku skladby (22 x 1536 + 3 x 384 + 152) a v druhom - 26072 tikov (22 x 1152 + 3 x 192 + 152).

Ak teda chcete určiť polohu udalosti v jednotkách v reálnom čase na základe formátu „takty: beaty: ticks“, potrebujete poznať tri parametre: aktuálne tempo, takt a rozlíšenie v tikoch za štvrťrok (PPQN).

Existuje ešte jedna možnosť počítania času, kedy je poloha udalosti na trati vyjadrená v absolútnych jednotkách nezávislých od tempa, najčastejšie v časovom formáte SMPTE – „hodiny: minúty: sekundy: snímky“. Tento princíp časovania sa nazýva "time-code-based" (založený na časovom kóde, absolútnom). Jeho potreba vzniká vtedy, keď sekvencer spolupracuje s magnetofónom alebo filmovým/video zariadením. Operácie úprav s filmom, videom a zvukovým materiálom, ktoré označujú polohy začiatku a konca nahrávky, sú pohodlnejšie na vykonávanie, pretože sú viazané na absolútnu mierku a nie na takty a údery.

V tomto prípade súradnice udalosti na časovom pravítku závisia od aktuálneho tempa. Takže pri 120 BPM môže mať prvý úder druhého taktu SMPTE čas 00:00:02:00 a pri 60 BPM to môže byť 00:00:04:00. Ak sa udalosť nachádza vo vnútri snímky (medzi sekundami), jej súradnice sa budú líšiť aj pre rôzne formáty snímok (počet snímok za sekundu). Viac o SMPTE a MIDI Time Code si môžete prečítať v predchádzajúcom článku zo série.

Variabilné dĺžky
Dosť bolo lyrických odbočiek, teraz je našou úlohou zistiť formát ukladania údajov. A prvým problémom, ktorému vývojári SMF čelili, bolo, ako ušetriť čas udalosti.

Tu sú dve možnosti: uložiť pre každú udalosť čas od začiatku skladby alebo od poslednej udalosti pred ňou (na rovnakom kanáli). Prvá možnosť však nie je racionálna, pretože najčastejšie je interval medzi udalosťami malý, susedné udalosti majú časy vykonávania blízko seba. Takže v pasáži troch nôt môže mať prvá čas povedzme 22:3:152, druhá 22:3:244, tretia 22:3:288. Ak chcete uložiť tieto čísla (prevedené na tiky od začiatku skladby), musíte si rezervovať každé aspoň štyri bajty. Ak pôjdete druhým spôsobom, potom namiesto troch veľkých čísel môžete uložiť jedno veľké štartovacie číslo (22:3:152), po ktorom nasledujú dve malé, rozdiel v tikoch medzi prvým a druhým a druhým a tretím noty (v tomto prípade 92 a 44), stačí im jeden bajt. Problém však stále zostáva: v závislosti od udalosti musíte prideliť iný počet bajtov, aby ste ušetrili čas.

Ak by sa v súčasnosti vyvíjalo SMF (a dokonca aj Microsoft, ktorý sa vo všeobecnosti málo stará o veľkosť svojich súborov a potrebnú pamäť), nad týmto problémom by sa zatváralo oko. Pridelili sme pevné pole na úsporu času, povedzme 8 bajtov na udalosť, a neutrpeli sme. Avšak v roku 1988 bola primárna (RAM) pamäť veľmi drahá, každý bajt sa rátal a sekundárna (diskové médium) mala veľmi skromné ​​​​množstvo. Preto chceli vývojári SMF získať čo najkompaktnejší formát.

Bolo rozhodnuté ponechať delta čas, teda rozdiel v tickoch medzi touto udalosťou a predchádzajúcou (alebo začiatkom skladby). Napríklad, ak sa prvá udalosť - zasiahnutie noty C do prvej oktávy - vyskytla v momente 40 tiknutí od začiatku piesne, potom jej delta čas bude 40. Ak sa nota F zahrá po štyroch tikaniach, potom jej delta čas bude 4. Ak dve udalosti nastanú súčasne, potom jednej z nich je priradený delta čas rovný nule. Ak sa udalosť vyskytne presne na začiatku skladby, má tiež nulový delta čas. K ďalšej udalosti však môže dôjsť o hodinu a pol (teda po niekoľkých miliónoch tiknutí). Ako byť v tomto prípade? Koniec koncov, pamäť je potrebné šetriť a je nežiaduce prideľovať pevné pole niekoľkých bajtov pre delta čas.

Takzvaný množstvá s premenlivou dĺžkou. Poskytujú pohodlný spôsob zápisu celých čísel, od najmenšieho po najväčšie, bez toho, aby bolo potrebné pre číslo vyčleniť pevný počet bajtov. Bity pôvodného čísla sú zbalené do jedného alebo viacerých bajtov: každý bajt má sedem bitov (vpravo bity 0 až 6). Najvýznamnejším bitom v byte je služba; všetky bajty v rade, okrem posledného, ​​musia obsahovať jeden, posledný - nulu. Niekoľko príkladov balenia je znázornených na obr. 4.

Napríklad chcete zabaliť číslo 64 (hexadecimálne 0x40) do formátu s premenlivou dĺžkou. V binárnej forme je toto číslo zapísané ako 0100 0000. Existuje len sedem platných bitov, takže toto číslo je zbalené do jedného bajtu nezmenené - 0100 0000 (je to aj posledný bajt série), najvýznamnejší bit je 0.

Teraz je číslo 128 (0x80). V binárnej forme sa zapisuje ako 1000 0000. Významných bitov je osem, takže všetko sa nezmestí do jedného bajtu, treba ho rozdeliť na dva. Prvý bajt musí mať jednotku vo vysokom bite, druhý (ako posledný bajt série) musí mať nulu. Sedem najmenej významných bitov pôvodného čísla vložíme do druhého bajtu, ukáže sa 0 000 0000. Zostávajúci jeden bit (jeden) sa umiestni na pravú stranu prvého bajtu - vyjde 1 000 0001. Výsledkom je , číslo 0x80 sa zapíše ako dva bajty: 0x81 0x00. Rozbalenie je veľmi jednoduché. Dopredu nevieme, koľko bajtov je v rade. Čítame prvý bajt - 1000 0001. Vysoký servisný bit (1) naznačuje, že toto nie je posledný bajt série, bajtov je viac. Obslužnú jednotku zahodíme, zostane sedem bitov - 000 0001. Prečítame druhý bajt - 0000 0000. Vysoký servisný bit (0) znamená, že toto je posledný bajt série (to znamená, že v sérii sú len dva bajty séria). Obslužný bit vyhodíme. Zostáva tiež sedem bitov - 000 0000. Pridáme k nim vľavo sedem bitov pridelených z prvého bajtu, dostaneme 000 0001 000 0000. Po vyradení prvých šiestich núl dostaneme požadované číslo 1 000 0000 (0x80). .

Metóda hodnôt s premenlivou dĺžkou vám teda umožňuje prideliť rôzny počet bajtov pre rôzne čísla: pre čísla v rozsahu od 0 do 127 - jeden bajt, od 128 do 16383 - dva bajty atď. Maximálny počet, ktorý môže byť takto zastúpený, v zásade nie je obmedzený. V SMF je však dĺžka trvania obmedzená na štyri bajty (tri s nastaveným najvýznamnejším bitom a jeden ukončujúci jeden s nulou). V dôsledku toho môže byť maximálny delta čas 0x0FFFFFFF (alebo 268 435 455 tikov), čo pri 500 BPM a 96 PPQN je približne štyri dni. Viac než dosť!

Vo forme hodnôt premennej dĺžky SMF špecifikuje nielen delta čas, ale aj dĺžku niektorých udalostí.

Interchange File Format (IFF)
Štruktúra štandardného súboru MIDI je takmer celá prevzatá z formátu IFF (Interchange File Format), ktorý v roku 1985 vyvinula spoločnosť Electronic Arts. Ide o formát na ukladanie a výmenu údajov, ktorý už takmer dvadsať rokov uľahčuje život používateľom aj vývojárom softvéru. Electronic Arts neposkytuje len dokumentáciu s otvoreným zdrojovým kódom, ale aj zdrojový kód C na čítanie a zápis súborov IFF.

Formát IFF je spätne kompatibilný a rozšíriteľný. Prvý znamená, že nová verzia programu dokáže jednoducho čítať súbory vytvorené predchádzajúcou verziou. Po druhé, na ukladanie dodatočných informácií nie je potrebné vymýšľať nový formát, stačí v IFF zaviesť vlastné rozšírenie. Štruktúra formátu umožňuje výmenu údajov medzi programami od rôznych výrobcov, ktorí nemajú medzi sebou relevantné obchodné zmluvy. To všetko poteší aj používateľov – po uložení údajov vo formáte IFF už nie sú viazaní na uzavretý formát svojho systému a môžu údaje použiť v akomkoľvek hardvérovom a softvérovom prostredí kompatibilnom s IFF.

Súbor IFF je súbor údajov organizovaných takým spôsobom, že ich môžu čítať rôzne nesúvisiace programy. Na druhej strane, program môže ukladať špecifické informácie v IFF, ktoré dávajú zmysel len jemu samému. Štruktúra IFF to uľahčuje. Iné programy, ktoré nevedia, ako s takými informáciami narábať, ich môžu ignorovať bez ovplyvnenia čítania hlavného obsahu.

Existuje niekoľko typov súborov IFF. Napríklad súbory ILBM a GIFF obsahujú grafické informácie, súbory SMUS obsahujú hudobnú notáciu, súbory AIFF a WAVE obsahujú digitálny zvuk.

Súbor IFF pozostáva z prvkov rovnakého typu, nazývaných bloky (chunks). Blok je dátová štruktúra pozostávajúca z písmenového identifikátora (štyri znaky ASCII), veľkosti bloku (štyri bajty) a samotných údajov (obrázok 5). Je vhodné si predstaviť blok ako shell, v ktorom sú „zabalené“ dáta. Samotné dáta môžu obsahovať čokoľvek: grafiku, text, animáciu, zvuk, súbor 3D objektov atď.

Bloky v súbore IFF môžu byť vnorené, obr. 6. V skutočnosti súbor IFF nie je nič iné ako blok najvyššej úrovne, ktorý obsahuje jeden alebo viacero ďalších blokov. Tento princíp ukladania údajov umožňuje „zabaliť“ niekoľko heterogénnych údajov do súboru, vrátane niekoľkých súborov IFF, ktorý už pripomína súborový systém vo vnútri súboru. Je pravda, že organizácia vnorených údajov má jednu nevýhodu - súbor sa ťažko interpretuje, izoluje z neho bloky.

Väčšina súborov IFF obsahuje blok najvyššej úrovne s identifikátorom „FORM“. Jeho súčasťou sú ďalšie bloky (obr. 7). Jediným údajom v bloku FORM sú štyri bajty popisujúce typ súboru (napr. "ILBM", InterLeaved Bit Map). Vnorené bloky sú umiestnené priamo za nimi, napríklad „BMHD“ (hlavička obrázka), „CMAP“ (paleta) a „BODY“ (samotné pixely). Názvy blokov a formát údajov prichádzajú s vývojárom konkrétneho typu súboru. Iné programy, ak narazia na blok s neznámym názvom, ho môžu bezpečne preskočiť podľa poľa obsahujúceho dĺžku bloku.

Všetky číselné údaje v súboroch IFF sú uložené v poradí big-endian, to znamená, že najskôr sa uloží najvýznamnejší bajt čísla (MSB), potom najmenej významný. Viac o tom na bočnom paneli. Bloky v súbore musia vždy začínať párnym bajtom. Ak predchádzajúci blok obsahuje nepárny počet bajtov, doplní sa nulovým bajtom, aby bol párny.

Ktorý koniec zachrániť?
Pamäť počítača sa skladá z buniek, z ktorých každá sa zmestí presne na jeden bajt. Na prístup k bunke (zápis alebo čítanie bajtu) procesor využíva tzv adresa na mysli. Je to len celé číslo, ktoré bunke pridelil operačný systém (toto zjednodušenie mi snáď informatici odpustia). V reálnom živote jeden bajt zvyčajne nestačí. Dokonca aj na ukladanie celých čísel sa používajú slová, teda skupiny dvoch bajtov, dvojitých alebo štvornásobných slov (resp. štyroch alebo ôsmich bajtov, bližšie pozri prvú časť cyklu). To znamená, že číslo je uložené v niekoľkých susedných bajtoch.

Na obr. 8 ukazuje dva možné spôsoby ich uloženia do pamäte na príklade dvojitého slova. Prvý spôsob - bajty sa ukladajú do pamäte postupne, najvyšší bajt na najnižšiu adresu. To znamená, že MSB vysokého slova je uložený na adrese N, potom LSB vysokého slova (N + 1), MSB nízkeho slova (N + 2), LSB nízkeho slova (N + 3). Takáto metóda sa nazýva big-endian(alebo "priame pridelenie bajtov"). Pri druhom spôsobe je všetko presne naopak, vysoký bajt je uložený na najvyššej adrese: LSB nízkeho slova (N), MSB nízkeho slova (N + 1), LSB vysokého slova (N + 2 ), MSB vysokého slova (N + 3) . Táto metóda sa nazýva little-endian- "reverzné pridelenie bajtov".

To znamená, že rozdiel je v tom, „z ktorého konca“ (konca) je uložená viacbajtová hodnota. Pojmy „big-endian“ a „little-endian“ boli navrhnuté v jednom z článkov na túto tému s odkazom na Gulliver's Adventures od Jonathana Swifta. Ako viete, v Lilipute vzniklo hnutie Big-Endiánov, ktorí sa nechceli podriadiť cisárovmu dekrétu, ktorý nariaďoval rozbíjať varené vajcia len z ostrého konca. V počítačovom svete vyzerá konfrontácia big/little-endian veľmi podobne.

Zástancovia Little-endian argumentujú, že endianness v pamäti uľahčuje vykonávanie aritmetiky na viacbajtových hodnotách, pretože najmenej významné bajty pridané ako prvé sú uložené na nízkych adresách.

Schéma little-endian sa používa v procesoroch kompatibilných s Intelom od Intel 8080 po Intel Pentium IV. Priame umiestnenie (big-endian) - v procesoroch Sun Spark, Motorola 68000 (prvá rada počítačov Apple) a mnohých procesoroch RISC. Ale procesory PowerPC a Intel Itanium rozumejú obom formátom údajov naraz (niekedy sa im hovorí „bi-endian“).

Nezáleží však ani tak na tom, ako počítač ukladá dáta „v sebe“, ale ako ich ukladá „vonku“ do súborov. To je z praktického hľadiska oveľa dôležitejšie. Napríklad, ak je slovo „UNIX“ uložené do súboru systémom big-endian (ako dve dvojbajtové slová), systém little-endian ho prečíta ako „NUXI“. V počítačovom žargóne sa tomu hovorí – „problém NUXI“. Podobné ťažkosti môžu nastať pri ukladaní grafických obrázkov, pretože farby sú kódované ako viacbajtové čísla. Napríklad súbory Adobe Photoshop a JPEG používajú big-endian, zatiaľ čo súbory GIF a BPM používajú little-endian.

Štandardný formát súboru MIDI (SMF) „mimo platformy“ používa metódu big-endian, t. j. najvýznamnejší bajt slova (MSB) je uložený ako prvý.

Štruktúra SMF
Štandardné MIDI súbory, ako sú súbory IFF, pozostávajú z blokov (Chunks). Existujú dva typy blokov: Header Chunk a Track Chunk. V súbore SMF môže byť iba jeden blok hlavičky a jeden alebo viac blokov stopy. Blok má typickú štruktúru IFF: prvé štyri bajty sú identifikátor, ďalšie štyri bajty sú dĺžka bloku v bajtoch, s výnimkou ôsmich bajtov typu/dĺžky. Identifikátor bloku záhlavia sú štyri znaky "MThd", identifikátor bloku stopy sú štyri znaky "MTrk". Táto štruktúra umožní v budúcnosti definovať nové typy blokov a neznámy blok možno ľahko ignorovať na základe jeho dĺžky. Špecifikácia SMF varuje: "Programy by mali byť pripravené ignorovať bloky typov, ktoré nepoznajú."

Blok hlavičky obsahuje všeobecné informácie o súbore, blok stopy obsahuje prúd MIDI správ s časovými značkami. Okrem toho sú v súbore MIDI uložené ďalšie informácie potrebné pre sekvencery: tempo, takt, tónina, nastavenia metronómu a podobne. Tieto informácie sa neprenášajú cez rozhranie MIDI a udalosti, ktoré ich tvoria, sa nazývajú metaudalosti.

MIDI súbor vždy začína blokom hlavičky, za ktorým nasleduje jeden alebo viacero blokov stopy (obrázok 9). To znamená, že každý štandardný súbor MIDI začína štyrmi písmenami „M“, „T“, „h“, „d“. To znamená, že súbor MIDI nezodpovedá špecifikácii IFF (ktorá vyžaduje, aby každý súbor vyhovujúci IFF začínal blokom najvyššej úrovne jedného z troch typov – „FORM“, „CAT“ alebo „LIST“). Existujú aj ďalšie rozdiely: SMF nemôže obsahovať vnorené bloky a dĺžka bloku nemusí byť párna. Konverzia SMF na súbor kompatibilný s IFF je však jednoduchá. Stačí vyplniť nulabajtové bloky nepárnej dĺžky (ak existujú) a umiestniť celý obsah do bloku FORM. Podobná operácia sa používa vo formáte RMID navrhnutom spoločnosťou Microsoft (pozri bočný panel).


Ste tu, pretože máte súbor, ktorý má príponu súboru končiacu na .smf. Súbory s príponou súboru .smf môžu spúšťať iba určité aplikácie. Je možné, že súbory .smf sú skôr dátové súbory ako dokumenty alebo médiá , čo znamená, že „vôbec nie sú určené na prezeranie.

čo je súbor .smf file?

Súbory vo formáte SMF obsahujú zvukové dáta s efektmi a tento formát súboru je integrovaný s podobnými technológiami a funkciami ako súbory s príponou MID. Zvukové stopy s príponou .smf je možné prehrávať pomocou aplikácie Apple QuickTime a tento multimediálny program má okrem inej verzie vyvinutej pre používateľov počítačov Mac aj verziu kompatibilnú so systémami založenými na systéme Microsoft Windows. Združenie výrobcov MIDI integrovalo špecifikácie MIDI do formátu súboru SMF počas jeho vývoja. To znamená, že súbory SMF môžu obsahovať aj rôzne stopy kombinované z rôznych zvukových stôp uložených v niekoľkých súboroch SMF, čo tiež znamená, že súbory vo formáte .smf možno kombinovať a konvertovať do jednej zvukovej stopy vo viac populárnych formátoch, ktoré je možné prezerať a používať vo viacerých Softvér na vývoj digitálnych videoprezentácií a prezentácií dokumentov, multimediálne aplikácie a digitálne audio prehrávače. Používateľom to poskytuje prostriedky na samostatné pridávanie efektov ku každej stope a vykonávanie úprav na ostatných pred ich kombináciou na prehrávanie ako jednej zvukovej stopy. Niektoré z týchto efektov a úprav môžu okrem iného zahŕňať úpravy hlasitosti a výšky tónu, skreslenie a reverb, panorámu a načasovanie. Existujú aplikácie tretích strán, ktoré dokážu konvertovať súbory SMF do formátu MIDI pre širšiu podporu krížovej kompatibility pre viac aplikácií na úpravu zvuku.

ako otvoriť súbor .smf?

Spustite súbor .smf, alebo akýkoľvek iný súbor na vašom PC, dvojitým kliknutím naň. Ak sú vaše priradenia súborov nastavené správne, otvorí ho aplikácia, ktorá má otvoriť váš súbor .smf. Je možné, že si budete musieť stiahnuť alebo zakúpiť správnu aplikáciu. Je tiež možné, že máte na počítači správnu aplikáciu, ale súbory .smf ešte nie sú s ňou spojené. V tomto prípade, keď sa pokúsite otvoriť súbor .smf, môžete systému Windows povedať, ktorá aplikácia je pre daný súbor tá správna. Od tej doby otvorenie súboru .smf otvorí správnu aplikáciu.

aplikácie, ktoré otvárajú súbor .smf

Prehrávač Apple QuickTime

Prehrávač Apple QuickTime

Apple QuickTime Player je softvér na multimediálny prehrávač, ktorý zvláda množstvo súborov rôznych formátov od digitálnych fotografií po panoramatické obrázky, audio až po videá, ako aj interaktivitu. Tento program multimediálneho prehrávača je dostupný pre počítače Mac OS X, ako aj pre novšie verzie počítačov so systémom Windows. Tento softvérový produkt od spoločnosti Apple má súpravy na vývoj softvéru alebo súpravy SDK, ktoré sú dostupné verejnosti, ak sa prihlásite na odber cez Apple Developer Connection alebo ADC. Má rámec QuickTime, ktorý je kompatibilný s inými bezplatnými aplikáciami pre prehrávače, ktoré poskytujú niekoľko funkcií. Patrí medzi ne kódovanie audia a videa, transkódovanie tých istých súborov, dekódovanie s možnosťou poslať dekódovaný tok do grafického subsystému alebo audio subsystému a architektúra komponentových doplnkov na podporu iných kodekov (tretích strán ako DivX). Najnovšia verzia tohto softvéru je QuickTime Player 7, ktorý je možné bezplatne stiahnuť pre počítače Mac a Windows.

varovné slovo

Dávajte pozor, aby ste nepremenovali príponu na .smf súboroch ani na iných súboroch. Toto nezmení typ súboru. Iba špeciálny softvér na konverziu môže zmeniť súbor z jedného typu súboru na druhý.

čo je prípona súboru?

Prípona súboru je sada troch alebo štyroch znakov na konci názvu súboru; v tomto prípade .smf. Prípony súborov informujú o tom, o aký typ súboru ide, a informujú systém Windows o tom, aké programy ho môžu otvoriť. Systém Windows často priraďuje ku každej prípone súboru predvolený program, takže keď na súbor dvakrát kliknete, program sa spustí automaticky. Keď tento program už nie je na vašom počítači, môže sa pri pokuse o otvorenie súvisiaceho súboru niekedy zobraziť chyba.


Sekvencery zvyčajne používajú svoj vlastný formát ukladania pre aranžmány. Je to preto, že dátová štruktúra navrhnutá pre možnosti konkrétneho programu je oveľa efektívnejšia a jednoducho sa s ňou ľahšie pracuje. Do svojho formátu môžete zapisovať ďalšie údaje, napríklad na prispôsobenie používateľského rozhrania (pozícia a veľkosť okna, písmo atď.). Navyše kompaktnosť štandardných MIDI súborov (najmä hodnoty s premenlivou dĺžkou na ukladanie času výskytu udalostí) sa stáva nevýhodou: pre prácu s usporiadaním musia byť všetky delta časy v súbore „rozbalené“ a pri ukladaní súboru sa znova "zbalil".

Na druhej strane, SMF je prenosný multiplatformový formát, môže definovať akékoľvek ďalšie bloky na ukladanie špecifických údajov. Napríklad jeden sekvencer môže uložiť zapnutý alebo vypnutý metronóm v bloku s názvom „Mtr“. Tento blok nie je prekážkou pre iný sekvencer, môže definovať niekoľko vlastných špecifických blokov v tom istom súbore. Takže niektoré sekvencery používajú priamo SMF formát, je pre nich „native“. Iné vám umožňujú importovať a exportovať MIDI súbory podľa potreby.

Na podporu rôznych typov sekvencerov a ďalšieho vybavenia sú štandardné MIDI súbory rozdelené do troch typov alebo formátov: 0, 1 a 2.

Súbor formátu 0 obsahuje jednu stopu, ktorá obsahuje udalosti zo všetkých šestnástich MIDI kanálov. Toto je najjednoduchší formát na výmenu dát, pretože neberie do úvahy pôvodnú štruktúru stopy v sekvenceri (ktorá stopa je priradená ku ktorému MIDI kanálu). Súbor formátu 0 je vhodnejší na prenos údajov do zariadení, ako sú mixéry a efektové procesory, než na ukladanie aranžmán. Pri zápise súboru vo formáte 0 sekvencer jednoducho zlúči všetky správy zo všetkých MIDI kanálov do jednej stopy. Podľa toho pri načítaní súboru dostaneme jednu stopu, kde je problematické editovať udalosti, keďže udalosti pre rôzne kanály sa navzájom prelínajú. Väčšina sekvencerov má schopnosť rozdeliť tento "mix" na samostatné stopy, z ktorých každá obsahuje udalosti pre jeden MIDI kanál.

Súbor Format 1 obsahuje samostatnú stopu pre každý MIDI kanál, čo odráža známu štruktúru usporiadania v sekvenceri. Súbor formátu 2 obsahuje niekoľko nezávislých diel (alebo úplných vzorov), každý vzor pozostáva z jednej stopy obsahujúcej správy na všetkých 16 kanáloch. Tento formát mal byť použitý v tých sekvenceroch, ktoré dokážu pracovať s nezávislými patternami hranými viacerými nástrojmi súčasne. Formát 2 bol však všeobecne ignorovaný a teraz sa v špecifikácii považuje za „nie je určený pre sekvencery“.

Jedným z hlavných rozdielov medzi formátom 0 a 1 je spôsob umiestňovania meta udalostí. Vo formáte 0 sú tempo a meta-udalosti taktu (nazývané mapa tempa) zmiešané s inými MIDI správami. V tomto formáte sa neukladajú ani názvy skladieb. Vo formáte 1 je prvá stopa v súbore vyhradená výhradne pre mapu tempa a ďalšie meta udalosti, ako je názov sekvencie/stopy, poradové číslo, značka, posun SMPTE (pozri nižšie).

Ak v súbore nie je žiadna mapa tempa, tempo sa považuje za 120 BPM a takt je 4/4.

MMA môže v budúcnosti vyvinúť ďalšie SMF formáty na podporu nových dátových štruktúr v sekvenceroch.

Blok hlavičky ("MThd")

Blok hlavičky obsahuje základné informácie o súbore. Bloková štruktúra je znázornená na obr. 11. Pole dĺžky vždy obsahuje číslo 6, počet dátových bajtov hlavičky za týmto poľom. Údaje hlavičky sú tri 16-bitové slová. Prvé slovo (formát) je formát SMF, môže mať jednu z troch hodnôt - 0, 1 a 2. Druhé slovo (ntrks) je počet blokov stôp (t. j. samotných stôp) v súbore. . Pre súbor formátu 0 bude vždy rovný jednej.

Posledné slovo bloku hlavičky (delenie) určuje, ako sa meria čas (časová základňa). Ako už bolo spomenuté, existujú dve metódy: hudobné (takty/doby) a absolútne (založené na časovom kóde), založené na absolútnom čase vo formáte SMPTE. V každom prípade sa delta čas v súbore SMF meria v tikátoch: pri hudobnej metóde sa špecifikuje počet tikov za štvrťrok (to znamená PPQN), s absolútnym - počet tikov v jednom rámci SMPTE. Ak sa najvýznamnejší (15.) bit deliaceho poľa vynuluje, potom sa použije hudobná metóda a zvyšných 15 bitov obsahuje PPQN (až do 32767), obr. 12. Ak je najvýznamnejší bit nastavený na jednotku, potom sa použije absolútna metóda. Dolný bajt (bity 0 až 7) ukladá počet tikov na snímku, vysoký bajt (bity 8 až 15) ukladá formát rámca SMPTE vyjadrený ako záporné hodnoty (-24, -25, -29, -30) . V tomto prípade číslo -29 zodpovedá formátu Drop Frame 30 fps (pozri predchádzajúci článok zo série).

Záporné čísla sa vyberajú preto, lebo sú zapísané vo forme binárneho doplnku (pozri predchádzajúci článok), to znamená, že obsahujú jedničku v najvýznamnejšom bite. A táto jednotka je len znakom absolútneho spôsobu počítania času. Počet tikov na snímku je uložený kladne a zvyčajne nadobúda jednu z nasledujúcich hodnôt: 4 (rozlíšenie ako v časovom kóde MIDI, keď sú na snímku štyri správy štvrťročného rámca), 8, 10, 80 (rozlíšenie jedného bitu v rámci SMPTE ), alebo 100.

Takýto systém umožňuje určiť absolútny čas udalosti s presnosťou 1/128 snímky. Okrem toho, ak nastavíte formát snímky na 25 snímok za sekundu a rozlíšenie na 40 tikov na snímku, potom každý titik bude zodpovedať jednej milisekunde. Pole delenia bude mať v tomto prípade hodnotu 0xE728, bajt 0xE7 je reprezentácia dvojky s hodnotou -25 a 0x28 je číslo 40 v hexadecimálnom zápise.

Blok stopy ("MTrk")

Blok stôp ukladá samotné udalosti, to znamená správy MIDI vybavené časovou značkou. Blok musí obsahovať aspoň jednu udalosť. Štruktúra bloku stopy je rovnaká pre MIDI súbory akéhokoľvek formátu (0, 1 a 2), obr. trinásť.

Udalosť pozostáva z delta času a samotnej MIDI správy, obr. 14. Pripomeňme, že delta čas je uložený ako hodnota s premennou dĺžkou.

Dúfame, že sme vám pomohli vyriešiť problém so súborom SMF. Ak neviete, kde si môžete stiahnuť aplikáciu z nášho zoznamu, kliknite na odkaz (toto je názov programu) - nájdete podrobnejšie informácie o mieste, odkiaľ stiahnuť bezpečnú inštalačnú verziu požadovanej aplikácie .

Návšteva tejto stránky by vám mala pomôcť zodpovedať konkrétne tieto alebo podobné otázky:

  • Ako otvoriť súbor s príponou SMF?
  • Ako previesť súbor SMF do iného formátu?
  • Aká je prípona formátu súboru SMF?
  • Aké programy podporujú súbor SMF?

Ak ste ani po prezretí obsahu na tejto stránke nedostali uspokojivú odpoveď na niektorú z vyššie uvedených otázok, znamená to, že informácie týkajúce sa tu prezentovaného súboru SMF nie sú úplné. Kontaktujte nás pomocou kontaktného formulára a dajte nám vedieť, aké informácie ste nenašli.

Čo ešte môže spôsobiť problémy?

Dôvodov, prečo nemôžete otvoriť súbor SMF, môže byť viac (nielen nedostatok vhodnej aplikácie).
Po prvé- súbor SMF môže byť nesprávne prepojený (nekompatibilný) s aplikáciou nainštalovanou na jeho podporu. V tomto prípade musíte toto pripojenie zmeniť sami. Ak to chcete urobiť, kliknite pravým tlačidlom myši na súbor SMF, ktorý chcete upraviť, a kliknite na možnosť "Otvoriť pomocou" a potom vyberte zo zoznamu program, ktorý ste nainštalovali. Po takejto akcii by problémy s otvorením súboru SMF mali úplne zmiznúť.
Po druhé- súbor, ktorý chcete otvoriť, môže byť jednoducho poškodený. Potom je najlepším riešením nájsť novú verziu alebo ju znova stiahnuť z rovnakého zdroja ako predtým (možno z nejakého dôvodu v predchádzajúcej relácii nebolo sťahovanie súboru SMF dokončené a nedá sa správne otvoriť).

Chcete pomôcť?

Ak máte ďalšie informácie o prípone súboru SMF, budeme vďační, ak ich budete zdieľať s používateľmi našej stránky. Použite uvedený formulár a pošlite nám svoje informácie o súbore SMF.