|
|
|||||
Регистрация: Feb 2012
Сообщений: 36
|
NetStream
Всем доброго времени суток!
Впервые решил написать приложение для Android на Adobe Air, но что-то не ладится с NetStream. Симптомы: при netStream.play('адрес потока.flv'); вылетает черный экран. Пробовал дебажить - глухо, ошибок вообще нет. Последний netStatus - netStatus.Buffer.Full Кто-нибудь в курсе, как с этим бороться? |
|
|||||
Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
|
Покажите код
|
|
|||||
Регистрация: Feb 2012
Сообщений: 36
|
Вот примерный код. Не работает на моем SE LWW, Android 4.0.4 (официальная)
Возможно ли, что из-за предыдущего нерабочего кода перестал работать корректный код? У товарища работает, но также выскакивает "черный экран" на 2-3 секунды, потом играет поток. package { import flash.display.MovieClip; import flash.media.Sound; import flash.media.SoundChannel; import flash.media.SoundTransform; import flash.net.NetConnection; import flash.net.NetStream; import flash.events.AsyncErrorEvent; public class testttt extends MovieClip { public var streamUrl:String = 'http://ip:port/aac?type=.flv'; public var stream:Sound = new Sound(); public var channel:SoundChannel = new SoundChannel(); public var connect_nc:NetConnection = new NetConnection(); public var ns:NetStream; public function testttt() { this.connect_nc.connect(null); this.ns = new NetStream(connect_nc); ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, ayncErrorHandler); this.ns.client = {}; this.ns.client.onMetaData = ns_onMetaData; this.ns.client.onCuePoint = ns_onCuePoint; function ns_onMetaData(item:Object):void { if(item['title'])trace(item['title']); } function ns_onCuePoint(item:Object):void { trace("cuePoint"); trace(item.name + "\t" + item.time); } this.ns.client = this; this.ns.play(streamUrl); } private function ayncErrorHandler(event: AsyncErrorEvent): void { // ignore for now } } } |
|
|||||
Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
|
Цитата:
Цитата:
Конкретно air или андроид тут не при чём. Также не понятно, при чём тут "чёрный экран", если у вас нет ни одного экранного объекта. И ещё пара замечаний не по теме вопроса: - вложенные функции есть зло, - зачем все переменные уровня класса публичные? - имена классов принято задавать с большой буквы. |
|
|||||
Регистрация: Feb 2012
Сообщений: 36
|
...
ip и port - слова, в реальном коде это действующий адрес и порт Если запустить через ctrl+enter в Adobe Flash, то все играет корректно. Если запустить через Debug to usb ..., то тоже черный экран. Если запустить на устройстве, то при выполнение netStream.play(...); появится черный экран... Как я определил, что "при выполнение netStream.play(...);"? Очень просто, если закомментировать эту строку, то реальное приложение продолжает функционировать на "ура". Могу Вам заснять видео "как все происходит"... P.S. Это примерный код, т.е. писался он "быстрее и проще"... |
|
|||||
Lorem ipsum
|
Название темы не отражает сути вопроса.
__________________
Поймай яблоко 2! |
Часовой пояс GMT +4, время: 02:51. |
|
« Предыдущая тема | Следующая тема » |
|
|