TL DR версия: Как использовать событие NetStream onSeekPoint для построения таблицы точек поиска?ActionScript 3 NetStream onSeekPoint как
Полный вопрос ниже. Ситуация: flv потоковый видеоплеер в режиме генерации данных, то есть NetStream.play (null), а затем NetStream.appendBytes (байты: ByteArray). При этом вы можете искать только определенные точки видео (так называемые «теги» или «точка поиска»). См. seeking not working in flex 4.5 netStream byteArray, если вы не знаете, о чем я говорю.
Итак, если вы можете создать таблицу тегов из события onMetaData, как описано в приведенной выше ссылке, все будет работать. Но теоретически, если в вашем видеофайле нет метаданных (и по какой-то причине вы не можете предварительно обработать файл, впрыскивающий метаданные с помощью инструмента инжектора, как это предлагается в ссылке выше), вы должны иметь возможность создавать теги стол «на лету» с NetStream onSeekPoint событие:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetStream.html#event:onSeekPoint (... «Используйте это событие, чтобы построить искать таблицу точек») [следить за фильтрами в верхней части страницы самана, они могут скрыть свойства и функции класса ...!]
Проблема: onSeekPoint объясняется очень плохо. В нем говорится: «ByteCount соответствует байту в первом байте синтаксического анализа для этой точки поиска и сбрасывается в ноль, как описано выше». Ну, выше (где ?!) ничего не описывается, а «byteCount» вообще не определен (это только два экземпляра «byteCount» на всей странице!).
Я обнаружил (см onSeekPoint weirdness - пример 1), что обработчик onSeekPoint получает два объекта, которые просто два ИНТ, 0 и 1.
Что я должен теперь?
Я ничего не нашел на эту тему, надеюсь, кто-то может помочь, спасибо.
Я забыл: пытаясь прочитать, когда запускается событие onSeekPoint, NetStream.time и NetStream.bytesLoaded («Число байтов данных, загруженных в приложение») бесполезны, поскольку bytesLoaded постоянно 0 (я предполагаю, что это еще одна «недокументированная функция» режим генерации данных - хорошая работа Adobe)
Я не могу проверить больше, если это работает, однако благодаря вам обоим. – creative