Eseguire in streaming un video da youtube mediante l'oggetto WebView

Da Gambas-it.org - Wikipedia.

Per eseguire in streaming un video direttamente da youtube con l'oggetto WebView sono possibili almeno due modalità.


Uso della proprietà .HTML uno specifico codice in html con il Tag <Iframe>

Questa modalità prevede che sia passata alla proprietà .HTML dell'oggetto WebView uno specifico codice in html contenente il Tag <Iframe>, avendo nel contempo cura di:

  • attivare il componente gb.qt4.webkit;
  • attivare da codice i plugin necessari per il video;
  • far sì che l'indirizzo del video da eseguire sia così formato da tre parti:

- la parte finale sia rappresentata soltanto dal codice identificativo del video;
- tra la parte inziale del dominio e il codice identificativo del video vi deve essere inserita la parola " embed ".

Esempio:

https://www.youtube.com/embed/NgUGjCVkXXY


Vediamo di seguito un codice essenziale e funzionante:

Public Sub Form_Open()
 
 Dim wv As WebView
 Dim s As String = "<HTML><head><meta content=text/html; charset=ISO-8859-1 http-equiv=content-type><title>prueba</title></head>" &
                   "<body><iframe src=https://www.youtube.com/embed/NgUGjCVkXXY height=315 width=420></iframe></body></html>"
   
 WebSettings[WebSettings.PluginsEnabled] = True
 
 With wv = New WebView(Me)
   .X = 50
   .Y = 100
   .W = 420
   .H = 315
   .HTML = s
 End With

End


Uso della proprietà .Url

Questa modalità è più semplice nella sua codifica rispetto alla modalità precedente. Essa si basa sull'uso della proprietà .Url dell'oggetto WebView.

E' necessario creare l'oggetto WebView da codice, avendo cura di:

  • non impostare (quindi lasciare a zero) le sue proprietà .W e .H;
  • ipostare in modo adeguato al Form le proprietà .X e .Y .

Mostriamo un semplice esempio:

Public Sub Button1_Click()
 
 Dim wv As WebView
 
  WebSettings[WebSettings.PluginsEnabled] = True
 
  With wv = New WebView(Me)
    .X = 50
    .Y = -150
    .Url = "https://www.youtube.com/watch?v=IK9BnbKdhpw"
  End With
  
End