Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Multimedia

k23:k23.9:k23.9.5:start

Die Klasse MediaLink repräsentiert die Verbindung zwischen zwei MediaControl-Objekten und findet lediglich in der Methode GetLink(…) der MediaControl-Klasse Verwendung. Diese Klasse kann nicht erzeugt werden.

23.9.5.1 Eigenschaften

Die Klasse MediaLink verfügt nur über diese vier relevanten Eigenschaften:

EigenschaftDatentypBeschreibung
Input StringGibt den Namen der anderen Seite des Links zurück, wenn es sich um einen Eingang handelt.
OutputStringGibt den Namen der anderen Seite des Links zurück, wenn es sich um einen Ausgang handelt.
NameStringGibt den Namen des Links zurück.
Peer MediaControlLiefert das MediaControl auf der anderen Seite des Links.

Tabelle 23.9.5.1.1 : Eigenschaften der Klasse MediaLink

BILD 1

Abbildung 23.9.5.1.1: MediaPipeline mit Links

23.9.5.2 Beispiel

Die Verlinkung der MediaControls erfolgt im folgenden Quelltext-Abschnitt in den Zeilen 11 und 12. Es wird dann in den Zeilen 25 bis 46 gezeigt, wie Sie Informationen zum Steuerelement mcConvert auslesen und anzeigen können:

  [1] Private mpPipeline As MediaPipeline
  [2] Private mcSource As MediaControl
  [3] Private mcConvert As MediaControl
  [4] Private mcSink As MediaControl
  [5]
  [6] Public Sub CreateAndPlayPipeline()
  [7]
  [8]     Dim i As Integer
  [9]     Dim hInputs As String[]
  [10]     Dim hOutputs As String[]
  [11]
  [12]     mpPipeline = New MediaPipeline As "hPipeline"
  [13]
  [14]     mcSource = New MediaControl(mpPipeline, "uridecodebin")
  [15] '-- ["uri"] is a property of the MediaControl 'mcsource' or the Gstreamer element 'uridecodebin'.
  [16]     mcSource["uri"] = ComboBox1.Text
  [17]     mcConvert = New MediaControl(mpPipeline, "audioconvert")
  [18]     mcSink = New MediaControl(mpPipeline, "autoaudiosink")
  [19]
  [20]     mcSource.LinkLaterTo(mcConvert)
  [21]     mcConvert.LinkTo(mcSink)
  [22]
  [23]     mpPipeline.Play()
  [24]
  [25]     hInputs = mcConvert.Inputs
  [26]     For i = 0 To hInputs.Max
  [27]       Print "mcConvert-Input: "; i; hInputs[i]
  [28]     Next
  [29]     hOutputs = mcConvert.Outputs
  [30]     For i = 0 To hOutputs.Max
  [31]       Print "mcConvert-Output: "; i; hOutputs[i]
  [32]     NexthOutputs[i]
  [33]     Next
  [34]
  [35]     Print "\nMediaLink parameters around the mcConvert input:"
  [36]     Print "------------------------------------------------"
  [37]     Print "Type of mcConvert input: "; mcConvert.GetLink("sink").Name
  [38]     Print "Name of mcConvert MediaControl of other side :"; mcConvert.GetLink("sink").Peer.Name
  [39]     Print "Name of output of other side of mcConvert: "; mcConvert.GetLink("sink").Output
  [40]
  [41]
  [42]     Print "\nMediaLink parameters around the mcConvert output:"
  [43]     Print "-------------------------------------------------"
  [44]     Print "Type of mcConvert output: "; mcConvert.GetLink("src").Name
  [45]     Print "Name of mcConvert MediaControl of other side: "; mcConvert.GetLink("src").Peer.Name
  [46]     Print "Name of input of other side of mcConvert: "; mcConvert.GetLink("src").Input

Das sind die Ausgaben in der Konsole der IDE:

mcConvert-Input:  0  sink
mcConvert-Output:  0  src

MediaLink parameters around the mcConvert input:
------------------------------------------------
Type of mcConvert input: sink
Name of mcConvert MediaControl of other side: uridecodebin0
Name of output of other side of mcConvert: src_0

MediaLink parameters around the mcConvert output:
-------------------------------------------------
Type of mcConvert output: src
Name of mcConvert MediaControl of other side: autoaudiosink0
Name of input of other side of mcConvert: sink

Download

Artikel

Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k23/k23.9/k23.9.5/start.txt · Zuletzt geändert: 13.01.2024 von honsek

Seiten-Werkzeuge