MultiSourceMediaFrameReader.FrameArrived Ereignis

Definition

Tritt auf, wenn ein neuer Frame aus allen Medienframequellen eingeht, die dem MultiSourceMediaFrameReader zugeordnet sind.

// Register
event_token FrameArrived(TypedEventHandler<MultiSourceMediaFrameReader, MultiSourceMediaFrameArrivedEventArgs const&> const& handler) const;

// Revoke with event_token
void FrameArrived(event_token const* cookie) const;

// Revoke with event_revoker
MultiSourceMediaFrameReader::FrameArrived_revoker FrameArrived(auto_revoke_t, TypedEventHandler<MultiSourceMediaFrameReader, MultiSourceMediaFrameArrivedEventArgs const&> const& handler) const;
public event TypedEventHandler<MultiSourceMediaFrameReader,MultiSourceMediaFrameArrivedEventArgs> FrameArrived;
function onFrameArrived(eventArgs) { /* Your code */ }
multiSourceMediaFrameReader.addEventListener("framearrived", onFrameArrived);
multiSourceMediaFrameReader.removeEventListener("framearrived", onFrameArrived);
- or -
multiSourceMediaFrameReader.onframearrived = onFrameArrived;
Public Custom Event FrameArrived As TypedEventHandler(Of MultiSourceMediaFrameReader, MultiSourceMediaFrameArrivedEventArgs) 

Ereignistyp

Hinweise

Rufen Sie im Handler für das FrameArrived-EreignisTryAcquireLatestFrame für die MultiSourceMediaFrameReference auf, die als sender-Parameter an den Ereignishandler übergeben wurde, um eine MultiSourceMediaFrameReference abzurufen, die den neuesten Satz korrelierter Frames aus den Medienframequellen darstellt, für die der Reader erstellt wurde. Rufen Sie dann den zeit korrelierten Medienframe aus einer bestimmten Medienframequelle ab, indem Sie TryGetFrameReferenceBySourceId aufrufen und den Wert der MediaFrameSourceInfo.Id-Eigenschaft für die gewünschte Medienframequelle übergeben.

Beachten Sie, dass dieses Ereignis nur ausgelöst wird, wenn ein neuer Frame aus allen Medienframequellen verfügbar ist, die dem MultiSourceMediaFrameReader zugeordnet sind. Wenn beispielsweise eine der Quellen Frames mit doppelter Geschwindigkeit erzeugt, wird die Hälfte der Frames aus der schnelleren Quelle gelöscht, und dieses Ereignis wird nur ausgelöst, wenn für die langsamere Framequelle ein neuer Frame verfügbar ist. Aus diesem Grund empfiehlt es sich, ein Ereignis einzurichten und jedes Mal zu signalisieren, wenn dieses Ereignis ausgelöst wird. In einem separaten Thread können Sie überprüfen, ob das Ereignis innerhalb eines angegebenen Zeitfensters (z. B. 5 Sekunden) signalisiert wurde. Wenn das Ereignis nicht mit dem Zeitfenster signalisiert wurde, kann Ihre App daraus ableiten, dass eine der Framequellen keine Frames mehr generiert und der Reader beendet werden soll.

Anleitungen zum Arbeiten mit zeit korrelierten Medienframes finden Sie unter Verarbeiten von Medienframes mit MediaFrameReader.

Gilt für:

Weitere Informationen