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.
 
(6 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'', sia attivando il Componente ''gb.gui.qt.webkit'' o ''gb.qt5.webkit'' sia attivando il Componente ''gb.gtk3.webview''.
+
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:
+
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()".
* alla sua Proprietà ".HTML", se si utilizza il Componente ''gb.gui.qt.webkit'' o ''gb.qt5.webkit'';
 
* al suo Metodo ".SetHtml()", se si utilizza il Componente ''gb.gui.webview'' o ''gb.gtk3.webview''.
 
  
 
L'istruzione Html, più in particolare, potrà essere '''''<AUDIO controls><source src=......>'''''.
 
L'istruzione Html, più in particolare, potrà essere '''''<AUDIO controls><source src=......>'''''.
 
===Usando la libreria grafica QT===
 
In tal caso si utilizzerà la Proprietà ".HTML" dell'Oggetto grafico ''WebView'':
 
 
  Public Sub Button1_Click()
 
  Public Sub Button1_Click()
 
    
 
    
Riga 18: 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()
Riga 36: Riga 31:
 
     .W = 450
 
     .W = 450
 
     .H = 150
 
     .H = 150
     <FONT color=#B22222>.HTML</font> = "<AUDIO controls src=https&#058;//stream.laut.fm/radiojazz></audio>"
+
     <FONT color=#B22222>.SetHtml</font>("<AUDIO controls style=width:100%; src=https&#058;//stream.laut.fm/radiojazz></audio>")
 
   End With
 
   End With
 
    
 
    
Riga 42: Riga 37:
 
====Specificare anche il formato dei dati audio ricevuti dalla radio web====
 
====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:
 
Altresì, se conosciuto, si potrà eventualmente specificare anche il formato dei dati audio ricevuti dalla radio web:
  .HTML = "<AUDIO controls><source src=http://''indirizzo_web_del_flusso_audio_della_radio_web <FONT color=#B22222>type=audio/mp3</font>></audio>
+
  .SetHtml("<AUDIO controls><source src=https://''indirizzo_web_del_flusso_audio_della_radio_web <FONT color=#B22222>type=audio/mp3</font>></audio>)
 
Esempio pratico:
 
Esempio pratico:
  .HTML = "<AUDIO controls><source src=https&#058;//giosa.radioca.st/stream type=audio/mp3></audio>"
+
  .SetHtml("<AUDIO controls><source src=https&#058;//icestreaming.rai.it/3.mp3 type=audio/mp3></audio>")
 
 
===Usando il Componente ''gb.gui.webview'' oppure la libreria grafica GTK+3===
 
In tal caso si utilizzerà il Metodo ".SetHtml()" dell'Oggetto grafico ''WebView'':
 
Public Sub Button1_Click()
 
 
 
  Dim wv As WebView
 
 
 
  With wv = New WebView(Me)
 
    .X = 0
 
    .Y = 20
 
    .W = 450
 
    .H = 150
 
    <FONT color=#B22222>.SetHtml</font>("<AUDIO controls><source src=<FONT Color=gray>http://''indirizzo_web_del_flusso_audio_della_radio_web</font>''></audio>")
 
  End With
 
 
End
 
Anche con l'uso del Componente ''gb.gui.webview'' o della libreria grafica GTK+3 si potrà specificare il formato dei dati audio ricevuti dalla radio web utilizzando l'attributo "type" del protocollo HTML con le medesime modalità viste nel paragrafo precedente.
 
  
In quest'altro esempio, sempre usando il Componente ''gb.gui.webview'' oppure la libreria grafica GTK+3, si faranno apparire anche dei tasti sull'Oggetto ''WebView'' per gestire il file audio:
+
In quest'altro esempio si faranno apparire anche dei tasti sull'Oggetto ''WebView'' per gestire il flusso audio:
 
  Public Sub Form_Open()
 
  Public Sub Form_Open()
 
   
 
   
Riga 92: Riga 70:
 
   
 
   
 
  &lt;body>
 
  &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;/body>
 
  &lt;/body>
 
   
 
   
 
  &lt;/html>
 
  &lt;/html>
Il file .html sarà richiamato dal seguente codice Gambas (in questo esempio utilizzando le risorse della libreria grafica QT):
+
Il file .html sarà richiamato dal seguente codice Gambas:
 
  Public Sub Button1_Click()
 
  Public Sub Button1_Click()
 
    
 
    
Riga 106: 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