Per configurare VBR vincolato
[La funzionalità associata a questa pagina, Windows Media Format 11 SDK, è una funzionalità legacy. È stata sostituita da Lettore di origine e Writer sink. Lettore di origine e Writer sink sono stati ottimizzati per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi Lettore di origine e Writer sink anziché 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.
È possibile usare la codifica VBR (con vincoli di velocità a bit) in un flusso per specificare una frequenza media di bit che verrà mantenuta nel contenuto codificato. Si specifica anche la velocità massima di bit del flusso e la finestra di buffer massima richiesta.
Non è possibile sapere qual è la frequenza media di bit per un flusso VBR vincolato prima della codifica, ma è possibile usare una stima approssimativa. Come regola generale, la velocità massima di bit specificata verrà terminata da due a tre volte la frequenza media di bit.
La VBR vincolata deve essere usata insieme alla codifica a due passaggi. La codifica a due passaggi non è impostata nel profilo. È necessario configurare il writer per eseguire un passaggio di pre-elaborazione prima di scrivere il flusso. Per altre informazioni sull'uso della codifica a due passaggi, vedere Uso della codifica Two-Pass.
Per configurare un flusso in un profilo per usare la codifica VBR vincolata, seguire questa procedura.
- Creare un oggetto profile manager chiamando la funzione WMCreateProfileManager .
- Aprire un profilo esistente a cui si vuole aggiungere il supporto VBR. Per altre informazioni sull'apertura dei profili, vedere Uso dei profili.
- Ottenere un oggetto di configurazione del flusso per il flusso che si vuole usare chiamando IWMProfile::GetStream o IWMProfile::GetStreamByNumber.
- Ottenere un puntatore all'interfaccia IWMPropertyVault dell'oggetto di configurazione del flusso chiamando IWMStreamConfig::QueryInterface.
- Abilitare la codifica VBR per il flusso chiamando IWMPropertyVault::SetProperty per la proprietà g_wszVBREnabled .
- Usare le chiamate a IWMPropertyVault::SetProperty per impostare i valori massimi desiderati per le proprietà g_wszVBRBitrateMax e g_wszVBRBufferWindowMax .
- Salvare le modifiche apportate al flusso chiamando IWMProfile::ReconfigStream.
- Salvare il profilo o passarlo all'oggetto writer.
- Configurare il writer per eseguire un passaggio di pre-elaborazione.
Argomenti correlati