Welcome, Guest. Please login or register.


Author Topic: MIDI (Read 46218 times)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: MIDI
« Reply #60 on: 2017.August.15. 16:57:43 »
Lehetne egyébként még a midiplay.com olyan változatait készíteni, amelyek a DAVE hanggenerátorai helyett mást használnak. Például hangminta lejátszást, SID emulációt, vagy egyedi digitális+DAVE hangszerelést (DAVE csatorna + PWM négyszögjelek). Ezek ugyan csak turbós konfiguráción működnének elfogadhatóan, de ha az adatokat menteni lehetne (pl. SID esetén M64 formátumban), akkor az már lejátszható lenne 4 MHz-es gépen is. De nem tudom, van-e értelme időt fordítani rá, valószínűleg rajtam kívül nem használná senki.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: Xorgame (Pascal)
« Reply #61 on: 2017.August.15. 19:24:36 »
Át lehet írni bármelyik zenét, hogy kevesebb csatornát használjon. Valamelyik illene a játékhoz?

Ezzel kapcsolatban a legjobb lenne másokat is megkérdezni, legalábbis akiket még érdekli a játék. :)

Quote
Ha midi fájlként mentek el zenét PC-s szerkesztőből, azt is fel tudod használni?

Igen. A Xorgame lejátszója kezdetlegesebb, mint ami a midiplay.com-ban található, de a korábban feltöltött .mid file-ok DAVE kimenete konvertálva működne. A hangoknak nem kell feltétlenül külön csatornára kerülni, de "Xorgame kompatibilis módban" egyszerre csak 2 négyszögjel és 1 zaj lehet. A midiplay.com-os hanggenerálással kapcsolatban ezek a lényeges információk:
- egyszerre 3 normál zenei hang szólhat a DAVE csatornákat dinamikusan foglalva, a program előnyben részesíti 0. és 2. csatornát, az 1-est akkor használja, ha a másik kettő már foglalt
- a 10-es MIDI csatorna fixen a 3-as DAVE csatornához van rendelve, itt egyszerre mindig csak egy "dob" szólhat, a Note Off eseményeket (hangjegyek hosszát) figyelmen kívül hagyja
- a dobok közül csak a következők működnek: 38 (Acoustic Snare), 39 (Hand Clap), 40 (Electric Snare, ugyanaz mint a 38-as), 42 (Closed High Hat), 46 (Open High Hat). Természetesen ezek csak egyszerű zajok, és nem nagyon emlékeztetnek valódi hangszerekre :oops:
- a következő MIDI programok támogatottak, semmi közük nincs a megfelelő GM hangszerekhez:
0 = Acoustic Grand Piano = Dreamland, eredeti monó verzió
1 = Bright Acoustic Piano = Torzy (torzított hangnál a midiplay.com a "rossz" frekvenciákat automatikusan javítja)
2 = Electric Grand Piano = Freeee (1 másodperc időtartam)
3 = Honky Tonk Piano = Skramble level 1/level 4
4 = Rhodes Piano = Skramble "Space" zene
5 = Chorused Piano = Skramble "Space" zene torzítva
6 = Harpsichord = egyszerű monó ADSR burkológörbe, támogat sustain és release fázist (de ez a harmadik, azaz 1-es csatorna foglalását eredményezheti)
7 = Clavinet = Dreamland sztereó / bal csatorna
8 = Celesta = Dreamland sztereó / jobb csatorna
9 = Glockenspiel = Badiner ADSR burkológörbe sztereó pozíció állítással a billentyűtől függően
10 = Music Box = Badiner kíséret, ez is ADSR
- a billentyű leütés erőssége (velocity) támogatott, lineárisan állítja a hangerőt, de a Xorgame-ben minden hangerő külön burkológörbét hozna létre
- lehetséges a hajlítás (pitch bend), +/- 2 félhang tartományban, a Xorgame ezt pazarló módon tárolná (minden frekvencia külön hangjegy)
- a 7-es vezérlő (hangerő) működik, ez is lineáris, és a Xorgame itt is pazarolná a burkológörbéket
- támogatott a sztereó pzíció állítása (10-es vezérlő = Pan), szinuszos módszerrel, a közép állásnál (64) mindkét csatorna hangereje 100%, ezért a többi pozíció csak a hangerő vagy velocity 3 dB csökkentésével (127->90) működik helyesen
- a 76-os vezérlő a STYLE paramétert állítja, az értéke néggyel osztott (4 = 4 bites torzítás, 8 = 5 bites torzítás, 32 = gyűrűmoduláció)
- a 16 logikai MIDI csatorna mind saját állapottal (vezérlők, hajlítás, stb.) rendelkezik

