Differenze tra le versioni di "Riproduzione dell'audio di radio WEB con l'oggetto WebView e con il codice HTML"

Da Gambas-it.org - Wikipedia.
 
(29 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
La riproduzione audio di radio che trasmettono in ''streaming'' su web può essere effettuata mediante l'uso dell'oggetto ''WevView'', attivando il componente ''gb.qt5.webkit''. L'oggetto ''WebView'' potrà essere posto sul ''Form'' dall'IDE di Gambas, oppure potrà essere creato via codice,
+
La riproduzione audio di radio che trasmettono in ''streaming'' su web può essere effettuata mediante l'uso dell'oggetto ''WevView'', sia attivando il Componente ''gb.qt5.webview'', sia attivando il Componente ''gb.gtk3.webview''.
  
L'oggetto ''WebView'', adeguatamente dimensionato, potrà essere utilizzato semplicemente assegnando alla sua proprietà ''.HTML'' il Tag <Audio> e l'indirizzo web del flusso audio della radio web.
+
L'oggetto ''WebView'', adeguatamente dimensionato, potrà essere utilizzato semplicemente assegnando il Tag <Audio> e l'indirizzo web del flusso audio della radio web al suo Metodo ".SetHtml()".
  
L'istruzione Html, più in particolare, potrà essere sia ''<AUDIO controls><source src=......>'' :
+
L'istruzione Html, più in particolare, potrà essere '''''<AUDIO controls><source src=......>'''''.
'''Public''' Sub Button1_Click()
+
Public Sub Button1_Click()
 
    
 
    
 
   Dim wv As WebView
 
   Dim wv As WebView
Riga 13: Riga 13:
 
     .W = 450
 
     .W = 450
 
     .H = 150
 
     .H = 150
     <FONT color=#B22222>.HTML</font> = "<AUDIO controls><source src=<FONT Color=gray>http://''indirizzo_web_del_flusso_audio_della_radio_web</font>''></audio>"
+
     <FONT color=#B22222>.SetHtml</font>("<AUDIO controls><source src=<FONT Color=darkgreen>https://''indirizzo_web_del_'''flusso_audio'''_della_radio_web</font>''></audio>")
 
   End With
 
   End With
 
    
 
    
  '''End'''
+
  End
 
Di seguito un paio di esempi pratici della riga con l'indirizzo web:
 
Di seguito un paio di esempi pratici della riga con l'indirizzo web:
  .HTML = "<AUDIO controls><source src=<FONT color=#B22222>''https&#058;//jzr-events-01.ice.infomaniak.ch/jzr-events-01.mp3''</font>></audio>"
+
  .SetHtml("<AUDIO controls><source src=<FONT color=#B22222>''https&#058;//jzr-events-01.ice.infomaniak.ch/jzr-events-01.mp3''</font>></audio>")
  
  .HTML = "<AUDIO controls><source src=<FONT color=#B22222>''https&#058;//rdst.win:59450/stream''</font>></audio>"
+
  .SetHtml("<AUDIO controls><source src=<FONT color=#B22222>''https&#058;//rdst.win:59450/stream''</font>></audio>")
L'istruzione potrà anche essere ''<AUDIO controls src=...'' :
+
L'istruzione potrà anche essere ''<AUDIO controls src=......>'' :
  '''Public''' Sub Button1_Click()
+
  Public Sub Button1_Click()
 
    
 
    
 
   Dim wv As WebView
 
   Dim wv As WebView
Riga 31: Riga 31:
 
     .W = 450
 
     .W = 450
 
     .H = 150
 
     .H = 150
     <FONT color=#B22222>.HTML</font> = "<AUDIO controls src=<FONT Color=gray>http://''indirizzo_web_del_flusso_audio_della_radio_web</font>''></audio>"
+
     <FONT color=#B22222>.SetHtml</font>("<AUDIO controls style=width:100%; src=https&#058;//stream.laut.fm/radiojazz></audio>")
 
   End With
 
   End With
 
    
 
    
  '''End'''
+
  End
 +
====Specificare anche il formato dei dati audio ricevuti dalla radio web====
 +
Altresì, se conosciuto, si potrà eventualmente specificare anche il formato dei dati audio ricevuti dalla radio web:
 +
.SetHtml("<AUDIO controls><source src=https://''indirizzo_web_del_flusso_audio_della_radio_web <FONT color=#B22222>type=audio/mp3</font>></audio>)
 +
Esempio pratico:
 +
.SetHtml("<AUDIO controls><source src=https&#058;//icestreaming.rai.it/3.mp3 type=audio/mp3></audio>")
 +
 
 +
In quest'altro esempio si faranno apparire anche dei tasti sull'Oggetto ''WebView'' per gestire il flusso audio:
 +
Public Sub Form_Open()
 +
 +
  Dim wv As WebView
 +
 +
  With wv = New WebView(Me)
 +
    .X = 0
 +
    .Y = 20
 +
    .W = Me.W
 +
    .H = 150
 +
    .SetHtml("<audio id='player' src='https&#058;//giosa.radioca.st/stream'></audio>" &
 +
            "<button onclick=document.getElementById('player').play()>Esegui</button>" &
 +
            "<button onclick=document.getElementById('player').pause()>Pausa</button>" &
 +
            "<button onclick=document.getElementById('player').remove()>Stop</button>" &
 +
            "<button onclick=document.getElementById('player').volume+=0.1>Volume +</button>" &
 +
            "<button onclick=document.getElementById('player').volume-=0.1>Volume -</button>")
 +
  End With
 +
 +
End
  
  
Riga 44: Riga 69:
 
  <html>
 
  <html>
 
   
 
   
  &lt;head>
+
  &lt;body>
     &lt;AUDIO controls><source src="<FONT Color=gray>http://''indirizzo_web_dello_streaming_radio</font>''">&lt;/audio>
+
     &lt;AUDIO controls><source src="<FONT Color=darkgreen>http://''indirizzo_web_dello_streaming_radio</font>''">&lt;/audio>
  &lt;/head>
+
  &lt;/body>
 
   
 
   
 
  &lt;/html>
 
  &lt;/html>
 
Il file .html sarà richiamato dal seguente codice Gambas:
 
Il file .html sarà richiamato dal seguente codice Gambas:
  '''Public''' Sub Button1_Click()
+
  Public Sub Button1_Click()
 
    
 
    
 
   Dim wv As WebView
 
   Dim wv As WebView
Riga 59: Riga 84:
 
     .W = 450
 
     .W = 450
 
     .H = 150
 
     .H = 150
     .HTML = File.Load("<FONT Color=gray>/percorso/del/file.html''</font>"
+
     .SetHtml(File.Load("<FONT Color=darkgreen>''/percorso/del/file.html''</font>"))
 
   End With
 
   End With
 
   
 
   
  '''End'''
+
  End

Versione attuale delle 20:48, 20 gen 2024

La riproduzione audio di radio che trasmettono in streaming su web può essere effettuata mediante l'uso dell'oggetto WevView, sia attivando il Componente gb.qt5.webview, sia attivando il Componente gb.gtk3.webview.

L'oggetto WebView, adeguatamente dimensionato, potrà essere utilizzato semplicemente assegnando il Tag <Audio> e l'indirizzo web del flusso audio della radio web al suo Metodo ".SetHtml()".

L'istruzione Html, più in particolare, potrà essere <AUDIO controls><source src=......>.

Public Sub Button1_Click()
 
 Dim wv As WebView
 
 With wv = New WebView(Me)
   .X = 0
   .Y = 20
   .W = 450
   .H = 150
   .SetHtml("<AUDIO controls><source src=https://indirizzo_web_del_flusso_audio_della_radio_web></audio>")
 End With
 
End

Di seguito un paio di esempi pratici della riga con l'indirizzo web:

.SetHtml("<AUDIO controls><source src=https://jzr-events-01.ice.infomaniak.ch/jzr-events-01.mp3></audio>")
.SetHtml("<AUDIO controls><source src=https://rdst.win:59450/stream></audio>")

L'istruzione potrà anche essere <AUDIO controls src=......> :

Public Sub Button1_Click()
 
 Dim wv As WebView
 
 With wv = New WebView(Me)
   .X = 0
   .Y = 20
   .W = 450
   .H = 150
   .SetHtml("<AUDIO controls style=width:100%; src=https://stream.laut.fm/radiojazz></audio>")
 End With
 
End

Specificare anche il formato dei dati audio ricevuti dalla radio web

Altresì, se conosciuto, si potrà eventualmente specificare anche il formato dei dati audio ricevuti dalla radio web:

.SetHtml("<AUDIO controls><source src=https://indirizzo_web_del_flusso_audio_della_radio_web type=audio/mp3></audio>)

Esempio pratico:

.SetHtml("<AUDIO controls><source src=https://icestreaming.rai.it/3.mp3 type=audio/mp3></audio>")

In quest'altro esempio si faranno apparire anche dei tasti sull'Oggetto WebView per gestire il flusso audio:

Public Sub Form_Open()

 Dim wv As WebView

 With wv = New WebView(Me)
   .X = 0
   .Y = 20
   .W = Me.W
   .H = 150
   .SetHtml("<audio id='player' src='https://giosa.radioca.st/stream'></audio>" &
            "<button onclick=document.getElementById('player').play()>Esegui</button>" &
            "<button onclick=document.getElementById('player').pause()>Pausa</button>" &
            "<button onclick=document.getElementById('player').remove()>Stop</button>" &
            "<button onclick=document.getElementById('player').volume+=0.1>Volume +</button>" &
            "<button onclick=document.getElementById('player').volume-=0.1>Volume -</button>")
 End With

End


Uso di un file html di supporto

E' possibile utilizzare, congiuntamente con l'oggetto WebView, anche un file Html, richiamato dal codice Gambas, e contenente il codice necessario per la riproduzione dei dati provenienti da una radio-web contattata.
Questa soluzione si mostra molto utile sovente quando non è possibile riprodurre il flusso di dati a causa di un particolare indirizzo WEB.

Il codice nel file Html di supporto sarà semplicemente il seguente:

<html>

<body>
   <AUDIO controls><source src="http://indirizzo_web_dello_streaming_radio"></audio>
</body>

</html>

Il file .html sarà richiamato dal seguente codice Gambas:

Public Sub Button1_Click()
 
 Dim wv As WebView
 
 With wv = New WebView(Me)
   .X = 0
   .Y = 20
   .W = 450
   .H = 150
   .SetHtml(File.Load("/percorso/del/file.html"))
 End With

End