Interfacce audio principali
Questo riferimento alla programmazione per Core Audio SDK include le interfacce seguenti:
MMDevice API
L'API Windows Multimedia Device (MMDevice) consente ai client audio di individuare i dispositivi endpoint audio, determinarne le funzionalità e creare istanze del driver per tali dispositivi. Il file di intestazione Mmdeviceapi.h definisce le interfacce nell'API MMDevice. Per altre informazioni, vedere Informazioni sull'API MMDevice.
La tabella seguente elenca le interfacce MMDevice disponibili con Core Audio SDK per Windows Vista.
Interfaccia | Descrizione |
---|---|
IMMDevice | Rappresenta un dispositivo audio. |
IMMDeviceCollection | Rappresenta una raccolta di dispositivi audio. |
IMMDeviceEnumerator | Fornisce metodi per enumerare i dispositivi audio. |
IMMEndpoint | Rappresenta un dispositivo endpoint audio. |
IMMNotificationClient | Fornisce notifiche quando un dispositivo endpoint audio viene aggiunto o rimosso, quando lo stato o le proprietà di un dispositivo cambiano o quando si verifica una modifica del ruolo predefinito assegnato a un dispositivo. |
WASAPI
L'API sessione audio windows (WASAPI) consente alle applicazioni client di gestire il flusso di dati audio tra l'applicazione e un dispositivo endpoint audio. I file di intestazione Audioclient.h e Audiopolicy.h definiscono le interfacce WASAPI. Per altre informazioni, vedere Informazioni su WASAPI.
La tabella seguente elenca le interfacce WASAPI disponibili con Core Audio SDK per Windows Vista e versioni successive.
Interfaccia | Descrizione |
---|---|
IActivateAudioInterfaceAsyncOperation | Rappresenta un'operazione asincrona che attiva un'interfaccia WASAPI e fornisce un metodo per recuperare i risultati dell'attivazione. Si applica a partire da Windows 8. |
IActivateAudioInterfaceCompletionHandler | Fornisce un callback per indicare che l'attivazione di un'interfaccia WASAPI è stata completata. Si applica a partire da Windows 8. |
IAudioCaptureClient | Consente a un client di leggere i dati di input da un buffer dell'endpoint di acquisizione. |
IAudioClient | Consente a un client di creare e inizializzare un flusso audio tra un'applicazione audio e il motore audio o il buffer hardware di un dispositivo endpoint audio. |
IAudioClock | Consente a un client di monitorare la frequenza dei dati di un flusso e la posizione corrente nel flusso. |
IAudioClock2 |
Consente a un client di ottenere la posizione corrente del dispositivo. |
IAudioClockAdjustment |
Consente a un client di impostare la frequenza di campionamento di un flusso. |
IAudioRenderClient | Consente a un client di scrivere dati di output in un buffer dell'endpoint di rendering. |
IAudioSessionControl | Consente a un client di configurare i parametri di controllo per una sessione audio e di monitorare gli eventi nella sessione. |
IAudioSessionControl2 |
Consente a un client di ottenere informazioni sulla sessione audio. |
IAudioSessionManager | Consente a un client di accedere ai controlli sessione e ai controlli del volume sia per sessioni audio specifiche del processo che per le sessioni audio specifiche del processo. |
IAudioSessionManager2 |
Gestisce tutti i submix, tra cui enumerazione e notifica di sottomix. Fornisce inoltre supporto per le notifiche di anatraggio. |
IAudioSessionEnumerator |
Consente a un client di enumerare le sessioni audio. |
IAudioStreamVolume | Consente a un client di controllare e monitorare i livelli di volume per tutti i canali in un flusso audio. |
IChannelAudioVolume | Consente a un client di controllare i livelli di volume per tutti i canali nella sessione audio a cui appartiene il flusso. |
ISimpleAudioVolume | Consente a un client di controllare il livello di volume master di una sessione audio. |
IAudioSessionEvents | Fornisce notifiche di eventi correlati alla sessione, ad esempio modifiche a livello di volume, nome visualizzato e stato della sessione. |
IAudioSessionNotification |
Invia notifiche quando si verificano modifiche alla sessione. |
IAudioVolumeDuckNotification |
Invia notifiche sulle modifiche di anatramento del sistema in sospeso. |
DeviceTopology API
L'API DeviceTopology offre alle applicazioni client la possibilità di attraversare le topologie hardware funzionali del rendering e dell'acquisizione di dispositivi audio. Il file di intestazione Devicetopology.h definisce le interfacce nell'API DeviceTopology. Per altre informazioni, vedere Topologie di dispositivo e API DeviceTopology.
La tabella seguente elenca le interfacce DeviceTopology disponibili con Core Audio SDK per Windows Vista e versioni successive.
Interfaccia | Descrizione |
---|---|
IAudioAutoGainControl | Fornisce l'accesso a un controllo AGC (Automatic Gain Control) hardware. |
IAudioBass | Fornisce l'accesso a un controllo a livello di basso hardware. |
IAudioChannelConfig | Fornisce l'accesso a un controllo di configurazione del canale hardware. |
IAudioInputSelector | Fornisce l'accesso a un controllo multiplexer hardware (selettore di input). |
IAudioLoudness | Fornisce l'accesso a un controllo di compensazione "ad alta voce". |
IAudioMidrange | Fornisce l'accesso a un controllo a livello intermedio hardware. |
IAudioMute | Fornisce l'accesso a un controllo di disattivazione dell'hardware. |
IAudioOutputSelector | Fornisce l'accesso a un controllo demultiplexer hardware (selettore di output). |
IAudioPeakMeter | Fornisce l'accesso a un controllo del contatore di picco hardware. |
IAudioTreble | Fornisce l'accesso a un controllo a livello di treble hardware. |
IAudioVolumeLevel | Fornisce l'accesso a un controllo del volume hardware. |
I Connessione or | Rappresenta un punto di connessione tra i componenti. |
IControlInterface | Rappresenta un'interfaccia di controllo in una parte (subunit o connettore). |
IDeviceSpecificProperty | Rappresenta una proprietà specifica del dispositivo di un connettore o di una subunit. |
IDeviceTopology | Fornisce l'accesso alla topologia di un dispositivo audio. |
IKsFormatSupport | Fornisce informazioni sui formati di dati audio supportati da una connessione I/O configurata dal software (in genere un canale DMA) tra il dispositivo audio e la memoria di sistema. |
IKsJackDescription | Fornisce informazioni sui jack o sui connettori interni che forniscono una connessione fisica tra un dispositivo in una scheda audio e un dispositivo endpoint esterno o interno (ad esempio, un microfono o un lettore CD). |
IKsJackDescription2 |
Fornisce un accesso pratico alla proprietà KSPROPERTY_JACK_DESCRIPTION2 di un connettore a un dispositivo endpoint. |
IKsJackSinkInformation |
Fornisce informazioni sul sink jack se il jack è supportato dall'hardware. |
IPart | Rappresenta una parte (connettore o subunit) di una topologia del dispositivo. |
IPartsList | Rappresenta un elenco di parti (connettori e sottouniti). |
IPerChannelDbLevel | Rappresenta un'interfaccia di controllo di subunit generica che fornisce il controllo per canale sul livello del volume, in decibel, di un flusso audio o di una banda di frequenza in un flusso audio. |
ISubunit | Rappresenta una subunit hardware (ad esempio, un controllo a livello di volume) che si trova nel percorso dei dati tra un client e un dispositivo endpoint audio. |
IControlChangeNotify | Fornisce notifiche quando lo stato di una parte (connettore o subunit) cambia. |
EndpointVolume API
L'API EndpointVolume consente ai client specializzati di controllare e monitorare i livelli di volume dei dispositivi endpoint audio. Il file di intestazione Endpointvolume.h definisce le interfacce nell'API EndpointVolume. Per altre informazioni, vedere EndpointVolume API .
La tabella seguente elenca le interfacce EndpointVolume disponibili con Core Audio SDK per Windows Vista.
Interfaccia | Descrizione |
---|---|
IAudioEndpointVolume | Rappresenta i controlli del volume nel flusso audio da o verso un dispositivo endpoint audio. |
IAudioEndpointVolumeEx |
Fornisce controlli del volume nel flusso audio da o verso un endpoint del dispositivo. |
IAudioMeterInformation | Rappresenta un misuratore di picco nel flusso audio da o verso un dispositivo endpoint audio. |
IAudioEndpointVolumeCallback | Fornisce notifiche quando cambia il livello del volume o lo stato di disattivazione di un dispositivo endpoint audio. |