Természetesen nem kell feltétlenül a midiplay.com-ot használni, ha nem jó a MIDI file, akkor szerkesztem, a fenti lista csak a lehetőségeket szemlélteti, hogy mi működne EP-n. A Xorgame sokkal egyszerűbb lejátszójának a korlátai miatt azonban a vezérlés pazarolná a memóriát vagy burkológörbéket, de néhány hajlított hang nem lenne probléma, és a fix hajlítás (PITCH eltolása) sem.

Offline szipucsu

  • EP addict
  • *
  • Posts: 7336
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 60.0.3112.90 Chrome 60.0.3112.90
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Re: Xorgame (Pascal)
« Reply #62 on: 2017.August.15. 19:57:36 »
A midis téma nekem kicsit magas. De valami hasonlóra gondoltam:
* Slowland.MID (0.4 kB - downloaded 25 times.)
Ez csak pár taktus, valami ilyen jellegű midi zenét tudnék írni. Az egyik csatorna zongoraszerű lehetne, tehát lecseng rajta a hang. A másik csatorna orgonaszerű, tehát folyamatosan szól rajta a hang. Az egyiknek az Acoustic Grand Piano, a másikra a Hammond Organ hangszert lőttem be, de ez csak amolyan tipp, mert EP-n másképp szólna.
Egy harmadik csatornára (10-es midi csatorna, dobok) is belőttem valamit találomra.

Quote
38 (Acoustic Snare), 39 (Hand Clap), 40 (Electric Snare, ugyanaz mint a 38-as), 42 (Closed High Hat), 46 (Open High Hat)
Ezeket milyen "zenei hanggal lehet elérni"? Azért kérdezem, mert én a midi fájlt a Cakewalk Express programmal szerkesztem, és ott kotta formájában kell beírni a zenét. Így a "dobcsatornán" minden dobnak is egy kottafej felel meg. Amit belőttem a dobcsatornára most, az E hang. Ha ezt vesszük, milyen hangoknak van itt értéke? Vagyis az említett dobfajták milyen hangokkal érhetők el?
És ezek a dobok milyen zajnak felelnek meg EP-n? Gondolom, sound source 3, és ahhoz valami fokozatosan elhalkuló envelope. Gondolom, a különböző dobfajtáktól függ, milyen gyorsan halkul el. De a source 3-hoz is megadható style paraméter, így változatosabb lehet a hang, de ezt biztos szintén kihasználtad.
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re:Re: Xorgame (Pascal)
« Reply #63 on: 2017.August.15. 20:18:56 »
Ezeket milyen "zenei hanggal lehet elérni"? Azért kérdezem, mert én a midi fájlt a Cakewalk Express programmal szerkesztem, és ott kotta formájában kell beírni a zenét. Így a "dobcsatornán" minden dobnak is egy kottafej felel meg. Amit belőttem a dobcsatornára most, az E hang. Ha ezt vesszük, milyen hangoknak van itt értéke? Vagyis az említett dobfajták milyen hangokkal érhetők el?

A Cakewalk Express-t nem ismerem. :oops: De a Slowland.MID a 64-es hangot használja (Low Conga), ehhez képest pontosan két oktávval alacsonyabb a snare:

