Drumfix schrieb:
Wusste nicht dass OSX da solche Probleme macht.
Ist ja nicht nur bei OSX so, sondern USB bzw USB MIDI bei OSX
und Windows, durch die ganze Universalität der Schnittstelle, Layer und Dienste.
Über die Vorteile von CoreMIDI will ich mich nicht auslassen, denn die machen auch bei USB MIDI keinen Unterschied, was an USB liegt.
Bei Linux hat man die USB Probleme jedenfalls nicht.
Alsa Midi geht entweder direkt per Rawmidi ohne Umwege auf die Hardware, oder man kann mit Timestamp über die Alsa Sequencer Api gehen (dann schedult ein Kernelthread die Events entsprechend ihren Timestamps.
Das ist sicher direkter, aber kann Alsa MIDI denn auch einen Immediate Mode, also die Blockstruktur von USB beim Senden, aufheben bzw umgehen? DAS wäre ein großer Vorteil, bei Mac/Win gabs nur einmal ein Interface iirc von Roland, was das konnte.
Nach meiner Erfahrung ist nicht die Hardware oder das OS das Problem sondern die Blockbearbeitung in der DAW, und die Auflösung hängt damit von der eingestellten Buffersize ab. z.B. Buffersize 1024 = katastrophale Midiclock. Buffersize 64 = no Problem.
Bessere DAWs verwenden dann noch das Timestamping. Da hat man dann nur höchstens ein Latenzproblem bei grossen Buffern.
Kurzer Einwurf. Ich verwende MIDI nahezu seit es existiert, auf allen möglichen Plattformen und mit allen möglichen Interfaces. Das erste habe ich selbst entwickelt und auch die Ansteuerung dafür programmiert, alles in Maschinensprache auf einem damaligen Heimcomputer. Dann kam der Atari ST mit den ROMport-Boxen, danach ein Mac mit AMT8 an den seriellen Ports unter OMS/FreeMIDI unter 8.x/9.x (altes MacOS) bzw. an Windows 98 und seit OSX dann USB MIDI an Mac und PC. Vom Timing her war der Atari immer noch der Beste, da direkte Ansprache der Schnittstellen (zumidest der Eingenbauten, die für den ROMPort brauchten ja fürs Ausgeben sowas wie einen Treiber, da Atari den ROMport nur zur Eingabe vorgesehen hatte und man mit einer Kombi aus Hard/Software tricksen mußte), gefolgt von den seriellen Interfaces (Mac/Win) oder auch den wenigen Parallelen (Win).
Die Blockbearbeitung ist ja nicht Sache der DAW, sondern USB hat diese Blockstruktur, jedenfalls auf den üblichen Desktop OS. Verwende mal ein seriell angebundenes Interface unter entsprechendem OS, wie zB Windows XP, das ist schon ein Unterschied.
Timestamping ist übrigens nur dann wirklich sinnvoll, wenn man es mit externer Hardware betreibt, denn nur dann wird das Timing auch präzise eingehalten, gerade bei Multiport-Interfaces. Bei Emagic heißt das AMT und macht einen deutlichen Unterschied aus, das durfte ich schmerzlich am eigenen Leib erfahren. AMT geht übrigens nur mit Unitor8 und AMT8, nicht aber mit dem MT4.
Übrigens: die Emagic Interfaces sind USB1.1. Ich hatte hier schon USB2.0 Interfaces, die weniger Ports hatten und beim Timing übelste Probleme machten, besonders bei gleichzeitiger Ausgabe an mehrere Ports und vielen Controllerdaten, da hab ich vor Jahren auch mal Audiodateien hier im Forum dazu gepostet.
Die Emagics waren übrigens sowas wie das Vorbild bei der Entwicklung der iconnectivity Interfaces, hat mir jedenfalls deren CEO mal erzählt.
Ich hab zwar an deren Controlsoftware ständig was zu nörgeln (besonders die für iOS ist fürchterlich), aber die Dinger selbst sind die besten USB MIDI Interfaces, die ich jemals im Einsatz hatte, daher empfehle ich die auch am liebsten.