Stap 1: De Core Utility: Jack Audio Connection Kit
Traditioneel, werd audio behandeld door analoge componenten; Dit zijn de elektrische apparaten die gebruikmaken van circuits om het signaal doorgeven via hen. Elke component heeft ingangen, uitgangen, of zelfs beide. Eenvoudig kunt u kabels sluit de uitgang van één apparaat in de ingang van een ander apparaat. Op deze manier maakt u signaal ketens die bestaan uit een audio capture-apparaat (meestal een microfoon), een apparaat afspelen van audio (meestal luidsprekers of koptelefoon), een audio-opname-apparaat (single - of multi - track recorders) en een reeks van filters; het geluid wordt opgepikt door het vastlegapparaat en vervolgens verzonden via de filters in het opnameapparaat en/of de afspeelapparaten terechtkomen.
Bovendien, door het gebruik van de Musical Instrument Device Interface (MIDI), de MIDI tijd Code (MTC) geëvolueerd; deze technologie maakt het mogelijk alle MIDI-apparaten te delen hun tijdlijnen, zodat wanneer u iets van een bepaalde plaats spelen, alle MTC-compatibele apparaten hun timers zal ingesteld op die exacte plek zodat alle MIDI apparaten gesynchroniseerd blijven zal.
In Linux, worden deze paradigma's onderhouden door de servertoepassing, bekend als "JACK," wat staat voor "Jack Audio Connection Kit." Ja, dat opzettelijk was. Nee, ik had niets te maken met het. Ja, fantasieën iemand zelf een komiek.
Alle grapje terzijde, deze server probeert te simuleren van deze twee technologieën binnen de computer.
De primaire taak is om te functioneren als een set van virtuele kabels aansluiten, nogmaals, de uitvoer van een apparaat (of programma) met de input van een ander apparaat (of programma). Op deze manier kunt u elk één Jack-compatibel programma, en ALSA/FFADO compatibel apparaat, behandelen alsof het een analoog apparaat, met in- en uitgangen die kunnen worden aangesloten op andere programma's of apparaten. MIDI kan ook worden aangesloten op binnen de computer op deze manier.
De secundaire taak is om te functioneren als een tijdlijn controle. In tegenstelling tot MIDI tijdcodes, Jack handhaaft de huidige plek in de tijdlijn en alle compatibele programma's, MIDI of Nee, zal houden zich op dezelfde plek op deze tijdlijn. Op deze manier zijn alle Jack-compatibele programma's op hetzelfde moment in een productie, dat kan handig zijn als u afzonderlijke sequencer, DAW en videosoftware pakketten gebruikt. Deze functie staat bekend als de "Jack Transport."
Jack heeft een paar frontends; Deze zijn belangrijk op de hoogte.
De klassieke frontend staat bekend als het QT Jack controle. Dit hulpprogramma is een nietje in Jack, en is beschikbaar in alle systemen kunnen worden uitgevoerd van Jack. Het heeft windows voor het configureren van Jack, verbindingen tussen programma's maken en opslaan van deze verbindingen voor later opnieuw gebruiken. Zijn er ook besturingselementen voor het starten, stoppen, en het veranderen van de huidige positie in de gedeelde tijdlijn.
Voor verbindingen zou een eenvoudiger hulpmiddel te gebruiken een programma genaamd "Patchage." Patchage kan niet configureren van Jack, pas kan beginnen of stoppen van de server, noch kan het enige invloed op Jack's gedeelde tijdlijn hebben. Echter, het bestaat uit een zwart venster met de naam van een "flowcanvas" dat tracks jack verbindingen als je naar een stroomdiagram kijkt.
Daarna ontstond een latere frontend systeem voor Jack, samenvoegen van het besturingselement QT Jack, Patchage en een betrouwbare en flexibele sessiebeheer genaamd "Ladish." De frontend systeem omvat een lade applicatie, genaamd "LadiTray," en een volledige verbinding en sessie management GUI genaamd "Gladish." Gladish heeft volledige sessieondersteuning, wat betekent dat het kan niet alleen starten en verbinden van groepen van Jack-compatibele toepassingen, het bespaart ook de gehele collectie om ervoor te zorgen dat het opnieuw kan worden gebruikt zonder dat het extra werk te blazen van de programma's en sluit opnieuw de ketens. Het nadeel aan de Gladish GUI is dat het ontbreekt de transportknoppen beschikbaar in het besturingselement QT Jack, maar de mogelijkheid kan worden gedupliceerd in andere programma's. Ik ben geneigd om het programma "gjacktransport" liever voor dit doel, aangezien het toestaat expliciete controle over het huidige frame in de tijdlijn.
In de screenshot ziet u drie programma's. Het grote venster met de zwarte achtergrond (flowcanvas) is de sessie manager GUI genaamd Gladish. Het kleinere venster boven de flowcanvas posten is de QT Jack controle. Het groene vak aan de rechterkant is een gebufferde opnameprogramma genaamd "Time Machine," die zal alles beginnen tien seconden (configureerbaar) voordat u daadwerkelijk op de knop registreren.