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.
 
(45 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.qt4.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''.
  
Relativamente all'uso dell'oggetto ''WebView'' per la riproduzione audio dei dati ricevuti via ''streaming'' dal web, esso potrà essere utilizzato semplicemente assegnando alla sua proprietà ''Url'' l'indirizzo web del flusso audio della radio web, oppure facendo uso della sua proprietà ''.HTML'' ed il codice HTML5. A tal ultimo riguardo la riproduzione audio del flusso di dati potrà avvenire attraverso l'uso di due Tag del codice html: ''<Audio>'' oppure ''<Embed>''.
+
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
 +
    <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
 +
Di seguito un paio di esempi pratici della riga con l'indirizzo web:
 +
.SetHtml("<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;//rdst.win:59450/stream''</font>></audio>")
==Uso della proprietà ''.Url''==
+
L'istruzione potrà anche essere ''<AUDIO controls src=......>'' :
L'utilizzo della proprietà ''WebView.Url'' richiede che alla medesima sia semplicemente assegnato l'indirizzo web del flusso audio della radio web, come segue:
+
  Public Sub Button1_Click()
  '''Public''' Sub Button1_Click()
+
 
+
   Dim wv As WebView
   Dim wv As New WebView(Me)
+
 
 +
  With wv = New WebView(Me)
 +
    .X = 0
 +
    .Y = 20
 +
    .W = 450
 +
    .H = 150
 +
    <FONT color=#B22222>.SetHtml</font>("<AUDIO controls style=width:100%; src=https&#058;//stream.laut.fm/radiojazz></audio>")
 +
  End With
 
    
 
    
    wv<FONT color=#B22222>.Url</font> = "http://''indirizzo_web_del_flusso_audio_della_radio_web''"
+
End
+
====Specificare anche il formato dei dati audio ricevuti dalla radio web====
  '''End'''
+
Altresì, se conosciuto, si potrà eventualmente specificare anche il formato dei dati audio ricevuti dalla radio web:
Attualmente sembrano riproducibili soltanto i flussi di dati provenienti dalle radio-WEB aventi al termine del proprio indirizzo la parola "''mp3''"
+
.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:
==Richiamo del Tag ''Audio'' del codice html con ''WebView.HTML''==
+
  Public Sub Form_Open()
Si attribuirà all'oggetto ''WebView'' un adeguata dimensione; quindi si passerà alla sua proprietà ''.HTML'' il necessario codice html5 con il Tag "Audio" per l'esecuzione dei dati audio contenente anche l'indirizzo web del flusso audio della radio web, come segue:
 
  '''Public''' Sub Button1_Click()
 
 
 
   
 
   
 
   Dim wv As WebView
 
   Dim wv As WebView
 
 
    With wv = New WebView(Me)
 
      .X = 0
 
      .Y = 20
 
      .W = 450
 
      .H = 150
 
      <FONT color=#B22222>.HTML</font> = "<HTML><HEAD><AUDIO controls><source src=\"http://''indirizzo_web_del_flusso_audio_della_radio_web''\"></audio></head></html>"
 
 
   
 
   
     End With
+
  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'''
+
  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.
 +
<BR>Questa soluzione si mostra molto utile sovente quando non è possibile riprodurre il flusso di dati a causa di un particolare indirizzo WEB.
  
==Richiamo del Tag ''Embed'' del codice html con ''WebView.HTML''==
+
Il codice nel file ''Html'' di supporto sarà semplicemente il seguente:
In questo caso non è necessario attribuire una dimensione e coordinate di posizionamento all'oggetto ''WebView'': basterà soltanto l'uso della sua proprietà ''.HTML'' ed il codice html5 con il Tag ''Embed''  per l'esecuzione dei dati audio contenente anche l'indirizzo web del flusso audio della radio web, come segue:
+
  <html>
  '''Public''' Sub Button1_Click()
 
 
   
 
   
 +
&lt;body>
 +
    &lt;AUDIO controls><source src="<FONT Color=darkgreen>http://''indirizzo_web_dello_streaming_radio</font>''">&lt;/audio>
 +
&lt;/body>
 
   
 
   
   Dim wv As New WebView(Me)
+
&lt;/html>
+
Il file .html sarà richiamato dal seguente codice Gambas:
+
Public Sub Button1_Click()
     wv<FONT color=#B22222>.HTML</font> = <HTML><HEAD><EMBED src=\"http://''indirizzo_web_del_flusso_audio_della_radio_web''\" autostart=\"true\"></embed></head></html>"
+
 
 +
   Dim wv As WebView
 +
 
 +
  With wv = New WebView(Me)
 +
    .X = 0
 +
    .Y = 20
 +
    .W = 450
 +
    .H = 150
 +
     .SetHtml(File.Load("<FONT Color=darkgreen>''/percorso/del/file.html''</font>"))
 +
  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