Differenze tra le versioni di "Convertire un file video in un formato OGG, Matroska e MP4 mediante il Componente gb.media"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
===Convertire un file video nel formato OGG===
+
==Convertire un file video nel formato OGG==
Per convertire un file video in un file video di formato OGG mediante il Componente ''gb.media'', è possibile usare il seguente codice:
+
 
 +
===Ottenere una conversione in formato OGG senza audio===
 +
Si otterrà un file video del formato OGG, ma <SPAN Style="text-decoration:underline">privo di audio</span>:
 
  Private pl As New MediaPipeline
 
  Private pl As New MediaPipeline
 
  Private bo As Boolean
 
  Private bo As Boolean
Riga 48: Riga 50:
 
  End
 
  End
  
===Convertire un file video nel formato Matroska===
+
==Convertire un file video nel formato Matroska==
 +
Si otterrà un file video del formato Matroska, ma <SPAN Style="text-decoration:underline">privo di audio</span>:
 
  Private pl As New MediaPipeline
 
  Private pl As New MediaPipeline
 
  Private bo As Boolean
 
  Private bo As Boolean
Riga 96: Riga 99:
 
  End
 
  End
  
===Convertire un file video nel formato MP4===
+
==Convertire un file video nel formato MP4==
 +
Si otterrà un file video del formato MP4, ma <SPAN Style="text-decoration:underline">privo di audio</span>:
 
  Private pl As New MediaPipeline
 
  Private pl As New MediaPipeline
 
  Private bo As Boolean
 
  Private bo As Boolean

Versione delle 04:57, 3 giu 2023

Convertire un file video nel formato OGG

Ottenere una conversione in formato OGG senza audio

Si otterrà un file video del formato OGG, ma privo di audio:

Private pl As New MediaPipeline
Private bo As Boolean


Public Sub Main()

 Dim src, dcb, vdc, enc, mux, snk As MediaControl
 Dim temporaneo As String

 temporaneo = Temp

 pl = New MediaPipeline As "PLine"

 src = New MediaControl(pl, "filesrc")
 src["location"] = "/percorso/del/file/video"
 dcb = New MediaControl(pl, "decodebin")
 vdc = New MediaControl(pl, "videoconvert")
 enc = New MediaControl(pl, "theoraenc")
 mux = New MediaControl(pl, "oggmux")
 snk = New MediaControl(pl, "filesink")
 snk["location"] = temporaneo

 src.LinkTo(dcb)
 dcb.LinkLaterTo(vdc)
 vdc.LinkTo(enc)
 enc.LinkTo(mux)
 mux.LinkTo(snk)

 pl.Play()

 While Not bo
   Wait 0.01
 Wend

 Copy temporaneo To "/tmp/video.ogg"

 pl.Close
 Quit 

End

Public Sub PLine_End()

 bo = True

End

Convertire un file video nel formato Matroska

Si otterrà un file video del formato Matroska, ma privo di audio:

Private pl As New MediaPipeline
Private bo As Boolean


Public Sub Main()

 Dim src, dcb, vdc, enc, mux, snk As MediaControl
 Dim temporaneo As String

 temporaneo = Temp

 pl = New MediaPipeline As "PLine"

 src = New MediaControl(pl, "filesrc")
 src["location"] = "/percorso/del/file/video"
 dcb = New MediaControl(pl, "decodebin")
 vdc = New MediaControl(pl, "videoconvert")
 enc = New MediaControl(pl, "x264enc")
 mux = New MediaControl(pl, "matroskamux")
 snk = New MediaControl(pl, "filesink")
 snk["location"] = temporaneo

 src.LinkTo(dcb)
 dcb.LinkLaterTo(vdc)
 vdc.LinkTo(enc)
 enc.LinkTo(mux)
 mux.LinkTo(snk)

 pl.Play()

 While Not bo
   Wait 0.01
 Wend

 Copy temporaneo To "/tmp/video.mkv"

 pl.Close
 Quit 

End

Public Sub PLine_End()

 bo = True

End

Convertire un file video nel formato MP4

Si otterrà un file video del formato MP4, ma privo di audio:

Private pl As New MediaPipeline
Private bo As Boolean


Public Sub Main()

 Dim src, dcb, vdc, enc, mux, snk As MediaControl
 Dim temporaneo As String

 temporaneo = Temp

 pl = New MediaPipeline As "PLine"

 src = New MediaControl(pl, "filesrc")
 src["location"] = "/percorso/del/file/video"
 dcb = New MediaControl(pl, "decodebin")
 vdc = New MediaControl(pl, "videoconvert")
 enc = New MediaControl(pl, "x264enc")
 mux = New MediaControl(pl, "mp4mux")
 snk = New MediaControl(pl, "filesink")
 snk["location"] = temporaneo

 src.LinkTo(dcb)
 dcb.LinkLaterTo(vdc)
 vdc.LinkTo(enc)
 enc.LinkTo(mux)
 mux.LinkTo(snk)

 pl.Play()

 While Not bo
   Wait 0.01
 Wend

 Copy temporaneo To "/tmp/video.mp4"

 pl.Close
 Quit 

End

Public Sub PLine_End()

 bo = True

End