Per eseguire la ricerca in base al numero di frame usando il lettore asincrono
[La funzionalità associata a questa pagina, Windows Media Format 11 SDK, è una funzionalità legacy. Sono stati sostituiti dal lettore di sorgente e lo scrittore di sink . Lettore Sorgente e Writer Sink sono stati ottimizzati per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice dovrebbe usare Source Reader e Sink Writer invece di 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'oggetto lettore asincrono può essere usato per cercare i numeri di fotogrammi dei flussi video in un file ASF. Per usare la ricerca basata su frame, il file caricato nel lettore deve essere indicizzato per frame. Ogni singolo flusso video può essere indicizzato. Per determinare se un flusso è stato indicizzato per frame, è possibile controllare l'attributo g_wszWMNumberOfFrames nell'intestazione del file chiamando IWMHeaderInfo::GetAttributeByName.
Per cercare i dati in un file ASF in base al numero di frame usando il lettore asincrono, seguire questa procedura.
- Ottenere un puntatore all'interfaccia di IWMReaderAdvanced3 dell'oggetto lettore chiamando IWMReader::QueryInterface.
- Impostare il numero e la durata del frame iniziale chiamando IWMReaderAdvanced3::StartAtPosition. È necessario specificare il numero di flusso di un flusso video con indicizzazione frame. Il lettore sincronizzerà il resto degli output con l'ora di presentazione del frame specificato del flusso specificato e inizierà a fornire i campioni di output.
- Gestire gli esempi come si farebbe normalmente nell'implementazione del metodo IWMReaderCallback::OnSample.
Argomenti correlati