Показать сообщение отдельно
Старый 14.02.2023, 16:11
djken вне форума Посмотреть профиль Отправить личное сообщение для djken Посетить домашнюю страницу djken Найти все сообщения от djken
  № 1  
Ответить с цитированием
djken
 
Аватар для djken

Регистрация: May 2010
Адрес: Краснодар
Сообщений: 182
Отправить сообщение для djken с помощью ICQ Отправить сообщение для djken с помощью Skype™
Question Не работает видео через NetStream.appendBytes()

Написал свой класс загрузчик на основе URLStream, который грузит картинки, видео, json файлы, определяя их тип по байтовым сигнатурам + кэширует файлы. При достижении полной загрузки, отдает байтовый массив ByteArray. Все работает, кроме видео. Передаю полностью загруженный массив в метод appendBytes экземпляра класса NetStream.

Код AS3:
_stream.play(null);
_stream.appendBytes(_mainLoader.data);
Но ничего не происходит. Вчера весь день копался, так и не понял что не так... После многих безуспешных попыток правки кода решил попробовать скормить FLV файл - и вдруг заработал!.. Т.е. с MP4 файлами не хочет, а с FLV работает После чего наткнулся на один пост Can`t play mp4 byte array as3 , где пишут, что:

Цитата:
It is not that easy.
In very general (not very academic) terms you first need to trick Flash into thinking that it plays FLV by creating an FLV file header. Only after that you can start filling video buffer with video data. Actually this aspect is vaguely described in the appenBytes() documentation
Кто знает, как победить? Буду безмерно благодарен за любую помощь в вопросе!
__________________
кто не отвечает, того garbage collector забирает