E4 = Low Conga
...
A#2 = Open Hi-Hat
F#2 = Closed Hi-Hat
E2 = Electric Snare
D#2 = Hand Clap
D2 = Acoustic Snare (ugyanaz a hang mint az E2)
18538-0
Szerk.: kottán így néz ki:
18541-1

A "doboknak" egyébként ilyen hangja van, bár ezek helyett lehetnének jobbak is (a fenti kép nélkül talán nem lenne könnyű eldönteni, hogy melyik hang melyik dob :)):
* midiplay.ogg (340.03 kB - downloaded 63 times.)
« Last Edit: 2017.August.15. 20:55:09 by IstvanV »

Online geco

  • EP addict
  • *
  • Posts: 5084
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re:Re: Xorgame (Pascal)
« Reply #64 on: 2017.August.16. 09:16:26 »
Egész jók ezek a dobok, ahhoz képest meg pláne, hogy csak a zajcsatornát használják.
Szerintem a Slowland midi jól szólhat a midiplay "hangszereivel", és egy ilyen nyugtató zene is illik a játékhoz.
A 4 zene közül én a Muszka-t tudnám elképzelni még a játékban, annak olyan érdekes hangzású hangszerei vannak, az tetszik.
« Last Edit: 2017.August.16. 09:42:59 by geco »

Online geco

  • EP addict
  • *
  • Posts: 5084
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: MIDI
« Reply #65 on: 2017.August.16. 10:23:49 »
Szerintem jó ötlet, annyi, hogy leginkább azok használhatják ki a lehetőségeit, akik zenélni szoktak, számomra meg a rá megírt zenék bármibe való beépítése lehet/lesz hasznos.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: MIDI
« Reply #66 on: 2017.August.16. 11:51:40 »
Szerintem jó ötlet, annyi, hogy leginkább azok használhatják ki a lehetőségeit, akik zenélni szoktak, számomra meg a rá megírt zenék bármibe való beépítése lehet/lesz hasznos.

Programba építéshez valószínűleg át kellene írni assembly nyelvre és optimalizálni. És a zene adatot valamilyen formátumban rögzíteni és tárolni. Ez lehet akár a MIDI file formátum "lebutított" változata is, amely csak egy sávos, fejléc nélkül és fix 50.03 Hz-es idő egységgel (tick). De ha nem túl bonyolult a zene, akkor egy másik lehetőség a DAVE regisztereket felvenni (dave_rec.lua) és a Xorgame forrás csomagjában található music_conv_3 programmal konvertálni, ennek a kimenetét egyszerű és gyors rutinnal is le lehet játszani.

A midiplay.com még fejleszthető lenne 2 csatornás (1-es + 3-as csatorna) dobok támogatásával, illetve azzal, hogy több hangot tudjon lejátszani ugyanazon a csatornán időosztásos rendszerben (pl. egy akkord hangjait felváltva 1/50 másodpercenként). Így már egész komoly zenéket is lehetne készíteni, bár a lejátszó bonyolultsága is növekedne. Nem tudom, érdemes lenne-e ezeket megvalósítani, vagy elég lenne csak a meglevő verziót átírni assembly-re.

Offline szipucsu

  • EP addict
  • *
  • Posts: 7336
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 60.0.3112.90 Chrome 60.0.3112.90
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: MIDI
« Reply #67 on: 2017.August.16. 12:21:27 »
Nekem tetszenek ezek a módosítások!
Igaz, még nem tudom, a gyakorlatban hogyan lehetne használni, de midit szerkeszteni tudok, és eleve ahhoz igazíthatom, hogy majd EP-n fog megszólalni.
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re:Re: Xorgame (Pascal)
« Reply #68 on: 2017.August.16. 12:28:35 »
Szerintem a Slowland midi jól szólhat a midiplay "hangszereivel", és egy ilyen nyugtató zene is illik a játékhoz.

Slowland, "Skramble level 1" hangszereléssel:
* slowland4.ogg (1083.93 kB - downloaded 59 times.)

Ez pedig a "Freeee" burkológörbét használja, amit a Xorgame már most is tartalmaz:
* slowland3.ogg (1067.96 kB - downloaded 59 times.)

