Есть такая штука, swftools. В ней присутствует утилита swfextract, при помощи которой всё легко достаётся:
1. Выполняем команду
swfextract myfile.swf
На выходе получаем примерно такое:
Objects in file myfile.swf:
[-i] 2 Shapes: ID(s) 2, 4
[-i] 5 MovieClips: ID(s) 3, 5, 7, 10, 11
[-j] 2 JPEGs: ID(s) 17, 632
[-p] 1 PNG: ID(s) 915
[-s] 7 Sounds: ID(s) 40-45, 584
[-F] 2 Fonts: ID(s) 20, 21
[-f] 1 Frame: ID(s) 0
[-m] 1 MP3 Soundstream
2. Дальше извлекаем нужный ресурс. Например, можно утянуть музыку. Вот только команда с ключом -m дохнет с ошибкой ERROR Soundstream is not mp3 (2), зато, например, командой
swfextract -s 44 myfile.swf -o 6.wavнужный саундтрек достается без хлопот.
Есть еще полезная утилита, swfdump - она показывает более подробную информацию. Т.е. выполняем
swfdump myfile.swf > 1.txtи смотрим всякие DEFINESOUND defines id 0044 (...) и т.п. - чтобы было понятно, что достаем.
Основная проблема - эти самые swftools поставить. Вроде как в репозитории убунты такого нет, поэтому ставим из исходников. Тут есть небольшая тонкость: потребуется доустановить пакеты libjpeg-dev и libgif-dev. После этого всё компилируется, правда, с кучей ворнингов, но работает, вроде, нормально...
Windows: а в винде всё, помнится, было просто. Во-первых, с браузером интегрировался Orbit Downloader, который позволяет без проблем сохранять флэшки на диск, и, во-вторых, есть Sothink SWF Decompiler, который, хотя и платный, зато имеет приятный интерфейс 8-)
Комментариев нет:
Отправить комментарий