Здравствуйте) В общем такая проблема, есть RTMFP соединение, в котором открыт NetStream для публикации, код собстна: Code: Код AS3: nc = new NetConnection(); nc.connect("rtmp://example.com/myApp"); ns = new NetStream(nc); ns.attachAudio(mic); ns.attachVideo(cam); ns.publish(myStream_name, "live"); Вот, он высылает в поток потоковое аудио и видео с микрофона и вебки, а мне нужно высылать свои данные (своё видео отдельно залитое, не с камеры). Погуглив, нашёл атрибут .attach(NetConnection); Но КАК можно запихнуть в него видео? Как открыть NetConnection для отправки видеофайла? Я уже и Adobe Media Server подымал, ну так опять-же проблема, чтоб получить С него поток с видеом нужно делать NetStream поток, который сюда явно не вписывается( Как работает метод attach? как в него засунуть свой поток? помогите плз( Метод .appendBytes(FileReference.data); уже пробовал, ошибка Code: TypeError: Error #2004: Один из параметров указан неверно. at flash.net::NetStream/appendBytesAction() at Main/connectOutStream() at MethodInfo-17() at Function/http://adobe.com/AS3/2006/builtin::apply() at flash.external::ExternalInterface$/_callIn() at Function/<anonymous>() Как я понял - такое делать можно только если .connect(null), по крайней мере что-то подобное в обсуждении писали Пробовал создавать отдельный коннект по нуллам и в него лить, в него льётся, но если присоединить его к этому потоку - ничего не происходит( похоже все данные в нетстриме, а нетстрим к нетстриму не приклеишь как я понял, и аппендБайтес тоже не прилепить к соединённому потоку, так что делать?(
Вы так не запихнете видео в NetConnection Метод NetConnection.attach вообще не для этих целей. Метод NetConnection.appendBytes проигрывает байты только на машине юзера при условии что NetConnection.connect(null) Есть несколько способов как это можно реализовать. 1) В обьект NetConnection через метод send частями из FileReference.data передаем байты подписавшимся юзерам тот кто хочет смотреть видео должен отлавливать эти байты создать новый обьект NetConnection.connect(null) и засовывать их в NetConnection.appendBytes. Пиши если будут вопросы хорошо ориентируюсь в данной теме.
Дело в том что мне нужно изменить код клиента НЕ изменяя кода сервера. Сейчас на клиенте стоит .attachCamera(), мне нужно её заменить на свой файл, а на "сервере" будет проигрываться почти тем-же способом но через .play('key'), никаких data я не смогу всунуть, нужно что-бы через .play('key') было и никак иначе... п.с. были мысли даже делать эмулятор веб-камеры с микрофоном на дельфи с драфверами, чтоб они создавали будто аудио и видео-потоки а уже на AS3 я коннектил конкретную камеру (сделать мост JS<=>PHP<=>AS3<=>Delphi) но это слишком жёстко уже...