Jump to content
Ménemszól.hu
  • 0

SysEx probléma USB-MIDI interface-nél


KR~

Kérdés

Sziasztok,

 

A következő problémában kérem segítségeteket.

Ha a számítógépből küldök SysEx adatokat a szintim felé USB-MIDI interface-en keresztül, akkor a szinti nem fogadja rendesen ezeket. Midiox ill. Sounddiver programokkal dolgozom.

Az interfacek amiket próbáltam: Miditech Midiface 4x4, M-Audio Midisport 1x1 és egy nonane interface.

Egyiken sem működik rendesen a SysEx küldés.

A PCI hangkártyám MIDI-jén keresztül (Audiophile 2496) tökéletesen mennek a SysEx adatok.

Ezért úgy gondolom a számítógép USB részénél lehet a hiba vagy már öreg a rendszerem (Win XP).

Hogyan tudnám ezt megoldani?

Köszönöm.

 

Üdv. KR~

 

 

Link to comment
Share on other sites

válasz erre a kérdésre

Recommended Posts

Megoldódott!

 

A megoldás M-Audio Midisport 2x2 Anniversary + DRIVER (M-Audio oldaláról letöltve a drivert).

Driver nélkül ez sem kezeli rendesen a SysExeket!

 

Úgy látszik ezek az USB-MIDI izék nem tudják kezelni a hosszabb SysExeket driver nélkül. :(

 

Köszi még egyszer mindenkinek a válaszokat.

 

Üdv. KR~

Link to comment
Share on other sites

Egyébként el tudom képzelni, hogy azért megy a belsővel, mert ott nincs USB szinkronizációs para. Nem tudom, hogy az XP-nek mi volt az USB protokolja, de egy olyan folyamatos, és szigorú timingos adatfolyamnál, mint amilyen egy sysex továbbítás, probléma lehet az, hogy pl az USB vezérlés ezt "megszaggatja", vagy önkényesen csomagocskákba rendezi, stb.

Még vagy 8 éve csináltam saját programot XP-re, ami sysexet továbbított USB kábelen Yamaha keverőpulthoz. Akkoriban szerintem fogalmam sem volt arról, hogy van-e USB sebesség állítás, viszont a program működött szépen, sosem volt szinkronizációs probléma. Tehát képes az XP USB-n is szépen továbbítani az adatokat.

 

Van egy ilyen elméletem: A számítogépből USB-n keresztül az interface-be gyorsan mennek a adatok. Az interface-nek valszeg nincs megfelelő buffer memóriája amelyben ezeket a gyorsan bejövő adatokat megfelelően tárolja, majd szép lassan MIDI-sebességgel továbbítsa a szinti felé.

De ez csak elmélet.

Én is pont ezért írtam a sebesség beállítását (már ha lehet). Annyi különbséggel, hogy fontos a pontos sebesség, nem elég, ha lassabb.

Még egy dolgot tudok elképzelni, az az, hogy az USB-n a driver automatikusan hozzárakja a lezáró bájtot, míg MIDI-n nem.

Link to comment
Share on other sites

Van egy ilyen elméletem: A számítogépből USB-n keresztül az interface-be gyorsan mennek a adatok. Az interface-nek valszeg nincs megfelelő buffer memóriája amelyben ezeket a gyorsan bejövő adatokat megfelelően tárolja, majd szép lassan MIDI-sebességgel továbbítsa a szinti felé.

De ez csak elmélet.

 

Az hiszem megpróbálkozom norro által javasolt M-audio Midisport 2-vel.

Igen az meglehet még hogy nincs jó buffere az usb-s cuccnak. Az m-audio dolgok biztos hogy megbízhatók ilyen szempontból. Nekem is egy Midisport 1 van. Működik szépen régóta.
Link to comment
Share on other sites

Mint írtam, nincs olyan hogy midi adatátviteli sebesség állítás.

Ajánlom ezt itt elolvasni: http://bitzenede.blog.hu/2014/03/05/miert_7609

 

Köszi a megjegyzést. Én sem MIDI átviteli sebesség állításra gondoltam, hanem USB sebesség állításra. Bocs a pontatlanságért.

 

Van egy ilyen elméletem: A számítogépből USB-n keresztül az interface-be gyorsan mennek a adatok. Az interface-nek valszeg nincs megfelelő buffer memóriája amelyben ezeket a gyorsan bejövő adatokat megfelelően tárolja, majd szép lassan MIDI-sebességgel továbbítsa a szinti felé.

De ez csak elmélet.

 

Az hiszem megpróbálkozom norro által javasolt M-audio Midisport 2-vel.

 

PS. Megkérdezem, h létezik Macen is ez a probléma, mert gondolkozom egy mini mac vásárlásán a távoli jövőben.

 

Üdv. KR~

Link to comment
Share on other sites

hmmm….

 

Nekem a Sysex Librarianban van "transmit speed" ablak, ahol százalékosan lehet lefelé vinni a sebességet 100%-ról tetszőlegesre, ráadásul kimeneti portonként…. A 100% egyébként 3125 bytes/sec értéket jelent, a 0% pedig 1 bytes/sec-et.

 

Ez érdekes, ennek utána kéne jobban járni. Van screenshootod a speed ablakról, mert csak ezt találtam?

Preferences.png

Link to comment
Share on other sites

Egyébként el tudom képzelni, hogy azért megy a belsővel, mert ott nincs USB szinkronizációs para. Nem tudom, hogy az XP-nek mi volt az USB protokolja, de egy olyan folyamatos, és szigorú timingos adatfolyamnál, mint amilyen egy sysex továbbítás, probléma lehet az, hogy pl az USB vezérlés ezt "megszaggatja", vagy önkényesen csomagocskákba rendezi, stb.

Link to comment
Share on other sites

Köszönöm a  a válaszokat.

 

Próbálkozom még egy kicsit, mert még nem működik.

Amit próbáltam: a Midioxban bufferméret állítás (64,128,256).

Sounddiverben Send Pause és Timeout adatokat állítgattam  5000-ig.

Az adatátviteli sebességet hol kell állítani?

DX7II-be küldöm az adatokat.

Megj. A belső hangkártyám midije (Auidiophile 2496) tökéletesen müködik amióta megvan.

Link to comment
Share on other sites

MidiOX-ben lehet buffer méretet állítani az átvitelhez, de ha ahhoz nem nyúltál telepítés óta, elvileg működni kéne. A filtereket még megnézheted minden eszközön, szofton mert alapból a sys.exclusive-ok sok motyónál nem aktívak gyárilag.

Amúgy ez a midi sebesség csalóka mert ez fix a midi szabványából adódóan, hanem az eszközök buffer mérete miatt szoktak ún. Transmit Delay Time-ot változtatni hogy hány milliszekundumonként küldje-fogadja a cucc az adatcsomagokat és mivel szimplex az átviteli forma, nincs is visszajelzés vagy korrekció, újraküldési kérés mint mondjul egy TCP/IP netes protokolnál. Azaz egyszerűbb hasonlattal, ha elment a busz, az utas hoppon marad.

Mi már pl haveroknál találkoztunk pici, csak 128 bájtnyi bufferral Roland szintiben, azon a csoda sem segített ha nagyobb volt a sysex mérete!

Link to comment
Share on other sites

Sziasztok,

 

A következő problémában kérem segítségeteket.

Ha a számítógépből küldök SysEx adatokat a szintim felé USB-MIDI interface-en keresztül, akkor a szinti nem fogadja rendesen ezeket. Midiox ill. Sounddiver programokkal dolgozom.

Az interfacek amiket próbáltam: Miditech Midiface 4x4, M-Audio Midisport 1x1 és egy nonane interface.

Egyiken sem működik rendesen a SysEx küldés.

A PCI hangkártyám MIDI-jén keresztül (Audiophile 2496) tökéletesen mennek a SysEx adatok.

Ezért úgy gondolom a számítógép USB részénél lehet a hiba vagy már öreg a rendszerem (Win XP).

Hogyan tudnám ezt megoldani?

Köszönöm.

 

Üdv. KR~

Szerintem port sebességet csak soros- (esetleg párhuzamos-?) portos interfészeknél lehet(ett) állítani, USB-seknél nem hiszem...

Sound Diverben van egy midiport teszt (loopback): összekötöd a bemenetet egy midikábel segítségével a kimenettel, és leteszteli az átvitelt.

Az is lehet, hogy valamilyen szűrő (pl. sysex filter) be van állítva a problémás portra a MIDI-Ox-ban vagy a Sound Diverben.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...