Configurazione di flussi
[La funzionalità associata a questa pagina, Windows Media Format 11 SDK, è una funzionalità legacy. È stato sostituito dal Lettore Sorgente e dallo Scrittore di Sink . Source Reader e Sink Writer sono stati ottimizzati per Windows 10 e Windows 11. Microsoft consiglia vivamente di usare il Source Reader e il Sink Writer con il nuovo codice invece del Windows Media Format 11 SDK, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.
L'unica cosa richiesta in un profilo è almeno un canale. Le altre opzioni forniscono l'accesso a funzionalità più avanzate, ma con il minimo di un flusso è possibile creare un file ASF. È essenziale comprendere come configurare i flussi prima di creare profili complessi.
Ai fini dei profili, i flussi possono essere suddivisi in due tipi: quelli compressi con codec Windows Media e flussi arbitrari che non vengono elaborati con codec. I flussi audio e i flussi video sono i tipi che usano i codec di Windows Media. Naturalmente, i flussi possono contenere audio o video compressi con un codec di terze parti, ma il processo di configurazione di tale flusso è un caso speciale. Per altre informazioni, vedere Per creare file ASF tramite codec di terze parti.
Nell'elenco seguente viene riepilogato il processo di configurazione di un flusso.
- Ottieni un oggetto di configurazione per il flusso di dati.
- Se si crea un flusso usando uno dei codec Windows Media, è necessario ottenere l'oggetto di configurazione del flusso come formato codec usando i metodi di IWMCodecInfo3.
- Se il flusso è un tipo arbitrario, ottenere un oggetto di configurazione del flusso vuoto usando IWMProfile::CreateNewStream.
- Configurare il flusso per soddisfare le proprie esigenze.
- Ai flussi di tutti i tipi deve essere assegnato un nome, un nome di connessione e un numero di flusso.
- I flussi che usano codec Windows Media devono essere modificati solo in modi predefiniti dal formato codec. Per i flussi audio, è necessario modificare solo le impostazioni VBR (Variable Bit Rate) per VBR a due passaggi. I flussi video devono essere configurati con le proprietà dei fotogrammi desiderate.
- I flussi arbitrari hanno requisiti di configurazione diversi per tipo. Tutti richiedono una frequenza di bit e una finestra del buffer.
- Aggiungere il flusso al profilo chiamando IWMProfile::AddStream.
Tutti i flussi vengono definiti usando oggetti di configurazione del flusso. L'interfaccia principale per un oggetto di configurazione del flusso è IWMStreamConfig, che fornisce metodi per impostare le impostazioni di base di un flusso, ad esempio il numero di flusso, la velocità in bit e così via. IWMStreamConfig viene ereditato dalle interfacce più recenti, IWMStreamConfig2 e IWMStreamConfig3. Come per tutte le revisioni dell'interfaccia numerate, è consigliabile recuperare sempre la versione più recente usando il metodo QueryInterface.
La maggior parte delle impostazioni in un flusso sono accessibili tramite IWMMediaProps. Queste impostazioni vengono incapsulate in una struttura WM_MEDIA_TYPE. Per l'audio e il video, la struttura WM_MEDIA_TYPE punta a un'altra struttura con ulteriori informazioni specifiche del tipo di supporto. Questa struttura secondaria è in genere WAVEFORMATEX per l'audio e WMVIDEOINFOHEADER per il video. Inoltre, i flussi video hanno una struttura terziaria, BITMAPINFOHEADER, che descrive le caratteristiche di un singolo fotogramma di video. BITMAPINFOHEADER è una struttura comune ed è disponibile nella sezione GDI (Graphics Device Interface) di Platform SDK.
Le sezioni seguenti descrivono come configurare i flussi.
Sezione | Descrizione |
---|---|
configurazione comune a tutti i flussi | Descrive la configurazione di flusso di base comune a tutti i tipi di flussi. |
Ottenere informazioni di configurazione dello stream dai codec | Descrive come ottenere informazioni di configurazione di flusso dai codec per garantire una corretta configurazione dei flussi usando i codec audio e video di Windows Media. |
Configurazione dei Flussi Audio | Descrive come configurare i flussi audio. |
configurazione di flussi video | Descrive come configurare i flussi video. |
Configurazione dei flussi video per ottimizzare le prestazioni di ricerca | Viene descritto come configurare i flussi video per i quali è importante eseguire una ricerca efficiente. |
Configurazione dei flussi di acquisizione dello schermo | Descrive come configurare i flussi video per l'acquisizione dello schermo. |
configurazione dei flussi di immagini | Viene descritto come configurare i flussi di immagine. |
uso di flussi audio e video non compressi | Descrive come configurare un flusso audio o video non compresso. |
Configurazione di tipi di flusso arbitrari | Viene descritto come configurare i flussi per l'uso dei tipi di flusso arbitrari predefiniti. |
Configurazione di flussi VBR | Viene descritto come configurare i flussi per l'uso della codifica VBR (Variable Bit Rate Encoding). |
configurazione delle estensioni di unità dati | Viene descritto come configurare un flusso in modo che le estensioni delle unità dati possano essere collegate quando viene scritto il file. |
Riutilizzo delle configurazioni del flusso | Descrive i modi in cui è possibile usare gli oggetti di configurazione di flusso dai profili esistenti per creare nuovi profili. |
Argomenti correlati