Profiles

[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.

Un profilo è una raccolta di dati che descrive la configurazione di un file ASF. Almeno, un profilo deve contenere impostazioni di configurazione per un singolo flusso.

Le informazioni di flusso in un profilo contengono la frequenza di bit, la finestra del buffer e le proprietà multimediali per il flusso. Le informazioni di flusso per audio e video descrivono esattamente come il supporto è configurato nel file, incluso il codec (se presente) verrà usato per comprimere i dati.

Un profilo contiene anche informazioni sulle varie funzionalità del file ASF che verranno usate nei file creati con esso. Queste includono l'esclusione reciproca, la priorità di flusso, la condivisione della larghezza di banda e le estensioni dell'unità dati.

Le versioni precedenti di Windows Media Format SDK hanno fornito profili di sistema preconfigurati, che possono essere usati per creare tipi comuni di file o modificati leggermente in base alle esigenze dell'applicazione. I profili di sistema non sono supportati per i codec di Windows Media 9 Series. Questo è dovuto al fatto che il numero di tipi di file "comuni" è cresciuto esponenzialmente con l'aggiunta di nuove funzionalità. Si prevede che praticamente ogni autore di contenuti abbia esigenze che vanno oltre le semplici soluzioni fornite dai profili di sistema. È comunque possibile usare i profili di sistema precedenti come luogo iniziale. Per altre informazioni, vedere Uso dei profili di sistema.

È necessario fornire al writer un profilo per ogni file scritto. È possibile specificare un profilo da usare con il writer chiamando IWMWriter::SetProfile.

I dati del profilo esistono in diversi moduli che possono essere usati da Windows Media Format SDK. È anche possibile accedere alle informazioni sul profilo in diversi modi. Ciò può causare confusione su ciò che è un profilo e su come viene usato.

Il diagramma seguente illustra come vengono usati i dati del profilo nell'SDK.

diagramma che mostra il flusso di informazioni sul profilo.

I dati del profilo accettano tre moduli diversi: i dati contenuti in un oggetto profilo in un'applicazione, un file XML su disco e i dati nell'intestazione di un file ASF. Ognuna di queste forme di dati viene visualizzata come rettangolo ombreggiato nel diagramma.

Dati in un oggetto Profile

Quando si modifica un profilo, si usa un oggetto profilo, che incapsula tutti i dati del profilo. È possibile creare un oggetto profilo vuoto usando l'oggetto profile manager. È anche possibile usare l'oggetto profile manager per caricare i dati del profilo esistenti in un oggetto profilo.

La maggior parte dei dati del profilo deve essere aggiunta e modificata tramite l'uso di oggetti che rappresentano singole parti del profilo. Questi includono oggetti di configurazione del flusso, oggetti di esclusione reciproca, oggetti di condivisione della larghezza di banda e un oggetto di priorità di flusso. Ognuno di questi tipi di oggetti può essere creato usando i metodi nell'oggetto profile. Apportare modifiche a questi oggetti non influisce sull'oggetto profilo finché non si usa un metodo nell'oggetto profile per includere i dati aggiornati dall'altro oggetto.

Dati in un file XML

I dati del profilo vengono archiviati su disco sotto forma di file XML con estensione prx. Incluso in Windows Media Format SDK è una raccolta di profili denominati profili di sistema che coprono i tipi più comuni di file ASF. I profili di sistema vengono archiviati in un file denominato WMSysPr9.prx. Si noti che questo file in realtà non contiene profili di sistema per Windows Media 9 Series perché il concetto di profili di sistema non viene più usato. Quando si salvano i propri profili personalizzati, è necessario salvarli nei propri file.

È possibile usare l'oggetto profile manager per salvare i dati da un oggetto profilo a una stringa di testo XML. È quindi possibile usare qualsiasi funzione di I/O file che si desidera salvare la stringa in un file su disco.

Dati nell'intestazione di un file ASF

Il writer accetta le informazioni dal profilo e lo usa per creare i flussi che entrano nella sezione dati del file ASF. La maggior parte dei dati del profilo viene archiviata nella sezione intestazione del file quando viene scritto un file. In fase di riproduzione, l'oggetto lettore (o l'oggetto lettore sincrono) può accedere alle informazioni nell'intestazione del file. In questo caso, l'oggetto di lettura crea un oggetto profilo e lo popola con i dati dell'intestazione.

Quando si accede ai dati del profilo usando il lettore (o lettore sincrono), è possibile apportare modifiche alle informazioni del profilo, ma non è possibile applicare tali modifiche al file nel lettore. È possibile applicare le informazioni del profilo da un file in un lettore a un profilo in un writer per creare un nuovo file con le stesse impostazioni del file nel lettore. In questo caso, le modifiche apportate alle informazioni sul profilo prima di impostare il profilo nel writer verranno riflesse nelle informazioni del profilo registrate dal writer.

Uso dell'editor di profili

Anziché creare profili usando Windows Media Format SDK, è possibile usare l'editor di profili, un'utilità inclusa in Windows Media Encoder. Nell'applicazione di codifica usare il metodo IWMProfileManager::LoadProfileByData per caricare il profilo salvato. In alcuni scenari, ad esempio se si usa un numero limitato di profili che non vengono mai modificati in modo dinamico, potrebbe essere più pratico usare l'Editor profili per creare i profili.

Tuttavia, se si usa l'editor di profili, è consigliabile non usare l'impostazione "Dimensioni video: uguale all'input video". Quando questa casella di controllo viene selezionata, l'editor del profilo creerà un profilo con l'altezza dell'output video e la larghezza impostata su zero. Quando Windows Media Encoder rileva questi profili, imposta i valori corretti in modo che corrispondano all'input video. Tuttavia, il writer in Windows Media Format SDK non lo fa automaticamente, quindi è necessario assicurarsi che l'applicazione imposta le dimensioni del fotogramma video nei casi in cui il profilo non ha alcun.

Nota Alcuni elementi di configurazione del flusso non vengono archiviati nel profilo. I dati nel profilo descrivono il formato del file ASF completato. Le proprietà dei supporti di input e altri dati di configurazione usati dall'oggetto writer per configurare i codec non vengono salvati nel profilo. Include tutte le proprietà impostate usando il metodo IWMPropertyVault::SetProperty .

Oggetto Di condivisione della larghezza di banda

Concetti

Interfaccia IWMProfile

Interfaccia IWMProfileManager

Oggetto Esclusione reciproca

Oggetto Gestione profili

Oggetto configurazione del flusso

Oggetto Priorità di flusso

Uso dei profili