Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.01.2011, 17:18
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 1  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
По умолчанию Распаковка неполного архива zlib.

Требуется загрузить swf файл как ByteArray, распаковать, и выудить некоторую информацию. Загружаю успешно, разбираю хедер флешки, беру остаток и делаю uncompress() (документация). Если флешка полная, то она нормально распаковывается, но если она с оторванным хвостом то uncompress() сообщает об ошибки декомпрессии. При том даже будучи неполной флешка нормально играется если её запустить, т.к. флеш заточен под воспроизведение неполных файлов. Т.е. она валидная но неполная. Мне надо распаковать то что есть. Алгоритм сжатия у флешек zlib deflate который позволяет такое сделать. Есть идеи как такое можно сделать? Очень уж не хочется сторонний код на as3 цеплять с реализацией deflate, т.к. будет существенно медленнее и по объёму больше.

Старый 20.01.2011, 17:36
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 2  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
уж не хочется сторонний код на as3 цеплять с реализацией deflate
deflate уже реализован в классе ByteArray

Цитата:
Если флешка полная
Поясните, что Вы имеете ввиду?
__________________
...вселенская грусть

Старый 20.01.2011, 18:08
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 3  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
deflate уже реализован в классе ByteArray
Я знаю, даже спеку указал.


Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
Поясните, что Вы имеете ввиду?
Есть флешка на 10 мегабайт которая показывает картинки, то если от неё отрезать с хвоста пару мегабайт, она будет прекрасно работать, хотя хвост потерян. Флешплееру пофиг на отсутствие конца файла. А если попробовать распаковать такую флешку то uncompress будет ругаться. Вот в чём вопрос. А мне надо распаковать.

Старый 20.01.2011, 18:58
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 4  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Ну тогда вариант только один - парсить по одному тегу
я имею ввиду не swf-теги, а по deflate идти ручками
__________________
...вселенская грусть

Старый 20.01.2011, 20:02
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 5  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
да я знаю что ручками разобрать можно, да не хочется, думаю может есть что-нибудь нативное, флешплеер же делает это.

Старый 20.01.2011, 20:44
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 6  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Конкретно с флешкой - Блуд давно мне говорил, что Loader грузит потоком и с него можно считывать байты ещё до конца загрузки. Сий спец-эффект мне повторить, к сожалению, не удалось. Но кто знает, возможно просто мне не повезло. Покопайте в этом направлении.

Старый 20.01.2011, 21:13
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 7  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
И смысл в таком копании? Loader#loadBytes() сначала все распакует, а потом отобразит. А доступ к байтам ничем не поможет. Мне непонятно только - зачем загружать кусочек флешки и пытаться его отобразить?
__________________
...вселенская грусть

Старый 20.01.2011, 21:28
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 8  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
На сколько я понимаю, флешевыми функциями этого не сделать, но, с другой стороны, я видел реализацию на C#, и она совсем не большая. Так что скорее всего - писать самому / портировать.
__________________
Hell is the possibility of sanity

Старый 21.01.2011, 00:41
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Вроде бы у Loader по мере загрузки можно дергать bytes.

Старый 21.01.2011, 00:51
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 10  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Цитата:
Сообщение от etc Посмотреть сообщение
Вроде бы у Loader по мере загрузки можно дергать bytes.
У меня не получается вот.
Попробуй ты

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:45.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
bytearray , deflate , uncompress , zip
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:45.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.