Kernaudiointerfaces
Deze programmeerreferentie voor de Core Audio SDK bevat de volgende interfaces:
MMDevice-API
Met de MMDevice-API (Windows Multimedia Device) kunnen audioclients audio-eindpuntapparatendetecteren, hun mogelijkheden bepalen en stuurprogramma-exemplaren voor deze apparaten maken. Het headerbestand Mmdeviceapi.h definieert de interfaces in de MMDevice-API. Zie Over MMDevice-APIvoor meer informatie.
De volgende tabel bevat de MMDevice-interfaces die beschikbaar zijn met de Core Audio SDK voor Windows Vista.
Interface | Beschrijving |
---|---|
IMMDevice- | Vertegenwoordigt een audioapparaat. |
IMMDeviceCollection- | Vertegenwoordigt een verzameling audioapparaten. |
IMMDeviceEnumerator | Biedt methoden voor het inventariseren van audioapparaten. |
IMMEndpoint- | Vertegenwoordigt een audio-eindpuntapparaat. |
IMMNotificationClient- | Geeft meldingen wanneer een audio-eindpuntapparaat wordt toegevoegd of verwijderd, wanneer de status of eigenschappen van een apparaat worden gewijzigd of wanneer er een wijziging is in de standaardrol die aan een apparaat is toegewezen. |
WASAPI
Met de Windows Audio Session API (WASAPI) kunnen clienttoepassingen de stroom van audiogegevens tussen de toepassing en een audio-eindpuntapparaatbeheren. Header-bestanden Audioclient.h en Audiopolicy.h definiƫren de WASAPI-interfaces. Zie Over WASAPI-voor meer informatie.
De volgende tabel bevat de WASAPI-interfaces die beschikbaar zijn met de Core Audio SDK voor Windows Vista en hoger.
Interface | Beschrijving |
---|---|
IActivateAudioInterfaceAsyncOperation | Vertegenwoordigt een asynchrone bewerking die een WASAPI-interface activeert en biedt een methode om de resultaten van de activering op te halen. Is van toepassing vanaf Windows 8. |
IActivateAudioInterfaceCompletionHandler | Biedt een callback om aan te geven dat de activering van een WASAPI interface is voltooid. Is van toepassing vanaf Windows 8. |
IAudioCaptureClient | Hiermee kan een client invoergegevens lezen uit een buffer van een capture-eindpunt. |
IAudioClient- | Hiermee kan een client een audiostream maken en initialiseren tussen een audiotoepassing en de audio-engine of de hardwarebuffer van een audio-eindpuntapparaat. |
IAudioClock- | Hiermee kan een client de gegevenssnelheid van een stream en de huidige positie in de stream bewaken. |
IAudioClock2- |
Hiermee kan een client de huidige apparaatpositie ophalen. |
IAudioClockAdjustment |
Hiermee kan een client de samplefrequentie van een stream instellen. |
IAudioRenderClient- | Hiermee kan een client uitvoergegevens schrijven naar een buffer voor een renderingeindpunt. |
IAudioSessionControl | Hiermee kan een client de besturingsparameters voor een audiosessie configureren en gebeurtenissen in de sessie bewaken. |
IAudioSessionControl2 |
Hiermee kan een client informatie over de audiosessie ophalen. |
IAudioSessionManager | Hiermee kan een client toegang krijgen tot de sessiebesturingselementen en volumebesturingselementen voor zowel proces- als processpecifieke audiosessies. |
IAudioSessionManager2 |
Beheert alle submixen, inclusief opsomming en melding van submixen. Het biedt ook ondersteuning voor ducking-meldingen. |
IAudioSessionEnumerator |
Hiermee kan een client audiosessies inventariseren. |
IAudioStreamVolume | Hiermee kan een client de volumeniveaus voor alle kanalen in een audiostream beheren en bewaken. |
IChannelAudioVolume | Hiermee kan een client de volumeniveaus voor alle kanalen in de audiosessie beheren waartoe de stream behoort. |
ISimpleAudioVolume | Hiermee kan een client het volumeniveau van een audiosessie regelen. |
IAudioSessionEvents | Biedt meldingen over sessiegerelateerde gebeurtenissen, zoals wijzigingen op volumeniveau, weergavenaam en sessiestatus. |
IAudioSessionNotification |
Hiermee worden meldingen verzonden wanneer sessiewijzigingen optreden. |
IAudioVolumeDuckNotification- |
Hiermee worden meldingen verzonden over wijzigingen die in behandeling zijn voor systeem-eenden. |
DeviceTopology-API
De DeviceTopology-API biedt clienttoepassingen de mogelijkheid om de functionele hardwaretopologieƫn van audiorenderings- en opnameapparaten te doorlopen. Header-bestand Devicetopology.h definieert de interfaces in de DeviceTopology-API. Zie Device Topologies en DeviceTopology APIvoor meer informatie.
De volgende tabel bevat de DeviceTopology-interfaces die beschikbaar zijn met de Core Audio SDK voor Windows Vista en hoger.
Interface | Beschrijving |
---|---|
IAudioAutoGainControl- | Biedt toegang tot een AGC (Automatic Gain Control) voor hardware. |
IAudioBass | Biedt toegang tot een besturingselement op hardwareniveau op basniveau. |
IAudioChannelConfig- | Biedt toegang tot een hardwarekanaalconfiguratiebeheer. |
IAudioInputSelector | Biedt toegang tot een hardware multiplexer-besturingselement (invoerkiezer). |
IAudioLoudness- | Biedt toegang tot een compensatiebeheer voor 'luidheid'. |
IAudioMidrange | Biedt toegang tot een beheer op midrangeniveau. |
IAudioMute- | Biedt toegang tot een hardwaredempingsbesturingselement. |
IAudioOutputSelector- | Biedt toegang tot een hardware demultiplexer-besturingselement (uitvoerkiezer). |
IAudioPeakMeter | Biedt toegang tot een hardwarepiekmeterbesturing. |
IAudioTreble- | Biedt toegang tot een besturingselement op hardwareniveau. |
IAudioVolumeLevel | Biedt toegang tot een hardwarevolumeregeling. |
IConnector- | Vertegenwoordigt een verbindingspunt tussen onderdelen. |
IControlInterface- | Vertegenwoordigt een besturingsinterface op een onderdeel (subeenheid of verbindingslijn). |
IDeviceSpecificProperty- | Vertegenwoordigt een apparaatspecifieke eigenschap van een connector of subeenheid. |
IDeviceTopology- | Biedt toegang tot de topologie van een audioapparaat. |
IKsFormatSupport | Biedt informatie over de audiogegevensindelingen die worden ondersteund door een door software geconfigureerde I/O-verbinding (meestal een DMA-kanaal) tussen het audioapparaat en het systeemgeheugen. |
IKsJackDescription | Bevat informatie over de aansluitingen of interne connectors die een fysieke verbinding bieden tussen een apparaat op een audioadapter en een extern of intern eindpuntapparaat (bijvoorbeeld een microfoon of cd-speler). |
IKsJackDescription2 |
Biedt handige toegang tot de eigenschap KSPROPERTY_JACK_DESCRIPTION2 van een connector naar een eindpuntapparaat. |
IKsJackSinkInformation- |
Biedt informatie over de jack sink als de aansluiting wordt ondersteund door de hardware. |
IPart- | Vertegenwoordigt een deel (connector of subeenheid) van een apparaattopologie. |
IPartsList | Vertegenwoordigt een lijst met onderdelen (verbindingslijnen en subeenheden). |
IPerChannelDbLevel | Vertegenwoordigt een algemene subeenheidbesturingsinterface die per kanaal controle biedt over het volumeniveau, in decibel, van een audiostream of van een frequentieband in een audiostream. |
ISubunit- | Vertegenwoordigt een hardwaresubeenheid (bijvoorbeeld een besturingselement op volumeniveau) dat zich in het gegevenspad tussen een client en een audio-eindpuntapparaat bevindt. |
IControlChangeNotify- | Geeft meldingen wanneer de status van een onderdeel (connector of subeenheid) wordt gewijzigd. |
EndpointVolume-API
Met de EndpointVolume-API kunnen gespecialiseerde clients de volumeniveaus van audio-eindpuntapparatenbeheren en bewaken. Het headerbestand Endpointvolume.h definieert de interfaces in de EndpointVolume-API. Zie EndpointVolume-API voor meer informatie.
De volgende tabel bevat de EndpointVolume-interfaces die beschikbaar zijn met de Core Audio SDK voor Windows Vista.
Interface- | beschrijving |
---|---|
IAudioEndpointVolume | Vertegenwoordigt de volumebesturingselementen in de audiostream van of naar een apparaat met een audio-eindpunt. |
IAudioEndpointVolumeEx |
Biedt volumebesturingselementen voor de audiostream van of naar een apparaateindpunt. |
IAudioMeterInformation- | Vertegenwoordigt een piekmeter in de audiostream van of naar een audio-eindpuntapparaat. |
IAudioEndpointVolumeCallback- | Geeft meldingen wanneer het volumeniveau of dempingsstatus van een audio-eindpuntapparaat wordt gewijzigd. |