Differenze tra le versioni di "Salvare in un file OGV una ripresa video mediante una WebCam con il Componente gb.media"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "Il Componente ''gb.media'', utilizzando particolari plugin di ''GStreamer'', consente di salvare una ripresa video mediante una WebCam in un file di formato OGV. Vediamo un...") |
|||
Riga 38: | Riga 38: | ||
====Mostrare nel video anche il tempo trascorso==== | ====Mostrare nel video anche il tempo trascorso==== | ||
Per mostrare nella finestra del video anche il tempo trascorso dall'inizio della ripresa video, è necessario utilizzare il plugin ''timeoverlay'': | Per mostrare nella finestra del video anche il tempo trascorso dall'inizio della ripresa video, è necessario utilizzare il plugin ''timeoverlay'': | ||
− | '''Public''' Sub Main() | + | '''Public''' Sub Main() |
− | + | ||
Dim pl As MediaPipeline | Dim pl As MediaPipeline | ||
Dim src, tim, the, ogg, snk As MediaControl | Dim src, tim, the, ogg, snk As MediaControl |
Versione delle 09:05, 24 giu 2017
Il Componente gb.media, utilizzando particolari plugin di GStreamer, consente di salvare una ripresa video mediante una WebCam in un file di formato OGV.
Vediamo un esempio - privo di audio - con un'applicazione a riga di comando:
Public Sub Main() Dim pl As MediaPipeline Dim src, the, ogg, snk As MediaControl Dim ftr As MediaFilter pl = New MediaPipeline src = New MediaControl(pl, "v4l2src") ftr = New MediaFilter(pl, "video/x-raw,width=640,height=480,framerate=30/1") the = New MediaControl(pl, "theoraenc") ogg = New MediaControl(pl, "oggmux") ogg["name"] = "mux" snk = New MediaControl(pl, "filesink") snk["location"] = "/percorso/del/file.ogv" ' Colleghiamo fra loro i plugin di "GStreamer": src.LinkTo(ftr) ftr.LinkTo(the) the.LinkTo(ogg) ogg.LinkTo(snk) ' Avvia la ripresa video: pl.Play() While True ' Il tempo trascorso dall'inizio della ripresa video viene mostrato in console/Terminale: Write #File.Out, "\rTempo: " & Date(0, 0, 0, 0, 0, 0, pl.Position * 1000) Wend End
Mostrare nel video anche il tempo trascorso
Per mostrare nella finestra del video anche il tempo trascorso dall'inizio della ripresa video, è necessario utilizzare il plugin timeoverlay:
Public Sub Main() Dim pl As MediaPipeline Dim src, tim, the, ogg, snk As MediaControl Dim ftr As MediaFilter pl = New MediaPipeline src = New MediaControl(pl, "v4l2src") ftr = New MediaFilter(pl, "video/x-raw,width=640,height=480,framerate=30/1") tim = New MediaControl(pl, "timeoverlay") the = New MediaControl(pl, "theoraenc") ogg = New MediaControl(pl, "oggmux") ogg["name"] = "mux" snk = New MediaControl(pl, "filesink") snk["location"] = "/percorso/del/file.ogv" ' Colleghiamo fra loro i plugin di "GStreamer": src.LinkTo(ftr) ftr.LinkTo(tim) tim.LinkTo(the) the.LinkTo(ogg) ogg.LinkTo(snk) ' Avvia la ripresa video: pl.Play() While True ' Mostra anche in console/Terminale il tempo trascorso dall'inizio della ripresa video: Write #File.Out, "\rTempo: " & Date(0, 0, 0, 0, 0, 0, pl.Position * 1000) Wend End