A dobok helyett természetesen lehet más is.

Offline szipucsu

  • EP addict
  • *
  • Posts: 7336
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 60.0.3112.90 Chrome 60.0.3112.90
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Re: Xorgame (Pascal)
« Reply #69 on: 2017.August.16. 12:47:31 »
Ez a Slowland még csak az eleje valaminek, tegnap ki akartam próbálni, mit lehet István midi konverterével "megetetni". Ha ki tudod egészíteni dobokkal, az nagyon jó! Esetleg fel tudnád rakni a Slowland midi fájlt, amiben a legutóbbi dobok is benne vannak? Onnan folytatnám.

Biztos buta kérdés és már volt róla szó. De hogyan lehet pl. ezt a midi fájlt átalakítani EP-s zenévé (mint amiket ogg-ban mellékeltél)? A midis emulátort feltettem, és azt látom, hogy be lehet rajta állítani midi eszközt, de tovább nem jutottam vele. :oops: A Cakewalk Express midi szerkesztő és lejátszó jó külső midi programnak, vagy fel kéne tennem valami mást is?
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re:Re: Xorgame (Pascal)
« Reply #70 on: 2017.August.16. 13:02:37 »
Ez a Slowland még csak az eleje valaminek, tegnap ki akartam próbálni, mit lehet István midi konverterével "megetetni". Ha ki tudod egészíteni dobokkal, az nagyon jó! Esetleg fel tudnád rakni a Slowland midi fájlt, amiben a legutóbbi dobok is benne vannak? Onnan folytatnám.

Ez a módosított file ("Freeee" változat):
* slowland.mid (1.42 kB - downloaded 60 times.)
A zene kétszer ismétlődik, mint az .ogg file-okban is, de ez könnyen javítható a második felének a törlésével.

A Cakewalk Express-t megnézem Windowson, ez melyik verzió és honnan lehet letölteni?

Online geco

  • EP addict
  • *
  • Posts: 5084
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re:Re: Xorgame (Pascal)
« Reply #71 on: 2017.August.16. 13:09:50 »
Slowland, "Skramble level 1" hangszereléssel:

Ez pedig a "Freeee" burkológörbét használja, amit a Xorgame már most is tartalmaz:

A dobok helyett természetesen lehet más is.
Szerintem jó mind a kettő, és a dobok is bennük.

Offline szipucsu

  • EP addict
  • *
  • Posts: 7336
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 60.0.3112.90 Chrome 60.0.3112.90
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Re: Xorgame (Pascal)
« Reply #72 on: 2017.August.16. 13:19:27 »
A Cakewalk Express-t megnézem Windowson, ez melyik verzió és honnan lehet letölteni?
A program szerint 3.01-es verzió, és 1991 és 1994 között készült. :D Egy csöppet régi, de Windows 95-ös idők óta ezt használom, most Win7-en is ez megy. Nem tudom, le lehet-e még tölteni, de mellékelem a telepítőjét. Telepítésnél azt hiszem, csak a megadott mappába érdemes telepíteni, és a fájlnév hosszúságával vigyázni kell, 8 karakter hosszú lehet, ha minden igaz, és telepítésnél ~ jel is volt a fájl nevében. Az elmentett midi fájlok is azt hiszem, 8 karakter hosszúak lehetnek csak.
* CAKEXP.zip (1102.21 kB - downloaded 27 times.)
De ha már ebből ítélve nem jó a program, feltehetek valamit a gépre, ami jó az EP-s midi célokra.

