as3 - Как остановить видео и отключить NetStream - PullRequest
3 голосов
/ 05 октября 2011

У меня есть потоковое видео с сервера, а позже я хочу добавить еще один рядом. это все хорошо, я сделал это. Теперь моя проблема возникает, когда я хочу удалить видео. Мне удается удалить его с дисплея, но я слышу, что видео все еще играет в фоновом режиме. Так как я могу остановить потоковое видео? Вот мой код для настройки видео:

ns = new NetStream(connection);
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns.play(item[1].toString() + ".flv");
video = new Video();
video.attachNetStream( ns );
video.width = 160;
video.height = 120;
videoWrapper = new UIComponent();
videoWrapper.addChild( video );
videos.addElement( videoWrapper );

а вот для удаления

videos.removeElement(myVideos[p][1]); // myVideos[p][1] is a reference of videoWrapper

Ответы [ 2 ]

6 голосов
/ 05 октября 2011

Вы можете сбросить соединение, позвонив по номеру video.attachNetStream(null) или закрыть поток с помощью ns.close();

Вероятно, лучше всего сделать и то, и другое.

4 голосов
/ 25 марта 2013

На объекте нормальное видео не вызывайте attachNetStream(null), потому что AS3 позже не позволит очистить последний видеокадр от видео с .clear() Похоже на ошибку. Используйте ns.close(), затем vid.clear(), чтобы видео объект снова мог быть прозрачным.

Вкл. StageVideo , это отличается: Вы можете позвонить vid.attachNetStream(null), он также удалит последний кадр из видео сцены. Будьте осторожны, это не остановит саму игру. Вы должны позвонить ns.close();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...