Differenze tra le versioni di "Conoscere le dimensioni di un video mediante il Componente gb.media"
Da Gambas-it.org - Wikipedia.
(Una versione intermedia di uno stesso utente non è mostrata) | |||
Riga 33: | Riga 33: | ||
dcb = New MediaControl(pl, "decodebin") | dcb = New MediaControl(pl, "decodebin") | ||
con = New MediaControl(pl, "videoconvert") | con = New MediaControl(pl, "videoconvert") | ||
− | xis = New MediaControl(pl, " | + | <FONT Color=gray>' ''Il plugin "fakesink" impedisce che sia mostrata, seppur per un attimo, un'immagine del video:''</font> |
+ | xis = New MediaControl(pl, "fakesink") | ||
src.LinkTo(dcb) | src.LinkTo(dcb) |
Versione attuale delle 04:34, 1 lug 2024
Per conoscere le dimensioni (Width, Height) in pixel di un video mediante il Componente gb.media, sarà possibile utilizzare almeno due modalità.
Usando la Classe MediaPlayer
Mostriamo un semplice esempio pratico:
Public Sub Main() Dim mp As New MediaPlayer mp.URL = Media.URL("/percorso/del/file/video") mp.Play With mp.Video.Image Print "Dimensione del video: " & .W; "x"; .H & " pixel" End With mp.Close Quit End
Usando le Classi MediaPipeline e MediaControl
Mostriamo un semplice esempio pratico adoperando il plugin Decodebin di GStreamer:
Public Sub Main() Dim pl As New MediaPipeline Dim src, dcb, con, xis As MediaControl src = New MediaControl(pl, "filesrc") src["location"] = "/percorso/del/file/video" dcb = New MediaControl(pl, "decodebin") con = New MediaControl(pl, "videoconvert") ' Il plugin "fakesink" impedisce che sia mostrata, seppur per un attimo, un'immagine del video: xis = New MediaControl(pl, "fakesink") src.LinkTo(dcb) dcb.LinkLaterTo(con) con.LinkTo(xis) pl.Play() With xis.GetLastImage() Print "Dimensione del video: "; .W; "x"; .H; " pixel" End With pl.Close End