Condividi tramite


Interfaccia ICodecAPI (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

L'interfaccia ICodecAPI imposta e recupera le impostazioni in un filtro codificatore o decodificatore.

Nota

Le API dichiarate in strmif.h non sono supportate per le app piattaforma UWP (Universal Windows Platform) (UWP). Per usare ICodecAPI in un'app UWP, usa la versione dichiarata in icodecapi.h.

Ereditarietà

L'interfaccia ICodecAPI eredita dall'interfaccia IUnknown . ICodecAPI include anche questi tipi di membri:

Metodi

L'interfaccia ICodecAPI include questi metodi.

 
ICodecAPI::GetAllSettings

Il metodo GetAllSettings ottiene le proprietà correnti del codec e le scrive in un flusso. (ICodecAPI.GetAllSettings)
ICodecAPI::GetDefaultValue

Il metodo GetDefaultValue ottiene il valore predefinito di una proprietà codec. (ICodecAPI.GetDefaultValue)
ICodecAPI::GetParameterRange

Il metodo GetParameterRange ottiene l'intervallo di valori per una proprietà codec. (ICodecAPI.GetParameterRange)
ICodecAPI::GetParameterValues

Il metodo GetParameterValues ottiene l'elenco dei valori possibili per una proprietà codec. (ICodecAPI.GetParameterValues)
ICodecAPI::GetValue

Il metodo GetValue ottiene il valore corrente di una proprietà codec.
ICodecAPI::IsModifiable

Il metodo IsModifiable esegue una query per verificare se è possibile modificare una proprietà codec, in base alla configurazione corrente del codec. (ICodecAPI.IsModifiable)
ICodecAPI::IsSupported

Il metodo IsSupported esegue una query se un codec supporta una determinata proprietà. (ICodecAPI.IsSupported)
ICodecAPI::RegisterForEvent

Il metodo RegisterForEvent registra l'applicazione per ricevere eventi dal codec. (ICodecAPI.RegisterForEvent)
ICodecAPI::SetAllDefaults

Il metodo SetAllDefaults reimposta tutte le proprietà codec sui valori predefiniti. (ICodecAPI.SetAllDefaults)
ICodecAPI::SetAllDefaultsWithNotify

Il metodo SetAllDefaultsWithNotify reimposta tutte le proprietà del codec sui valori predefiniti e restituisce un elenco delle proprietà modificate. (ICodecAPI.SetAllDefaultsWithNotify)
ICodecAPI::SetAllSettings

Il metodo SetAllSettings legge le proprietà del codec da un flusso e le imposta sul codec. (ICodecAPI.SetAllSettings)
ICodecAPI::SetAllSettingsWithNotify

Il metodo SetAllSettingsWithNotify legge le proprietà del codec da un flusso, le imposta sul codec e restituisce un elenco delle proprietà modificate. (ICodecAPI.SetAllSettingsWithNotify)
ICodecAPI::SetValue

Il metodo SetValue imposta il valore di una proprietà codec. (ICodecAPI.SetValue)
ICodecAPI::SetValueWithNotify

Il metodo SetValueWithNotify imposta una proprietà su un codec e restituisce un elenco di altre proprietà modificate di conseguenza. (ICodecAPI.SetValueWithNotify)
ICodecAPI::UnregisterForEvent

Il metodo UnregisterForEvent annulla la registrazione dell'applicazione per un evento del codificatore specificato. (ICodecAPI.UnregisterForEvent)

Commenti

Questa interfaccia definisce un meccanismo generico per l'impostazione delle proprietà su un codec (codificatore o decodificatore). Una proprietà codec è una coppia chiave/valore, in cui la chiave è un GUID e il valore è variant. L'interpretazione dei dati VARIANT dipende dal GUID della proprietà. Per un elenco dei GUID delle proprietà codec, vedere Proprietà dell'API Codec.

Profili codec

I codec possono facoltativamente archiviare le informazioni sul profilo e sulle funzionalità nel Registro di sistema. Queste informazioni consentono alle applicazioni di eseguire query sul dispositivo durante l'enumerazione del dispositivo. I profili predefiniti vengono archiviati nella seguente chiave del Registro di sistema:
HKEY_LOCAL_MACHINE
   Software
      Classes
         CLSID
            Category
               Profiles
Ogni profilo è una chiave del Registro di sistema la cui stringa predefinita è una descrizione testuale del profilo. Ogni valore ha un nome GUID, seguito da un valore stringa contenente il valore GUID numerico. Ad esempio:
C++
  HLKM\Software\Classes\CLSID\<category>\Profiles\DVD
    default "HQ DVD"
    REG_SZ {...} = "0"
    REG_SZ {...} = "1234"
dove {...} è un GUID di proprietà di cui l'applicazione può eseguire il mapping nell'interfaccia utente. Microsoft sta attualmente considerando la definizione di un set di profili standard.

Le funzionalità codec predefinite vengono archiviate in HLKM\Software\Classes\CLSID< category>\Instance< Filtrare CLSID>\Capabilities. Ogni valore ha un nome GUID, seguito da un valore stringa contenente il valore GUID numerico. Ad esempio:

C++
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities
     default "My DVD encoder"
     REG_SZ_MULTI {...}
dove {...} è un GUID di proprietà di cui l'applicazione può eseguire il mapping nell'interfaccia utente.

Requisiti

   
Client minimo supportato Windows XP con SP2 [app desktop | App UWP]
Server minimo supportato Windows Server 2003 R2 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)

Vedi anche

Impostazioni del decodificatore per Windows Media Center Edition

API del codificatore