Dela via


Kärnljudgränssnitt

Den här programmeringsreferensen för Core Audio SDK innehåller följande gränssnitt:

MMDevice API

MED API:et för Windows Multimedia Device (MMDevice) kan ljudklienter identifiera ljudslutpunktsenheter, fastställa deras funktioner och skapa drivrutinsinstanser för dessa enheter. Huvudfilen Mmdeviceapi.h definierar gränssnitten i MMDevice-API:et. Mer information finns i Om MMEnhets-API.

I följande tabell visas de MMDevice-gränssnitt som är tillgängliga med Core Audio SDK för Windows Vista.

Gränssnitt Beskrivning
IMMDevice Representerar en ljudenhet.
IMMDeviceCollection Representerar en samling ljudenheter.
IMMDeviceEnumerator Innehåller metoder för att räkna upp ljudenheter.
IMMEndpoint Representerar en ljudslutpunktsenhet.
IMMNotificationClient Ger meddelanden när en ljudslutpunktsenhet läggs till eller tas bort, när tillståndet eller egenskaperna för en enhet ändras eller när standardrollen som tilldelats en enhet ändras.

WASAPI

Med WINDOWS Audio Session API (WASAPI) kan klientprogram hantera flödet av ljuddata mellan programmet och en ljudslutpunktsenhet. Huvudfilerna Audioclient.h och Audiopolicy.h definierar WASAPI-gränssnitten. Mer information finns i Om WASAPI-.

I följande tabell visas de WASAPI-gränssnitt som är tillgängliga med Core Audio SDK för Windows Vista och senare.

Gränssnitt Beskrivning
IActivateAudioInterfaceAsyncOperation Representerar en asynkron åtgärd som aktiverar ett WASAPI--gränssnitt och tillhandahåller en metod för att hämta resultatet av aktiveringen.
Gäller från och med Windows 8.
IActivateAudioInterfaceCompletionHandler Tillhandahåller ett återanrop som anger att aktiveringen av ett WASAPI--gränssnittet är slutfört.
Gäller från och med Windows 8.
IAudioCaptureClient Gör att en klient kan läsa indata från en slutpunktsbuffert för avbildning.
IAudioClient Gör att en klient kan skapa och initiera en ljudström mellan ett ljudprogram och ljudmotorn eller maskinvarubufferten för en ljudslutpunktsenhet.
IAudioClock Gör det möjligt för en klient att övervaka datahastigheten för en dataström och den aktuella positionen i dataströmmen.
IAudioClock2
Gör att en klient kan hämta den aktuella enhetspositionen.
IAudioClockAdjustment
Gör att en klient kan ange exempelfrekvensen för en dataström.
IAudioRenderClient Gör att en klient kan skriva utdata till en återgivningsslutpunktsbuffert.
IAudioSessionControl Gör att en klient kan konfigurera kontrollparametrarna för en ljudsession och övervaka händelser i sessionen.
IAudioSessionControl2
Gör att en klient kan hämta information om ljudsessionen.
IAudioSessionManager Gör att en klient kan komma åt sessionskontrollerna och volymkontrollerna för både korsprocess- och processspecifika ljudsessioner.
IAudioSessionManager2
Hanterar alla undermixer, inklusive uppräkning och meddelande om undermixer. Det ger också stöd för att ducka meddelanden.
IAudioSessionEnumerator
Gör att en klient kan räkna upp ljudsessioner.
IAudioStreamVolume Gör att en klient kan styra och övervaka volymnivåerna för alla kanaler i en ljudström.
IChannelAudioVolume Gör att en klient kan styra volymnivåerna för alla kanaler i ljudsessionen som strömmen tillhör.
ISimpleAudioVolume Gör att en klient kan styra huvudvolymnivån för en ljudsession.
IAudioSessionEvents Innehåller meddelanden om sessionsrelaterade händelser, till exempel ändringar i volymnivå, visningsnamn och sessionstillstånd.
IAudioSessionNotification
Skickar meddelanden när sessionsändringar inträffar.
IAudioVolumeDuckNotification
Skickar meddelanden om väntande systemankningar.

DeviceTopology API

