MultiSourceMediaFrameReader.FrameArrived Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит при поступлении нового кадра из всех источников кадров мультимедиа, связанных с MultiSourceMediaFrameReader.
// 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)
Тип события
Комментарии
В обработчике для события FrameArrived вызовите TryAcquireLatestFrame в MultiSourceMediaFrameReference, передаваемом в качестве параметра sender обработчику событий, чтобы получить MultiSourceMediaFrameReference , представляющий последний набор коррелированных кадров из источников кадров мультимедиа, для которых было создано средство чтения. Затем получите кадр мультимедиа, связанный со временем, из определенного источника кадров мультимедиа, вызвав TryGetFrameReferenceBySourceId и передав значение свойства MediaFrameSourceInfo.Id для нужного источника кадра мультимедиа.
Обратите внимание, что это событие возникает только при наличии нового кадра из всех источников кадров мультимедиа, связанных с MultiSourceMediaFrameReader. Например, если один из источников создает кадры с удвоенной скоростью другого, половина кадров из более быстрого источника будет удалена, и это событие будет возникать только в том случае, если в более медленном источнике кадров будет доступен новый кадр. По этой причине рекомендуется настроить событие и сообщить о нем каждый раз при возникновении этого события. В отдельном потоке можно проверка, чтобы узнать, было ли событие показано в течение указанного временного периода, например 5 секунд. Если событие не было показано в окне времени, ваше приложение может вывести вывод, что один из источников кадров больше не создает кадры и что средство чтения должно быть остановлено.
Инструкции по работе с временными кадрами мультимедиа см. в разделе Обработка кадров мультимедиа с помощью MediaFrameReader.