Configurazione dei flussi
L'unica cosa necessaria in un profilo è almeno un flusso. Le altre opzioni forniscono l'accesso a funzionalità più avanzate, ma con il minimo di un flusso che è 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 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 Creare file ASF usando codec di terze parti.
L'elenco seguente riepiloga il processo di configurazione di un flusso.
- Ottenere un oggetto di configurazione del flusso per il flusso.
- Se si crea un flusso usando uno dei codec di 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 di flusso vuoto usando IWMProfile::CreateNewStream.
- Configurare il flusso per soddisfare le esigenze.
- I flussi di tutti i tipi devono essere assegnati 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 la VBR a due passaggi. I flussi video devono essere configurati con le proprietà del frame desiderate.
- I flussi arbitrari hanno requisiti di configurazione diversi in base al 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 frequenza bit e così via. IWMStreamConfig viene ereditato dalle interfacce più recenti, IWMStreamConfig2 e IWMStreamConfig3. Come per tutte le revisioni dell'interfaccia numerate, è sempre necessario recuperare la versione più recente usando il metodo QueryInterface .
La maggior parte delle impostazioni in un flusso viene accessibile tramite IWMMediaProps. Queste impostazioni vengono incapsulate in una struttura WM_MEDIA_TYPE . Per audio e video, la struttura WM_MEDIA_TYPE punta a un'altra struttura con ulteriori informazioni specifiche per il tipo di supporto. Questa struttura secondaria è in genere WAVEFORMATEX per audio e WMVIDEOINFOHEADER per 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 Graphics Device Interface (GDI) 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. |
Recupero di informazioni di configurazione di flusso da codec | Descrive come ottenere informazioni di configurazione di flusso dai codec per garantire una configurazione corretta dei flussi usando i codec Audio e Video di Windows Media. |
Configurazione di flussi audio | Descrive come configurare i flussi audio. |
Configurazione di flussi video | Viene descritto come configurare i flussi video. |
Configurazione di flussi video per la ricerca di prestazioni | Descrive come configurare i flussi video per i quali è importante cercare in modo efficiente. |
Configurazione dei flussi di acquisizione schermata | Viene descritto come configurare i flussi video per l'acquisizione dello schermo. |
Configurazione dei flussi di immagini | Viene descritto come configurare i flussi di immagini. |
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 usare i tipi di flusso arbitrari predefiniti. |
Configurazione dei flussi VBR | Viene descritto come configurare i flussi per usare la codifica a velocità di bit variabile (VBR). |
Configurazione di estensioni delle unità dati | Viene descritto come configurare un flusso in modo che le estensioni dell'unità dati possano essere associate quando il file viene scritto. |
Riutilizzo delle configurazioni di flusso | Descrive i modi in cui è possibile usare oggetti di configurazione di flusso da profili esistenti per creare nuovi profili. |
Argomenti correlati