Api:et DeviceTopology ger klientprogram möjlighet att gå igenom de funktionella maskinvarutopologierna för ljudåtergivning och inspelningsenheter. Rubrikfilen Devicetopology.h definierar gränssnitten i API:et DeviceTopology. Mer information finns i Enhetstopologier och DeviceTopology API.

I följande tabell visas de DeviceTopology-gränssnitt som är tillgängliga med Core Audio SDK för Windows Vista och senare.

Gränssnitt Beskrivning
IAudioAutoGainControl Ger åtkomst till en maskinvaruautomatisk få kontroll (AGC).
IAudioBass Ger åtkomst till en maskinvarukontroll på basnivå.
IAudioChannelConfig Ger åtkomst till en maskinvarukanalkonfigurationskontroll.
IAudioInputSelector Ger åtkomst till en multiplexerkontroll för maskinvara (indataväljare).
IAudioLoudness Ger åtkomst till en "högljutt" kompensationskontroll.
IAudioMidrange Ger åtkomst till en maskinvarukontroll på mellannivå.
IAudioMute Ger åtkomst till en maskinvarukontroll för ljudavstängning.
IAudioOutputSelector Ger åtkomst till en demultiplexer-maskinvarukontroll (utdataväljare).
IAudioPeakMeter Ger åtkomst till en maskinvarukontroll med högsta mätare.
IAudioTreble Ger åtkomst till en kontroll på diskantnivå för maskinvara.
IAudioVolumeLevel Ger åtkomst till en maskinvaruvolymkontroll.
IConnector Representerar en anslutningspunkt mellan komponenter.
IControlInterface Representerar ett kontrollgränssnitt på en del (underenhet eller anslutningsapp).
IDeviceSpecificProperty Representerar en enhetsspecifik egenskap för en anslutningsapp eller underenhet.
IDeviceTopology Ger åtkomst till topologin för en ljudenhet.
IKsFormatSupport Innehåller information om de ljuddataformat som stöds av en programvarukonfigurerad I/O-anslutning (vanligtvis en DMA-kanal) mellan ljudenheten och systemminnet.
IKsJackDescription Innehåller information om de uttag eller interna anslutningsappar som tillhandahåller en fysisk anslutning mellan en enhet på en ljudadapter och en extern eller intern slutpunktsenhet (till exempel en mikrofon eller CD-spelare).
IKsJackDescription2
Ger bekväm åtkomst till egenskapen KSPROPERTY_JACK_DESCRIPTION2 för en anslutningsapp till en slutpunktsenhet.
IKsJackSinkInformation
Innehåller information om uttagsmottagaren om jacket stöds av maskinvaran.
IPart Representerar en del (anslutningsapp eller underenhet) av en enhetstopologi.
IPartsList Representerar en lista över delar (anslutningsappar och underenheter).
IPerChannelDbLevel Representerar ett allmänt underenhetskontrollgränssnitt som ger kontroll per kanal över volymnivån, i decibel, för en ljudström eller ett frekvensband i en ljudström.
ISubunit Representerar en maskinvaruunderenhet (till exempel en volymnivåkontroll) som ligger i datasökvägen mellan en klient och en ljudslutpunktsenhet.
IControlChangeNotify Ger meddelanden när statusen för en del (anslutningsapp eller underenhet) ändras.

EndpointVolume API

Med EndpointVolume-API:et kan specialiserade klienter styra och övervaka volymnivåerna för ljudslutpunktsenheter. Huvudfilen Endpointvolume.h definierar gränssnitten i EndpointVolume-API:et. Mer information finns i EndpointVolume API .

I följande tabell visas de EndpointVolume-gränssnitt som är tillgängliga med Core Audio SDK för Windows Vista.

Interface Beskrivning
IAudioEndpointVolume Representerar volymkontrollerna på ljudströmmen till eller från en ljudslutpunktsenhet.
IAudioEndpointVolumeEx
Tillhandahåller volymkontroller på ljudströmmen till eller från en enhetsslutpunkt.
IAudioMeterInformation Representerar en högsta mätare på ljudströmmen till eller från en ljudslutpunktsenhet.
IAudioEndpointVolumeCallback Ger meddelanden när volymnivån eller mutingtillståndet för en ljudslutpunktsenhet ändras.

programmeringsreferens