Использование NetStream для потоковой передачи содержимого из http, я заметил, что esp с определенными экспортированными h264, если игрок встречает пустой буфер, он остановится и забудет до требуемой длины (как и ожидалось).Действия: NetStream заикается после буферизации
Однако, как только буфер заполнен, воспроизведение не возобновляется, а вместо этого перескакивает вперед, как таковое, мгновенно воспроизводя буферизованную длительность в течение короткого момента и тем самым снова запуская пустой буфер. и более.
Предположительно, когда сетевой поток приостанавливается, буферная позиция позиции продолжается, и игрок пытается привязать к этой позиции при возобновлении - однако, учитывая, что для создания 2-секундного буфера может потребоваться 5 секунд, это заканчивается бесполезным буфер снова ..
(это предположение)
Я попытался обойти это путем прослушивания пустого буфера событий NetStatus, приостановив поток, и в то же время настройки цикла для проверки текущую длину буфера против запрашиваемой длины буфера .. и возобновление после того, как длина буфера больше или равна запрашиваемому буферу .. однако это вызывает проблемы, когда недостаточно е видео осталось .. например, 10-секундный буфер с оставшимся 5 секунд, петля просто сидит там, ожидая, что длина буфера составляет 10 секунд, когда осталось только 5 ...
Вы могли бы подумать, что можете просто проверьте, что было меньше, оставшееся время или запрошенная длина буфера. Однако время, которое дает вспышка, неточно.
Если вы добавите текущий индекс текущего времени, плюс время буферизации, общее количество не является полным продолжительность фильма (когда в конце) .. он близок, но не то же самое.
Это возвращает меня к исходной проблеме, и если есть еще один способ исправить это, ясно, что флэш знает, когда буфер готов, так как я могу получить паузу при флеш-буфере и возобновить работу после того, как буфер готов ? в настоящее время это не происходит .. он приостанавливается, а затем, как только буфер заполнен, он воспроизводит весь буферный контент примерно через 0,1 секунды.
Заранее благодарен, Stephen.
Привет, Дэвид, на каждом видео это не бывает, поэтому, по-видимому, это проблема кодирования. Это кошмар. Он закодирован как h264 от camtasia, ключевые кадры каждую секунду. Я думаю, что попробую несколько разных экспонатов, чтобы попытаться прибить проблему - если найду это, я отправлю обратно. благодаря – meandmycode