Condividi tramite


Uso di GraphEdit

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

GraphEdit è disponibile in Microsoft Windows Software Development Kit (SDK).https://go.microsoft.com/fwlink/p/?linkid=62332

Il nome dell'applicazione GraphEdit è "graphedt.exe". Dopo aver installato l'SDK, "graphedt.exe" si trova nella directory seguente: \Programmi (x86)\Windows Kits\10\bin\<sdk version>\x64\.

Prima di eseguire GraphEdit, usare l'utilità regsvr32 per registrare le DLL seguenti, che si trovano nella stessa directory:

  • proppage.dll
  • evrprop.dll

Queste DLL consentono a GraphEdit di visualizzare le pagine delle proprietà per alcuni dei filtri DirectShow predefiniti.

Creare un grafico di riproduzione file

GraphEdit può creare un grafico di filtro per la riproduzione di file. Questa funzionalità equivale a chiamare il metodo IGraphBuilder::RenderFile in un'applicazione. Dal menu File fare clic su Render Media File. GraphEdit visualizza una finestra di dialogo Apri file . Selezionare un file multimediale e fare clic su Apri. GraphEdit compila un grafico di filtro per riprodurre il file selezionato.

È anche possibile eseguire il rendering di un file multimediale situato in un URL. Dal menu File fare clic su URL di rendering. GraphEdit visualizza una finestra di dialogo in cui digitare l'URL.

Creare un grafico di filtro

GraphEdit può creare un grafico di filtro personalizzato usando uno dei filtri registrati nel sistema. Dal menu Graph fare clic su Inserisci filtri. Viene visualizzata una finestra di dialogo con un elenco dei filtri nel sistema, organizzati in base alla categoria di filtri. GraphEdit compila questo elenco da informazioni nel Registro di sistema. La figura seguente mostra la finestra di dialogo.

quali filtri si desidera inserire?

Per aggiungere un filtro al grafico, selezionare il nome del filtro e fare clic sul pulsante Inserisci filtri oppure fare doppio clic sul nome del filtro. Dopo aver aggiunto i filtri, è possibile connettere due filtri trascinando il mouse dal pin di output di un filtro al pin di input di un altro filtro. Se i pin accettano la connessione, GraphEdit disegna una freccia che li connette.

connessione di due filtri

Eseguire il grafico

Dopo aver creato un grafico di filtro in Modifica grafico, è possibile eseguire il grafico per verificare se funziona come previsto. Il menu Graph contiene i comandi di menu Play, Pause e Stop. Questi comandi richiamano rispettivamente i metodi IMediaControlRun, Pause e Stop. La barra degli strumenti GraphEdit include pulsanti per questi comandi, nonché:

sospendere, riprodurre e arrestare i pulsanti

Nota

Il comando GraphEdit Stop sospende prima il grafico e cerca di time zero (presupponendo che il grafico sia ricercabile). Per la riproduzione di file, questa azione reimposta la finestra video nel primo fotogramma. GraphEdit chiama quindi IMediaControl::Stop.

 

Se il grafico è ricercabile, è possibile cercarlo trascinando la barra di scorrimento visualizzata sotto la barra degli strumenti. Trascinando la barra del dispositivo di scorrimento viene richiamato il metodo IMediaSeeking::SetPositions .

Visualizza pagine delle proprietà

Alcuni filtri supportano pagine di proprietà personalizzate, che forniscono un'interfaccia utente per l'impostazione delle proprietà nel filtro. Per visualizzare la pagina delle proprietà di un filtro in GraphEdit, fare clic con il pulsante destro del mouse sul filtro e selezionare Proprietà dalla finestra popup. GraphEdit visualizza una pagina delle proprietà contenente i fogli delle proprietà definiti dal filtro (se presente). GraphEdit include inoltre un foglio delle proprietà per ogni pin del filtro. I fogli delle proprietà pin sono definiti da GraphEdit, non dal filtro. Se il pin è connesso, il foglio delle proprietà pin visualizza il tipo di supporto per la connessione. In caso contrario, elenca i tipi di supporti preferiti del pin.

Nota

Per usare le pagine delle proprietà predefinite di GraphEdit, è necessario registrare proppage.dll. Questa DLL è disponibile in Windows SDK. La DLL contiene anche pagine di proprietà aggiuntive per alcuni filtri DirectShow. Queste pagine delle proprietà vengono fornite solo a scopo di debug.

 

Simulazione della compilazione di graph con GraphEdit