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

Da Gambas-it.org - Wikipedia.
Riga 52: Riga 52:
 
   Dim pl As MediaPipeline
 
   Dim pl As MediaPipeline
 
   Dim src As MediaControl
 
   Dim src As MediaControl
 +
 
 +
  pl = New MediaPipeline
 
    
 
    
 
   src = New MediaControl(pl, "playbin")
 
   src = New MediaControl(pl, "playbin")
Riga 63: Riga 65:
 
     Wait 0.01
 
     Wait 0.01
 
   Wend
 
   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 = "<FONT Color=gray>''http&#58;//indirizzo/web/del/flusso/radio/live''</font>"
 +
  End With
 +
 
 +
  usc = New MediaControl(mp, "jackaudiosink")
 +
  mp.Audio.Output = usc
 +
 
 +
  mp.Play()
 +
 
 +
  While bo = False
 +
<FONT Color=gray>' ''Mostra in console la posizione, espressa in secondi, all'interno dei dati processati:''</font>
 +
    Write #File.Out, "\rTempo trascorso: " & 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'''
 
  '''End'''

Versione delle 11:45, 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 la posizione, espressa in secondi, all'interno dei dati processati:
    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 la posizione, espressa in secondi, all'interno dei dati processati:
    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 la posizione, espressa in secondi, all'interno dei dati processati:
    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 console la posizione, espressa in secondi, all'interno dei dati processati:
    Write #File.Out, "\rTempo trascorso: " & 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