Condividi tramite


Aggiunta di un'origine

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

[Questa API non è supportata e può essere modificata o non disponibile in futuro.]

Creare un oggetto di origine allo stesso modo in cui si creano altri oggetti sequenza temporale. Prima di inserirlo nella sequenza temporale, tuttavia, è necessario specificare almeno le proprietà seguenti nell'origine.

Nell'esempio seguente, la clip di origine inizia quattro secondi nel file. La durata del supporto è di 10 secondi, due volte la lunghezza della durata della sequenza temporale, ovvero l'origine verrà riprodotta con una velocità doppia normale. La costante UNITS è definita come 10000000 (10^7) ed è uguale a un secondo.

pSourceObj->SetStartStop(0, 50000000)
BSTR bstrFile = SysAllocStringLen(OLESTR("C:\\example.avi"), 15);
pSource->SetMediaName(bstrFile); 
SysFreeString(bstrFile);
pSource->SetMediaTimes(40000000, 140000000);

Nota

Attualmente, DES non può eseguire contemporaneamente il rendering di più di 75 origini compresse con codec VCM (Video Compression Manager). Inoltre, se il progetto contiene più di 75 origini, è necessario usare la riconnessione dinamica o des non è in grado di visualizzare in anteprima il progetto. Per altre informazioni, vedere IRenderEngine::SetDynamicReconnectLevel.

 

Per altre informazioni sulle origini, vedere Uso delle origini.

Creazione di una sequenza temporale