Salvare in un file OGV una ripresa video mediante una WebCam con il Componente gb.media
Da Gambas-it.org - Wikipedia.
Versione del 9 ago 2017 alle 19:36 di Vuott (Discussione | contributi)
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:
Private bo As Boolean Public Sub Main() Dim pl As MediaPipeline Dim src, the, ogg, snk As MediaControl Dim ftr As MediaFilter Dim primofile As String bo = True primofile = "/tmp/primofile.ogv" pl = New MediaPipeline src = New MediaControl(pl, "v4l2src") ftr = New MediaFilter(pl, "video/x-raw,width=640,height=480,framerate=1/1") the = New MediaControl(pl, "theoraenc") ogg = New MediaControl(pl, "oggmux") ogg["name"] = "mux" snk = New MediaControl(pl, "filesink") snk["location"] = primofile ' 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 bo ' 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) Wait 0.001 Wend Copy primofile To "/tmp/file.ogv" pl.Stop() pl.Close Print "\nTermine registrazione" Quit End Public Sub Application_Read() Dim s As String Input s bo = False End
Per mostrare eventualmente all'interno della finestra del video anche il tempo trascorso dall'inizio della ripresa video, è necessario utilizzare il plugin "timeoverlay"