itt is ugyanaz a helyzet, már az elindítás után beállítja a hangszínt, ami utána nem változik. A hangszínt megtartja és válthatom is, de csak a midi pause esetén. Ha stopot nyomok, visszaáll zongorára.
A szinti kijelzőjén persze semmi nem változott a hangszínek változása esetén sem.
"As for received data, the keyboard will respond to the received messages and play the notes using the specified voices (i.e., as selected by the Bank Select and Program Change messages received on each channel). But the channel messages do not affect the keyboard per se, so they cannot be used to change the Main Voice, Dual Voice, or Split Voice, or to control the style playback.
However, there may be exceptions to that. If you set the Main Voice to 000 (i.e., the OTS or One Touch Setting voice), it might be possible to use Bank Select, Program Change, and other channel messages on channel 1 to change the Main Voice and its parameters."
Igen, már én is láttam. De lehet, hogy ezekhez az XG presetekhez előbb XG -módba kell váltani a szinyót? Mindenesetre érdemes lenne kipróbálni.
@prisoft:
Ha a Midiplayer 'Reset' gombján (elsősegély szerű ikon a jobb oldalon) jobb egér gombbal kattintasz lejön egy kontext menü ahol ki tudod választani a Reset típusát.
Ha XG-t választasz, akkor az küld egy XG Reset SysEx üzenetet ha a Reset gombot megnyomod, vagy mindig amikor egy új midi-t betöltesz a lejátszási listáról.
Probáld ki GM kiválasztásával is. A leírás alapján a szinyód GM és XG lite kompatibilis. Készítettem egy teszt midi fájlt (new00001_test.mid) , hogy ne kelljen 16 csatornát végig kattintgatnod.
A fájl megpróbál Overdrive gitárt beállítani és játszani egy C akkordot mind a 16 csatornán. Töltsd be a Midiplayer-be és játszd le, és figyeld meg, hogy bármelyik csatornán hallható-e gitár különböző Reset SysEx-ek küldése esetén, vagy mindegyik csatorna zongorát játszik továbbra is. Valamint nézd azt is, hogy változik-e a kijelződön a Grandpiano felirat mire a fájl végéhez ér a lejátszás.
Szintén csatoltam egy XG spscifikus midi fájlt (AtlantisXG_TheShadows.mid), amelyik XG specifikus SysEx üzenetek segítségével állítja be a hangszereket Program Change üzenetek helyett. Tölts be és játszd le a midiplayer-ben. Meglátjuk, hogy XG specifikus SysEx hangszer beállításokra reagál-e, vagy most is marad zongora a csatornákon...
@prisoft: amikor váltasz hangszínt, klikkelj már oda a zongorabillentyűre (v. a-k betűk közül nyomj le egyet), hogy a szinti amúgy váltja-e a csatornán (vsz. igen)
a bank MSB=0, LSB=0-ra is váltania kellene, oda vannak az XGlite listából a GM hangok is besorolva (65. oldal), pld. MSB=0, LSB=0, PC=0 ->122 Grand Piano
de végül is ez bank change csak felvezetése az őt követő Program Change-nek, ami szükségszerűen 0-15 csatornákra vonatkozik
nem lehet hogy valami CC, v. SYSEX váltja a hangszínt?
Nincs olyan Midi rendszer amelyik a program váltáshoz 112-es Bank LSB-t igényelne, szóval nem valószínű, hogy bármelyik Midi file küldene ilyet. GM nem használ Bankot, GS Bank MSB-t használ variation Bankok eléréséhez, XG ugyan bank LSB-t de mindegyiknél igaz, hogy a Capital Tone-ok Bank MSB 0 és Bank LSB 0-n érhetők el. Ezért ha tartalmaznak is a Midi fájlok Bank MSB és LSB üzeneteket a legtöbb esetben 0 az értékük.
Előbb nézzük meg, hogy működik-e a program váltás Bank LSB 112 küldésével, és ha működik majd ki lehet találni mi legyen az '1 gomb nyomásos program váltás' megoldása.
azért próbáld ki a Zoltán által javasolt Bank Select dolgot (bár nekem gyanús, hogy egy rendes MIDI file is így küldi az elején a hangszer inicializálást, és egyik MIDI fájlodra se váltott a hangszer billentyűs hangja)
Így igaz. Az eredeti felvetés az volt, hogy a szinti nem tud egybillentyűs hangszínváltást -csak háromjegyű kóddal-, ez pedig lejátszás közben túl sok idő. A pc-ről kellene valahogy megoldani hogy egyetlen gombnyomással az előre beállított hangszínre váltson a szintin lejátszott sáv.
Én hivatkoztam e remek kis programot, de a kérdezőnek azt is meg kellene oldania hogy pc-billentyűkkel tudjon gyorsan hangszínt váltani. Egy ilyen progit vagy kiegészítő funkciót mennyire lenne nehéz megírni a playeredhez pl? Köszi!
Az általad linkelt user manual alapján (Panel Voice List) nem elég Program Change (PC) üzenetet küldeni a szintinek, hogy hangszert váltson. A PC üzenet előtt Bank Select MSB (CC#0)és Bank Select LSB (CC#32) controller üzenetek segítségével előbb ki kell választani a megfelelő bankot.
Ez a leírás szerint CC#0->0 és CC#32->112 (113, stb.) küldésével érhető el.
Egy korábbi posztban már valaki meghivatkozta a programom amivel elvégezhetnéd a tesztet:
Midi out-nak válaszd ki a Midi eszközöd (Midi In -ént is kíválaszthatod, de ez most nem lényeges),
Majd állítsd a Bank MSB-t 0-ra a Bank LSB-t pedig 112 -re. Ezután a Program legördülő listából válassz ki hangszereket és nézd meg, hogy a Midi billentyűzeted reagál-e rá. Ha a billentyűzet nem az 1-es csatornán várja az üzeneteket, akkor válaszd ki a megfelelő csatornát is a Channel Up/Down controllal.
a PC-n történő lejátszásnak két fő iránya lehet: - a coolsoft virtualmidisynthez hasonló MIDI driver jellegű programok:
A programom szintén rendelkezik egy beépített szoftver szintetizátorral, ami ugyanazt a motort (Bassmidi) használja, mint a Virtual Midi Synth, de WASAPI output kiválasztása és 10ms buffer beállítása esetén egy speciális pufferelés mentes üzemmódban ASIO-szerű, a VirtualMidiSynth-nél nagyságrenddel jobb késeltetést ad. Ha a billentyűzetedről akarod használni ne felejtsd el engedélyezni a Midi in-t a Device Settings-ben. VSTi pluginokat is betölthetsz a programban, ha a beépített Bassmidi szint és SF2 soundfontok nem nyerik el a tetszésed.
Lehet hogy ez a szinti nem hajlandó befogadni ilyen parancsot, így hát nagyon szépen köszönöm a segítségedet, de amire nem képes az eszköz, azt sajna nem tudjuk megoldani.
Visszatérve az alapkérdésre, lehet hogy az a videó amit első hozzászólásomban belinkeltem a varranger programról, ott sem a szinti hangszóróján szólt, hanem csak midi billentyűzetként használja.
"az lenne a cél, hogy a 1-es sáv ne is szóljon (hiszen azt játszod kézzel)"
Ezt már valahogyan midi átszerkesztéssel megoldanánk. Nem is minden zenében van az 1-esen hangszer, de ha igen, akkor áttennénk máshová. Vagy a szintit kellene áttenni az egyesről valami üres sávra, csak ugye ez sem hajlandó onnan kimozdulni.
ok, én ehhez fűznék reményt: "úgy mit csinál, ha a szintin a PC MODE=2, a MIDI IN=USB és a MIDI through=on, és a MIDI OUT= USB?"
a PC Mode-al pár MIDI küldés paramétert egyszerre állít, a legfontosabb a Local On/Off (amit külön is lehet kapcsolgatni), ezzel lehet ki/be kapcsolni, hogy a billentyű közvetlenül is megszólaltassa a szintit
ha ki van kapcsolva, akkor csak a PC felől jövő dolgok szólnak (úgy láttam a videón, hogy az 1-es csatornán küld a szinti, ha az USB MIDI-IN a PC-n engedve van)
viszont belegondolva lehet így se lesz jó, mert Neked meg az lenne a cél, hogy a 1-es sáv ne is szóljon (hiszen azt játszod kézzel)
Este minden javaslatodat végigpróbálok, de gyanús, hogy a szinti bekapcsolás után az alap zongoráról csak akkor hajlandó hangszínt váltani, ha a rajta lévő nyomógombokkal váltok. Eddig mindig így volt, bármilyen lejátszóval küldöm rá a midit. Ahogy írtad, a szinti nem tudja, hogy neki melyik sávban, milyen hangszeren kell játszania a billentyűleütést, akármilyen parancs is jön be.
Mondjuk az is igaz, hogy ha a lejátszást hamarabb indítottam el és csak utána kapcsoltam be a szintit, akkor minden hangszer az alap zongorán pötyög, tehát a midi elején lévő hangszerkiosztást csak érzékeli normál sorrendnél. Csak ez valahogy nem műxik a billentyűkre.
Mit csinál a PC mode 1 és a 2? Tapasztalatból annyit látok, hogy a hangszer nem ad ki hangot csak a laptopra küldi a leütést (itt kellene a késést elhárítani), illetve látszólag még a laptopra sem küld semmit.
ha mindez nem vezet eredményre, vissza kellene térni az alap problémához, hogy miért nem vált hangszínt a MIDI IN felől érkező parancsra (függetlenül a MIDI lejátszástól)
annak a sípolásnak nem szabadna lennie (esetleg kapcsold ott ki a midi through-t amikor az USB-t MIDI IN-nek használod)
ha jól láttam elküldi a szintinek a hangszín váltást (át is váltja, legalább is mintha más lenne a basszus hang, és ugye ezt a szinti játszotta), csak a szinti "nem tudja", hogy az 1-es csatornára kéne rájátszania
úgy mit csinál, ha a szintin a PC MODE=2, a MIDI IN=USB és a MIDI through=on, és a MIDI OUT= USB?
elvileg ilyenkor megjáratja a a számítógép felé amit a billentyűn játszol
Ha a MIDI-IN-t USB-re állítom, az OUT-ot pedig VirtualMidiSynth-re, akkor működik az F1-F12-es hangszínváltás az első csatornán, de ilyenkor ugye a laptop zenél, nem a szinti. Még nagyobb baj, hogy késik a billentyűleütés hangja vagy fél másodpercet.
Az inputot ha kinullázom, ugyan nem csipog, de még így se váltja át a szintin a hangszert. A lejátszóban átváltja az F1-F12 billentyű, de a szinti csak az alap zongorán játszik. Telefonnal mutatom: https://youtu.be/B_4BJB9uTYk
Szerintem nem megy ki a szintire az F1-F12-re programozott parancs, hanem csak a lejátszót kezeli.
Sajna van még mit tanulnom, mert így sem tudom megcsinálni. A beállításokban a midi inputot és outputot is az usb szintire állítom, és ezzel már annyit elérek hogy (csakis) az 1-es csatornán tudok játszani, hallatszik is, de csak a 001-es hangszerem, azaz a zongora, de az is csipogó hangot ad amíg a billentyű le van nyomva. A csipogást sem tudtam még megszüntetni, és másik csatornán sem tudok játszani.