Sink multimediali ASF
Il sink multimediale ASF è il componente finale della pipeline di codifica che consente a un'applicazione di scrivere un file ASF.
Media Foundation offre due tipi di sink multimediali ASF:
- Il sink di file ASF viene usato per archiviare i dati multimediali ASF in un file.
- Il sink di streaming ASF viene usato per scrivere contenuto ASF in un flusso di byte che può essere trasmesso attraverso la rete.
I sink multimediali ASF contengono uno o più sink di flusso, che rappresenta i dati da scrivere per ogni flusso nel file ASF di output. Per le applicazioni di codifica eseguite in Windows Vista, è necessario configurare manualmente la topologia di codifica creando e configurando il sink multimediale ASF e quindi aggiungerlo alla topologia. In Windows 7, se si usano gli oggetti transcode veloci per creare la topologia, non si dispone del sink multimediale direttamente e l'applicazione non chiama alcun metodo nel sink multimediale o in uno dei sink di flusso. Gli oggetti transcode veloci creano un'istanza dei sink multimediali necessari e lo aggiungono alla topologia prima di restituire un riferimento all'applicazione chiamante. Tuttavia, per gli oggetti transcode veloci, esistono alcune restrizioni che si applicano a seconda del tipo di codifica.
Modello a oggetti sink multimediale ASF
I sink multimediali ASF implementano l'interfaccia FMMediaSink ed espongono le interfacce seguenti. Un'applicazione può ottenere un riferimento a queste interfacce chiamando QueryInterface nel sink multimediale ASF che usa per generare esempi di output.
Interfaccia | Descrizione |
---|---|
FMMediaSink | Obbligatorio per tutti i sink multimediali. |
FMFinalizableMediaSink | Implementato dal sink di file ASF che scrive il contenuto multimediale generato in un file. È possibile usare i metodi in questa interfaccia per scaricare i dati e aggiornare l'oggetto intestazione ASF del file di output finale. |
FMClockStateSink | Riceve notifiche di modifica dello stato dall'orologio della presentazione. |
IMFASFContentInfo | L'oggetto ASF ContentInfo è un oggetto a livello WMContainer che archivia principalmente le informazioni sull'oggetto intestazione ASF. Viene usato per creare sink multimediali ASF. |
FMMetadata | Usato per descrivere i metadati per il file ASF. |
FMMetadataProvider | Recupera una raccolta di metadati, per un'intera presentazione o per un flusso nella presentazione. |
ASF File Sink
Il sink di file ASF è un'implementazione di FMMediaSink fornita da Media Foundation che un'applicazione può usare per archiviare i dati multimediali ASF in un file.
È necessario creare, configurare e chiamare i metodi nel sink di file o in uno dei relativi sink di flusso se si usano gli oggetti del livello della pipeline per scrivere un nuovo file ASF. Dopo aver configurato il sink di file, è possibile aggiungerlo alla pipeline di codifica.
Ecco i passaggi generali per l'uso del sink di file ASF:
- Creare il sink di file in-process o out-of-process.
- Configurare il sink di file con tutti i flussi, le proprietà di codifica e le informazioni sui metadati.
- Associare il sink di file al nodo della topologia di output enumerando i sink di flusso o tenendo traccia dei numeri di flusso con nel sink.
Gli argomenti seguenti contengono informazioni dettagliate sull'uso del sink di file ASF:
- Creazione del sink di file ASF
- Aggiunta di informazioni di flusso al sink di file ASF
- Impostazione delle proprietà nel sink di file
- Aggiunta di metadati al sink di file
- Modello di buffer del bucket in perdita
Argomenti correlati