Rtaudio

RTAUDIO is een set C ++ -klassen die een gemeenschappelijke API bieden.
Download nu

Rtaudio Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • GPL
  • Prijs:
  • FREE
  • Naam uitgever:
  • Gary P Scavone
  • Uitgever website:
  • http://www.music.mcgill.ca/~gary/rtaudio/

Rtaudio Tags


Rtaudio Beschrijving

Rtaudio is een set C ++ -klassen die een gemeenschappelijke API bieden. Rtaudio is een set van C ++ -klassen die een gemeenschappelijke API bieden voor realtime audio-ingang / uitgang in Linux (Native Jack, ALSA en OSS), Macintosh OS X, SGI en Windows (DirectSound and Asio) -systemen. Rtaudio vereenvoudigt aanzienlijk het proces van interactie met computer audio hardware. Hier zijn enkele belangrijke functies van "rtaudio": · Object georiënteerd C ++ Design · Eenvoudig, gemeenschappelijke API in alle ondersteunde platforms · slechts twee header-bestanden en één bronbestand voor eenvoudige opname in programmeren Projecten · Toestaan dat gelijktijdige Multi-API-ondersteuning · Blokkerende functionaliteit · Callback-functionaliteit · Uitgebreide audioapparaatparametercontrole · Audio-apparaat Capability-sondering · Automatische interne conversie voor gegevensindeling, kanaalnummercompensatie, de-interleaving en byte-swappingrtaudio bevat het concept van audio Streams, die audio-uitgang (afspelen) en / of invoer (opname) vertegenwoordigen. Beschikbare audio-apparaten en hun capaciteiten kunnen worden opgesomd en vervolgens opgegeven bij het openen van een stroom. Waar van toepassing kan meerdere API-ondersteuning worden gecompileerd en een bepaalde API opgegeven bij het maken van een RTAUDIO-instantie. Zie de sectie API-opmerkingen voor informatie die specifiek is voor elk van de ondersteunde audio-API's. De RTAudio API biedt zowel blokkerende (synchrone) als callback (asynchrone) functionaliteit. Callbacks worden meestal gebruikt in combinatie met grafische gebruikersinterfaces (GUI). Blokkerende functionaliteit is vaak noodzakelijk voor expliciete controle van meervoudige ingangs- / uitgangstream-synchronisatie of wanneer audio moet worden gesynchroniseerd met andere systeemgebeurtenissen. Getting start met versie 3.0, is het nu mogelijk om meerdere API-ondersteuning op een bepaald platform te compileren en een API-keuze op een bepaald platform te maken Tijdens Class Instanceiation. In de volgende voorbeelden wordt er geen API gespecificeerd (in welk geval, rtaudio probeert de meeste "logische" beschikbare API) te selecteren .Het eerste ding dat moet worden gedaan wanneer het gebruik van rtaudio is om een exemplaar van de klasse te maken. De standaardconstructeur scant het onderliggende audiosysteem om te controleren of er ten minste één apparaat beschikbaar is. RTAUDIO maakt vaak gebruik van C ++ -uitzonderingen om fouten te melden, waardoor try / catch blokken rond de meeste ledenfuncties nodig zijn. Het volgende codevoorbeeld toont standaardobject en vernietiging: #Include "rtaudio.h" int main () {rtaudio * audio = 0; // Standaard Rtaudio Constructor Probeer {audio = nieuwe rtaudio (); } Catch (Rterror-fout) {// Handvat de uitzondering hier Fout.PrintMessage (); } // opruimen verwijderen Audio;} Uiteraard toont dit voorbeeld geen van de echte functionaliteit van Rtaudio. Alle toepassingen van Rtaudio moeten echter beginnen met een constructor (standaard of overbelaste variëteiten) en moet eindigen met de vernietiging van de klassen. Verder is het noodzakelijk dat alle klassenmethoden die een C ++-uitzondering kunnen gooien binnen een poging / vangstblok. Wat is nieuw in deze release: · Rtaudio maakt nu gelijktijdige multi-api-ondersteuning mogelijk. U kunt bijvoorbeeld Rtaudio compileren om zowel directsuide als asio-ondersteuning te bieden op Windows-platforms of ALSA, JACK, en OSS-ondersteuning op Linux-platforms. Dit werd bereikt door het creëren van een abstracte basisklasse, RTAPI, met subklassen voor elke ondersteunde API (rtapialsa, rtapijack, rtapioss, rtapids, rtapiasio, rtapicore en rtapial). De klasse rtaudio is nu een "controller" die een exemplaar van een RTAPI-subklasse creëert, gebaseerd op de API-keuze van de gebruiker via een optioneel RTAUDIO :: RTAUDIOAPI instantiatiation argument. Als er geen API is opgegeven, probeert Rtaudio een "logische" API-selectie te maken. · Ondersteuning voor de Audio-server van de Low-latentie is toegevoegd met deze versie van Rtaudio. Het is noodzakelijk om de JACK-server te laten uitvoeren voordat u een exemplaar van rtaudio maakt. · Verschillende API-wijzigingen zijn aangebracht in versie 3.0 van Rtaudio in een poging om meer consistent gedrag te bieden in alle ondersteunde audio-API's. De belangrijkste van deze wijzigingen is dat meerdere stream-ondersteuning van een exemplaar van één RTAUDIO is stopgezet. Dientengevolge zijn stream-ID-invoerargumenten niet langer vereist. Ook is de functie RTAUDIO :: Streamwillblock () Slecht ondersteund door de meeste API's en is verouderd (hoewel de functie nog steeds bestaat in die subclasses van RTAPI die het mogelijk maakt dat het wordt geïmplementeerd). · De functie RTAUDIO :: GetDeviceInfo () gewijzigd om een wereldwijd gedefinieerde rtaudiodeviceinfo-structuur te retourneren. Deze structuur is een vereenvoudigde versie van de vorige rtaudio_device-structuur. Bovendien werd de RTAudio_Format-structuur omgedoopt tot rtaudioformat en gedefinieerd globaal binnen rtaudio.h. Deze wijzigingen zijn aangebracht voor de duidelijkheid en om beter te voldoen aan de standaard C ++ -programmeringspraktijken. · De verklaring van Rterror Class en definitie zijn geëxtraheerd naar een apart bestand (Rterror.h). Dit werd gedaan ter voorbereiding op een nieuwe release van de RTMIDI-klasse (gepland voor zomer 2004).


Rtaudio Gerelateerde software

libgnurdf

Libgnurdf is een GNUPDAAT RDF-bibliotheek die een snelle en gemakkelijke toegang biedt tot RDF (Formatiebestanden van RDF (XML-bronbeschrijving). ...

105

Downloaden

ISQ

ISQ (IK U VRAGEN) is een labeluitbreidingsbibliotheek die u helpt om HTML-formulieren te maken. ...

153

Downloaden

acpi.py

ACPI.PY biedt een uniforme en platformonafhankelijke interface voor ACPI. ...

325

Downloaden