Ваша проблема в том, что вы никогда не прикрепляете видеообъект к сцене.Эта строка my_vid.attachVideo(video);
ничего не делает, потому что MovieClip не имеет метода с именем attachVideo
.
. Вам необходимо создать видеообъект в своей библиотеке и добавить его на сцену.Для этого выполните следующие действия в IDE:
- Нажмите стрелку в правом верхнем углу панели libray и выберите
New Video...
в раскрывающемся списке. - В диалоговом окне, Выберите переключатель
Video (ActionScript-controlled)
и нажмите кнопку ОК. - Перетащите вновь созданный видеообъект на сцену и присвойте ему имя экземпляра (например,
myVideo
). - Выберите ваш видеообъектна сцене и нажмите F8, чтобы создать из нее новый символ.
- Установите для символа тип MovieClip, установите флажок «Экспорт для ActionScript» и введите идентификатор (например,
videoContainer
), затем нажмите OK. - Удалите символ со сцены, сохранив его в библиотеке.
Теперь в вашей библиотеке есть элемент, который вы можете прикрепить с помощью кода, который уже содержит готовый видеообъектработать.Ваш код должен быть изменен следующим образом, при условии, что вы использовали те же имена, что и я.
//attach the container from the library
my_vid = _root.attachMovie("videoContainer", "my_vid" _root.getNextHighestDepth());
//create a reference to the video object inside the container
var video:Video = my_vid.myVideo;
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
video.attachVideo(ns);
//
// ...
//
ns.play("http://localhost/video.mp4");