Не удается заполнить объектный буфер NetStream, а видео просто зависает - PullRequest
0 голосов
/ 22 ноября 2011

Я надеюсь, что у кого-то есть понимание этого, потому что это сводит меня с ума. У меня есть объект Net Stream, который я использую для потоковой передачи видео из службы потоковой передачи мультимедиа Amazon.

Видео устанавливает соединение и воспроизводится нормально, но случайным образом кажется, что оно просто зависает, и единственный способ восстановить его - восстановить соединение. Я попытался поместить другие видео в это ведро амазонки, и они, кажется, играют хорошо. это происходит, когда он находится в формате .FLV и формате .mp4.

Я установил время буфера равным 5 секундам, и я смотрю вывод буфера, чтобы увидеть% его заполнения. когда возникает проблема, буфер 5 переходит со 100 на 0, а затем выдает ошибку сбоя буфера (я использую OVP framework).

Я пришел к выводу, что это либо проблема с кодированием видео, либо, возможно, проблема с брандмауэром, блокирующая передачу данных.

У кого-нибудь когда-нибудь возникали проблемы с этим, и если да, то как вы решили эту проблему?

1 Ответ

0 голосов
/ 23 ноября 2011

Возможно, не очень хорошее решение, но то, что я в итоге сделал, это

проверка процента буфера и когда буфер показывает, что он загружен менее чем на 20%, я просто запускаю повторное соединение.(У OVP есть свойство с именем bufferPercentage, но это просто расчет NetStream.bufferLength / NetStream.bufferTime).Я также сохраняю ns.time, чтобы при повторном подключении вызывать play и сообщать, чтобы он начинался с того места, на котором он остановился.

Не идеальное решение, но, по-видимому, по крайней мере предложенок замораживающемуся потоку видео.

Это может быть единичный случай, когда я использовал Open Video Player, но я несколько раз использовал эту библиотеку без каких-либо проблем вместе с сервером Amazon S3 Flash Streaming.http://openvideoplayer.sourceforge.net/ovpfl/docs/asdocs-fp10/index.html

...