Szerintem jó mind a kettő, és a dobok is bennük.
Szerintem is!
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Online geco

  • EP addict
  • *
  • Posts: 5084
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: MIDI
« Reply #73 on: 2017.August.16. 13:26:27 »
Programba építéshez valószínűleg át kellene írni assembly nyelvre és optimalizálni. És a zene adatot valamilyen formátumban rögzíteni és tárolni. Ez lehet akár a MIDI file formátum "lebutított" változata is, amely csak egy sávos, fejléc nélkül és fix 50.03 Hz-es idő egységgel (tick). De ha nem túl bonyolult a zene, akkor egy másik lehetőség a DAVE regisztereket felvenni (dave_rec.lua) és a Xorgame forrás csomagjában található music_conv_3 programmal konvertálni, ennek a kimenetét egyszerű és gyors rutinnal is le lehet játszani.
Lehet a teljes MIDI formátum lenne az igazi, akkor midiként is lejátszható lenne, igaz a mérete is nagyobb lenne, vagy arra gondoltál, hogy az ep-re írt midit lebutítani direkt a lejátszóhoz? Ha igen, ez a legszimpatikusabb :)
A második megoldás is jó, talán bonyolultabb zenéknél nagyobb lenne az adathalmaz, mint a butított midi-nél.

A midiplay.com még fejleszthető lenne 2 csatornás (1-es + 3-as csatorna) dobok támogatásával, illetve azzal, hogy több hangot tudjon lejátszani ugyanazon a csatornán időosztásos rendszerben (pl. egy akkord hangjait felváltva 1/50 másodpercenként). Így már egész komoly zenéket is lehetne készíteni, bár a lejátszó bonyolultsága is növekedne. Nem tudom, érdemes lenne-e ezeket megvalósítani, vagy elég lenne csak a meglevő verziót átírni assembly-re.
Én eddig is azt hittem, hogy kétcsatornás :D
A 2. csatorna megszakításra használt, az intézi az időzítést, majd  figyeli a midi portokat?
Nem lehet a 2-es csatornát is bevonni, és 50Hz-es megszakításban csinálni minden egyebet, vagy ez sokat rontana a minőségen? Talán ebben az esetben nem is kéne időosztásos verzió, mert 3 csatorna meg egy dob már egész jól hangzik.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4753
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 54.0 Firefox 54.0
    • View Profile
Re:Re: Xorgame (Pascal)
« Reply #74 on: 2017.August.16. 14:43:24 »
A program szerint 3.01-es verzió, és 1991 és 1994 között készült. :D Egy csöppet régi, de Windows 95-ös idők óta ezt használom, most Win7-en is ez megy. Nem tudom, le lehet-e még tölteni, de mellékelem a telepítőjét.

Nálam a SETUP.EXE nem kompatibilis a Windows verziójával (Windows 7 x64 Professional). :( Talán 16 bites program?

Mindenesetre a lényeg a loopMIDI (vagy hasonló program) használata, ennek a telepítése és elindítása után létrehozható egy "loopback" MIDI port az emulátor és bármilyen szerkesztő vagy lejátszó program összekötéséhez:
18585-0
Ha az első indításkor még nincs port, akkor a "+" gombbal lehet létrehozni egyet.

Most már indítható az ep128emu, a hang beállításoknál ki kell választani a loopMIDI bemenetet (I = bemenet, O = kimenet):
18587-1

Ez ugyan opcionális, de WASAPI hang kimenetet (ha működik) és kisebb puffert használva csökkenthető a hang késése:
18589-2

18591-3
Itt a Latency az alapértelmezett 70 helyett 30. Túl alacsony értéknél akadozik a hang.

MIDI szerkesztőnek ezt töltöttem le a SourceForge-ról, valószínűleg van jobb is, de a loopMIDI használatának a bemutatására ez is megfelel. A slowland.mid egyébként hibás volt :oops:, rossz hangszereket választott és nem működött ezzel a szerkesztővel. Módosított változat:
* slowland2.mid (1.4 kB - downloaded 57 times.)
18594-5

A loopMIDI portot itt is ki kell választani, ezúttal kimenetként:
18596-6

Ha a midiplay.com már fut a megfelelően konfigurált emulátoron, akkor a Play gombra ott szólal meg a zene. A Cakewalk Express felhasználói felülete valószínűleg eltérő, de a lényeg, hogy a loopback-et használja kimenetnek, akkor annak is működnie kell.