Registrare il sonoro da una fonte esterna e salvarlo in un file audio mediante il Componente gb.media

Da Gambas-it.org - Wikipedia.
Versione del 1 ott 2016 alle 17:35 di Vuott (Discussione | contributi) (Creata pagina con "Il Componente ''gb.media'' consente mediante appositi plugin di ''GStreamer'' di registrare una fonte sonora esterna (ad esempio da un microfono) e salvare, quanto registrato,...")

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Il Componente gb.media consente mediante appositi plugin di GStreamer di registrare una fonte sonora esterna (ad esempio da un microfono) e salvare, quanto registrato, in un file audio.

Mostriamo di seguito alcuni casi.


Salvare la registrazione in un file audio OGG

Public Sub Main()
 
 Dim pl As MediaPipeline
 Dim src, ode, vde, aco, snk As MediaControl
 
  pl = New MediaPipeline 
  
  src = New MediaControl(pl, "alsasrc")   
  ode = New MediaControl(pl, "audioconvert")
  vde = New MediaControl(pl, "vorbisenc")
  aco = New MediaControl(pl, "oggmux")
  snk = New MediaControl(pl, "filesink")
  snk["location"] = "/percorso/del/file.ogg"
  
  src.LinkTo(ode)
  ode.LinkTo(vde)
  vde.LinkTo(aco)
  aco.LinkTo(snk)
  
  pl.State = Media.Playing
  pl.Play()
  
  While pl.State = Media.Playing
    Write #File.Out, "\rTempo: " & Date(0, 0, 0, 0, 0, 0, pl.Position * 1000)
  Wend
  
End