Differenze tra le versioni di "Riproduzione dell'audio di radio WEB mediante il Componente gb.media"

Da Gambas-it.org - Wikipedia.
Riga 16: Riga 16:
 
    
 
    
 
   While True
 
   While True
  <FONT Color=gray>' ''Mostra in console la posizione, espressa in secondi, all'interno dei dati processati:''</font>
+
  <FONT Color=gray>' ''Mostra in console il tempo trascorso dall'avvio del processo dei dati audio ricevuti:''</font>
 
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, mp.Position * 1000))
 
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, mp.Position * 1000))
 
     Wait 0.01
 
     Wait 0.01
Riga 38: Riga 38:
 
        
 
        
 
   While True
 
   While True
  <FONT Color=gray>' ''Mostra in console la posizione, espressa in secondi, all'interno dei dati processati:''</font>
+
  <FONT Color=gray>' ''Mostra in console il tempo trascorso dall'avvio del processo dei dati audio ricevuti:''</font>
 
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, pl.Position * 1000))
 
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, pl.Position * 1000))
 
     Wait 0.01
 
     Wait 0.01
Riga 61: Riga 61:
 
    
 
    
 
   While True
 
   While True
  <FONT Color=gray>' ''Mostra in console la posizione, espressa in secondi, all'interno dei dati processati:''</font>
+
  <FONT Color=gray>' ''Mostra in console il tempo trascorso dall'avvio del processo dei dati audio ricevuti:''</font>
 
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, pl.Position * 1000))
 
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, pl.Position * 1000))
 
     Wait 0.01
 
     Wait 0.01
Riga 93: Riga 93:
 
    
 
    
 
   While bo = False
 
   While bo = False
  <FONT Color=gray>' ''Mostra in console la posizione, espressa in secondi, all'interno dei dati processati:''</font>
+
  <FONT Color=gray>' ''Mostra in un "TextBox" il tempo trascorso dall'avvio del processo dei dati audio ricevuti:''</font>
     Write #File.Out, "\rTempo trascorso: " & CStr(Date(0, 0, 0, 0, 0, 0, mp.Position * 1000))
+
     TextBox1.Text = CStr(Date(0, 0, 0, 0, 0, 0, mp.Position * 1000))
 
     Wait 0.01
 
     Wait 0.01
 
   Wend
 
   Wend

Versione delle 11:55, 17 feb 2017

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 MediaPipeline e MediaControl e del plug-in jackaudiosink

L'uso delle Classi MediaPipeline 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