![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jun 2011
Сообщений: 8
|
Здравствуйте.
Помогите пожалуйста. Нашёл тут рецептик, с http/flv работает, но с rtmp/f4v упорно не хочет, хотя в доках написано что он и его должен проигрывать. Похоже, не происходит событие, вызывающее onNetStatus(), хотя с flv всё работает. connect() происходит - в label выводится адрес, но дальше дело не идёт... Где тут косяк? <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
* * *xmlns:s="library://ns.adobe.com/flex/spark"
* * *xmlns:mx="library://ns.adobe.com/flex/mx"
* * *applicationComplete="connect()"
* * *backgroundAlpha="0.0" contentBackgroundAlpha="0.0"
* * *creationComplete="init()">
<fx:Script>
*<![CDATA[
* import mx.utils.ObjectUtil;
*
* [Bindable] private var nc:NetConnection;
* private var ns:NetStream;
* private var video:Video;
* private var meta:Object;
* private var nsClient:Object = {};
*
* private function init():void {
* *nsClient.onMetaData = ns_onMetaData;
* *nsClient.onCuePoint = ns_onCuePoint;
* }
*
* private function connect():void {
* *nc = new NetConnection();
* *nc.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus);
* *nc.connect("rtmp://fmsexamples.adobe.com/vod/mp4:_cs4promo_1000.f4v");
* *lb.text = nc.uri;
* }
*
* private function onNetStatus():void { *
* *lb.text = nc.uri;
* *
* *ns = new NetStream(nc)
* *ns.client = nsClient;
* *
* *video = new Video();
* *video.attachNetStream(ns);
* *uic.addChild(video);
* *ns.play(nc);
* }
|
|
|||||
|
Регистрация: Oct 2010
Сообщений: 18
|
попробуй просто добавить в приложение
<s:VideoDisplay source="rtmp://fmsexamples.adobe.com/vod/mp4:_cs4promo_1000.f4v" autoPlay="true"/> если твой играть не будет - проблема в нем |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 8
|
Дело в том что видео дисплэй как раз играет.
Но он имеет свой внутренний стрим. до которого нельзя добраться чтобы снимать информациюо количестве скачанных байт в единицу времени. |
|
|||||
|
Регистрация: Oct 2009
Сообщений: 72
|
Я код чутка поменял(в целях быстрого разбора полетов).
1. NetConnection обычно соединяется с такой структурой: адрес/приложение/инстанс. Т.е. на мой взгляд, коннект сюда -> rtmp://fmsexamples.adobe.com/vod/mp4:_cs4promo_1000.f4v неверен. 2. NetStream`y желательно скармливать название того потока, который нужно играть. private var nc:NetConnection; private var ns:NetStream; private var video:Video; private var meta:Object; private var nsClient:Object = {}; private function connect():void { nsClient.onBWDone = function():void {trace("BWDone");} nsClient.onMetaData = function():void {trace("onMetaData");} nsClient.onCuePoint = function():void {trace("onCuePoint");} nc = new NetConnection(); nc.client = nsClient; nc.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus); nc.connect("rtmp://fmsexamples.adobe.com/vod/"); } private function onNetStatus(event:NetStatusEvent):void { if (event.info.code == "NetConnection.Connect.Success") { ns = new NetStream(nc); ns.client = nsClient; ns.play("mp4:_cs4promo_1000.f4v"); video = new Video(); video.attachNetStream(ns); uic.addChild(video); } } Последний раз редактировалось _SoWa; 06.07.2011 в 09:51. |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 8
|
Большое спасибо, ща проверю, и в новом проекте попробую заменить VideoDisplay на такую связку.
Добавлено через 30 часов 44 минуты Блин, работать то работает, но свойства ns.bytesLoaded и ns.bytesTotal, а также значения буферов по нулям. А мне байты нужны что измерить скорость входящего видеопотока. |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:59. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| flex , rtmp , streaming , video |
|
|