Differenze tra le versioni di "Convertire i formati immagine mediante il Componente gb.media"

Da Gambas-it.org - Wikipedia.
(Creata pagina con "Utilizzando i plugin di ''GStreamer'' con le Classi ''MediaControl'' e ''MediaPipeline'' del Componente ''gb.media'', è possibile effettuare diverse conversioni di file immag...")
 
Riga 9: Riga 9:
 
   Dim src, deb, vdc, enc, snk As MediaControl
 
   Dim src, deb, vdc, enc, snk As MediaControl
 
   Dim primofile As String
 
   Dim primofile As String
 +
  Dim i As Integer
 
    
 
    
 
   primofile = "/tmp/primofile"
 
   primofile = "/tmp/primofile"
Riga 29: Riga 30:
 
    
 
    
 
   Repeat  
 
   Repeat  
     Wait 0.01
+
    i = Stat(primofile).Size
   Until Stat(primofile).Size > 0
+
     Wait 0.5
 +
   Until Stat(primofile).Size == i
 +
 
 
   Copy primofile To "/tmp/immagine.bmp"
 
   Copy primofile To "/tmp/immagine.bmp"
 
    
 
    

Versione delle 21:15, 10 mar 2022

Utilizzando i plugin di GStreamer con le Classi MediaControl e MediaPipeline del Componente gb.media, è possibile effettuare diverse conversioni di file immagine da un formato ad un altro.

Mostriamo di seguito qualche esempio pratico.

Conversione immagine dal formato TIFF al formato BMP

Public Sub Main()
 
 Dim pl As New MediaPipeline
 Dim src, deb, vdc, enc, snk As MediaControl
 Dim primofile As String
 Dim i As Integer
  
 primofile = "/tmp/primofile"
  
 src = New MediaControl(pl, "filesrc")
 src["location"] = "/percorso/del/file.tif"
 deb = New MediaControl(pl, "decodebin")
 vdc = New MediaControl(pl, "videoconvert")
 enc = New MediaControl(pl, "avenc_bmp")
 snk = New MediaControl(pl, "filesink")
 snk["location"] = primofile
  
' Colleghiamo fra loro all'interno della pipeline gli oggetti MediaControl impostati:
 src.LinkTo(deb)
 deb.LinkLaterTo(vdc)
 vdc.LinkTo(enc)
 enc.LinkTo(snk)
 
 pl.Play()
  
 Repeat 
   i = Stat(primofile).Size
   Wait 0.5
 Until Stat(primofile).Size == i
 
 Copy primofile To "/tmp/immagine.bmp"
 
 pl.Close
  
End