1.) What's the price of swftools? SWFTools is free of charge (donations are welcome, though), and is released under the GPL (http://www.gnu.org/licenses/gpl.html). 2.) Where can I donate? You can donate via PayPal by clicking on the "donate" button on http://www.swftools.org/donate.html . 3.) How to compile/link swftools on Unix/Linux/BSD? Download swftools-0.x.x.tar.gz. Then type, on the command-line: tar -zvxf swftools-0.x.x.tar cd swftools-0.x.x ./configure make make install (you will have to be root for the last step) 4.) What libraries do I need to compile swftools on Unix/Linux/BSD? You need freetype and jpeglib to compile pdf2swf. Links: freetype: http://www.freetype.org jpeglib: http://www.ijg.org/files/jpegsrc.v6b.tar.gz 5.) when compiling the sourcecode version, configure doesn't find my jpeglib! In case some of your libraries/include files are installed in /usr/local, try the following: rm -f config.cache LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" ./configure Furthermore, a new installation of jpeglib (the following assumes it's in /usr/local/lib) often requires doing a ranlib /usr/local/lib/libjpeg.a ldconfig /usr/local/lib In order to install jpeglib, it's furthermore been remarked that you need to do make install-lib make install-headers . If it still doesn't work, try removing the file "config.cache" before running configure again. 6.) There are problems during compilation: Error messages complain about "undefined reference to `operator new(unsigned)'" as well as "undefined reference to `__gxx_personality_v0'". Try running configure as LDFLAGS=-lstdc++ ./configure 7.) How do I compile swftools on Mac OS X? You need to get fink (http://fink.sourceforge.net), and install it. After this, you need to install all the required libs (jpeg, freetype, lame): fink install libjpeg libjpeg-shlibs freetype2 freetype2-shlibs lame lame-shlibs Then, you have to inform configure of where they are: LDFLAGS="-L/sw/lib" CPPFLAGS="-I/sw/include -I/sw/include/lame" ./configure make sudo make install If this doesn't work, especially if you want to use the python library and get weird exceptions, try to remove all versions of jpeglib, freetype and lame from /usr/lib and /usr/local/lib, and then run configure / make / make install again. If you also want to use the python interface, you may have to copy the Imaging headers (Imaging.h, ImPlatform.h, ImConfig.h) to /System/Library/Frameworks/Python.framework/Versions/2.3/include/python2.3/ before running configure. 8.) Is there a pdf2swf/avi2swf for Windows? Windows versions of all SWF utilities are downloadable from http://www.quiss.org/swftools/download.html . (There's a self-extracting .exe version of all versions since 0.6.1, and a .zip or .rar archive of the newest development snapshot) 9.) Where's the source code of the Windows version? It's the same as the Unix source code. If you want to compile under Windows, it's recommended that you get the CVS version of the sources. You need MingW (http://www.mingw.org) to compile it. When cross-compiling under Linux, e.g. the following generates the Windows .exe files: CXX=i386-mingw32msvc-g++ CPP=i386-mingw32msvc-cpp CC=i386-mingw32msvc-gcc \ ./configure --host=i586-mingw32msvc && make For compiling on Windows itself, there's a HOWTO from Daichi Shinozaki: http://lists.gnu.org/archive/html/swftools-common/2005-02/msg00023.html 10.) The fonts in the SWFs generated by pdf2swf are wrong! Watch the output of pdf2swf closely. You should see something like: WARNING Font Myriad-Roman could not be loaded. WARNING Try putting a TTF version of that font (named "Myriad-Roman.ttf") into /swftools/fonts Provided you actually own the font in question (here: Myriad-Roman.ttf), you can copy that fonts into your current directory and pass the "-F ./" (--fontpath ./) option to pdf2swf. If you use a font in several PDFs, you can also simply copy it to (on Windows) C:\SWFTools\Fonts\, or (on Unix) /usr/local/share/swftools/fonts to make it work all the time. 11.) Can png2swf handle transparency? Yes. It supports PNG mode 2 transparency (256 color palettes with alpha) since version 0.4.2. Mode 6 (32 bit RGBA truecolor) is also supported since version 0.4.4. 12.) How to do Flash MX compression with SWFTools? Most tools support the -z flag for outputting compressed SWF. Furthermore you can compress/uncompress SWF files using swfcombine: swfcombine -dz file.swf -o file_new.swf compresses, while swfcombine -d file.swf -o file_new.swf decompresses. 13.) avi2swf converts my avi files upside down! Try using the -p (--flip) switch. 14.) How to extract images/sounds from myfile.swf using swfextract? First list all extractable items: swfextract myfile.swf The result is something like: Objects in file myfile.swf: [-i] 3 Shapes: ID(s) 1-3 [-i] 5 MovieClips: ID(s) 4, 5, 8, 10, 12 [-j] 3 JPEGs: ID(s) 69, 116, 447 [-p] 1 PNG: ID(s) 318 [-s] 3 Sounds: ID(s) 28-30 [-f] 10 Frames: ID(s) 0-10 Now you can extract a shape using swfextract -i 2 myfile.swf -o shape.swf a sound using swfextract -s 28 myfile.swf -o sound.wav a PNG image file using swfextract -p 318 myfile.swf -o file.png etc. 15.) Is there a mailing list for SWFTools? Yes there is. You can subscribe by going to http://mail.nongnu.org/mailman/listinfo/swftools-common 16.) Why didn't Matthias answer my swftools-related mail? Currently, Matthias is getting much more mails than he can answer. It's frustrating, but it's true. He tries his best to at least *read* all mails he receives. If you need an answer to something, it's usually more effective to post it on the mailing list, though, as there are a lot of friendly users around there which may have the one or other helpful tip concerning your problem. 16.) When will feature/bugfix/enhancement XY be implemented? Setting deadlines in a non-commercial, spare-time project like swftools tools is hard, and keeping them is even harder, if not impossible. Therefore, do not ask about deadlines, and you won't get fuzzy, or even wrong, answers. 17.) How to compile avi2swf? avi2swf isn't part of the swftools distribution anymore. If you want to convert avi files to swf, please use either mencoder or ffmpeg: mencoder file.avi -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames \ -ffourcc FLV1 -oac mp3lame -of lavf -ovc lavc \ -lavcopts vcodec=flv:acodec=mp3:vbitrate=500:abitrate=56 -srate 22050 \ -o file.swf or ffmpeg -i video.mpg -b -s y -pass 1 -passlogfile log_file video.flv ffmpeg -i video.mpg -b -s y -pass 2 -passlogfile log_file video.flv flvtool2 -UP video.flv 18.) How can I create transparent SWFs from PDFs? Run pdf2swf as usual, and then, on the resulting file, execute: swfextract -i 3- file.swf -o file.swf 19.) How can I convert SWF frames to bitmap? There's a "swfrender" utility in the CVS, which isn't finished yet, and will only work for *very* simple SWF files. (No Actionscript, no gradient fills, no morph shapes, no blending modes, no filters, etc.) Probably other Flash Open-Source projects (like Gnash) have some more sophisticated utilities for this. (One user reported that swfdec (http://swfdec.freedesktop.org/wiki/) and pyswfdec (http://www.gnome.org/~gianmt) work good) If you find other tools that work, I'd like to know about it. Please mail me at kramm@quiss.org.