![]() |
Video на таймлайне ест fps после удаления
Здраствуйте.
Столкнулся со странным поведением экземпляра класса Video (которое я импортировал с внешнего flv файла в библиотеку Flash CS5.5). Он размещен на таймлайне одного клипа с классом TvSprite. Экземпляр TvSprite лежит внутри клипа-фона для меню. Все происходит так - грузится меню, создается фон, после нажатия на кнопку меню удаляется. Проблема в том, что при каждом переходе видео на начало фпс падает с 30 до 25. Впрочем, важно не это, а то, что после удаления меню видео все равно отьедает фпс. Вставил на первый кадр клипа с видео trace("here", parent); - после удаления выводит here, null. Т.е., видео удаляется. Но все равно трейс выводится и видео крутится. Как обьяснить такое поведение и как удалить видео? UP: похоже, я где-то ошибся и дело не в видео :) После его удаления все равно видет trace. Буду искать ошибку. |
а ты останавливаешь видео перед удалением? Попробуй видео со звуком. Если звук не пропадает, значит видео где-то играется.
|
Вообще не понимаю, что творится :(
Оказывается, дело не в видео. У меня в TVSprite несколько слоев, один из них - для flv видео, а на одном - трейс. Так вот, после удаления слоя с видео все равно трейс виден. Все ссылки зануляю; у меня есть класс меню с "деструктором" - проверял, он вызывается. Само меню зануляется. И спрайт с видео, и его родитель удаляются. Почему же видео не удаляется сборщиком мусора и все равно крутится на фоне, с периодом в несколько секунд понижая фпс? Rzer, если написать stop в "деструкторе" меню для спрайта, на таймлайне которого есть видео, снижение фпс прекращается, но меня все равно такое пугает. |
я думал прошли уже времена, когда люди пугались, что GC в AS такой не совсем понятный..
есть способы повлиять на него, вот такой, например http://silin.su/#AS3/utils/gc |
Так, новый неожиданный поворот.
После закрытия меню несколько секунд счетчик фпс показывает 500-1000 :) Все как будто на быстрой прокрутке - короче, фпс невероятно растет. Это что, глюки плеера такие? Тестировал на разных компьютерах/плеерах. Я сделал так - выделил таймлайн с видео в отдельный клип и поместил его в последний кадр телевизора. А по окончанию меню перехожу на кадр, где нету видео, и они перестают создаваться. |
FPS больше 120 быть не может. Это ваш счетчик неверно считает в какие-то моменты.
Я бы все делал кодом и не использовал кадры. В данном случае это более чем актуально. |
Да я все делаю кодом, кроме графики. Тут такой случай - для игрового туториала сделал видеоподсказки (спрайт телевизора, а внутри него видео), а потом экспортирую изображения телевизора с видео в swc.
Вод код счетчика: Код AS3:
|
Код AS3:
Счетчик правильный. Вероятно там что-то адобовцы намудрили с видео. Какой плеер? Релиз-дебаг? Стандалон, плагин, activeX? А как выглядит в другом плеере? |
И тот, и тот плеер. И стандалон, и плагин. 10.3 и 10.1 (вроде бы).
На разных компьютерах. Удаляю видео с "телевизора" - все нормально. Еще пару часов назад и с видео было все нормально; вроде бы, никаких существенных изменений не делал. Так выглядит туториал (текст даже в ворде не проверял :)): http://habrastorage.org/storage1/cd2...5/3bf67f75.png После его закрытия - несколько секунд такого (слева вверху счетчик): http://habrastorage.org/storage1/7a4...c/73c67506.png |
Хм. Интересно. Почитайте эту темку с комментариями и просто попробуйте сделать другой FPS метер.
ЗЫ. очень симпатичная графика. |
| Часовой пояс GMT +4, время: 17:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.