Riproduzione dell'audio di radio WEB mediante il Componente gb.media

Da Gambas-it.org - Wikipedia.

Le stazioni radio via WEB possono essere ascoltate in streaming anche utilizzando le risorse del Componente gb.media di Gambas.


Uso della Classe MediaPlayer

L'utilizzo della Classe MediaPlayer prevede l'uso del plug-in playbin.

Esempio pratico:

Public Sub Main()
 
 Dim mp As MediaPlayer
 
  With mp = New MediaPlayer
    .URL = "http://indirizzo/web/del/flusso/radio/live"
    .Play
  End With
  
  While True
' Mostra in console il tempo trascorso dall'avvio del processo dei dati audio ricevuti:
    Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, mp.Position * 1000))
    Wait 0.01
  Wend
  
End


Uso della Classe MediaPipeline

L'utilizzo della Classe MediaPipeline prevede l'uso del plug-in playbin.

Esempio pratico:

Public Sub Main()
 
 Dim pl As MediaPipeline
 
  pl = New MediaPipeline(Null, "playbin")
  pl["uri"] = "http://indirizzo/web/del/flusso/radio/live"
  
  pl.Play()
     
  While True
' Mostra in console il tempo trascorso dall'avvio del processo dei dati audio ricevuti:
    Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, pl.Position * 1000))
    Wait 0.01
  Wend
 
End


Uso delle Classi MediaPipeline e MediaControl

Anche l'uso delle Classi MediaPipeline e MediaControl prevede l'uso del plug-in playbin.

Public Sub Main()
 
 Dim pl As MediaPipeline
 Dim src As MediaControl
  
  pl = New MediaPipeline
  
  src = New MediaControl(pl, "playbin")
  src["uri"] = "http://indirizzo/web/del/flusso/radio/live"
  
  pl.Play()
  
  While True
' Mostra in console il tempo trascorso dall'avvio del processo dei dati audio ricevuti:
    Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, pl.Position * 1000))
    Wait 0.01
  Wend
  
End


Uso delle Classi MediaPlayer e MediaControl e del plug-in jackaudiosink

L'uso delle Classi MediaPlayer e MediaControl e del plug-in jackaudiosink richiede che sia preliminarmente avviato il programma server Jack.

Mostriamo un esempio questa volta in ambiente grafico:

Private bo As Boolean


Public Sub Form_Open()
 
 Dim mp As MediaPlayer
 Dim usc As MediaControl
 
  Me.Show
  
  With mp = New MediaPlayer
    .URL = "http://indirizzo/web/del/flusso/radio/live"
  End With
  
  usc = New MediaControl(mp, "jackaudiosink")
  mp.Audio.Output = usc
  
  mp.Play()
  
  While bo = False
' Mostra in un "TextBox" il tempo trascorso dall'avvio del processo dei dati audio ricevuti:
    TextBox1.Text = CStr(Date(0, 0, 0, 0, 0, 0, mp.Position * 1000))
    Wait 0.01
  Wend
  
  mp.Stop
  
  Me.Close
  
End


Public Sub Button1_Click()
 
  bo = True
  
End