### .SWF files (Flash)

Contents

- .SWF files (Flash)
- Flash Pros and Cons
- Evility
  - Postscript
  - PDF
  - SMB
  - Word/Powerpoint etc.
  - RealPlayer

[Sluggo] I looked at February's LG and saw the HelpDex cartoons are Flash movies. Is this the way of the future?

[Ben] Why, I don't know, Mike. It could be the wave of the future, perhaps. If you look far, far back in history - like back in January - the "collinge" cartoons were done as an SWF there as well.

Just for the record, exactly one person complained last month. He's currently researching to see if his complaint is actually a reasonable one - since I've pointed out some Open Source alternatives to Macromedia's products, and we spent some time discussing the Macromedia license - and has promised to write an article on the subject as soon as he has gathered more data.

[Sluggo] I'm not especially thrilled with content that requires users to install a proprietary plugin.

[Ben] [shrug] I wasn't especially thrilled with the version that you had, which required the viewers to download a huge file and showed it to them as a tiny thumbnail (which "linked" to the full-sized file.) To each his own, I suppose.

[Sluggo] I never install Flash till I absolutely need it, so I'll have to go home before I can see what these cartoons are (and whether they really need to be animated).

[Ben] It's not a question of animation. Flash is what Shane sends me; that's the format he creates it in. Converting it to some other format seems to be a very low-priority task for him - unsurprisingly so - and since Jon Harsem seems to have stopped creating cartoons, and Javier Malonda's output has gone down to very little (and much of that, according to a note on his site, will be translated into English on an intermittent basis), we don't have much to pick and choose from.

As I see it, my choices come down to a) not having any cartoons at all, b) using that proprietary software you mentioned, and dinking around with screen shots, etc., or c) letting everyone else make the choice of what they want to do with it. Choice b), incidentally, produces fairly lousy JPGs - but they're the only format which results in a reasonable file size for these cartoons, although it still had the detriment of loading those large files and "cheat-thumbnailing" them. Fixing the above would require me to rewrite that Python template and your script, which (of course) chokes on actual thumbnails placed in the cartoon author's directory.

And, lest we forget, option b) just shifts the "burden" of using that proprietary software to me instead of having everybody decide what to do about it on their own. Um... not interested in that job, thanks.

Oh, and - Flash produces excellent image quality in a file size that's about half the size of a very poor JPG image, as well as auto-sizing itself to whatever the viewer's screen size is. Just a minor side note.

In short, using Flash requires me to do a lot less work, requires our readers to download fewer kilobytes for the same amount of content and much higher quality, does not require the author or anyone else to spend time to dink with a format that works well to begin with. On the other hand, it does require the use of a free-but-proprietary viewer - at least for now.

http://osflash.org/

If you've got a suggestion that doesn't require me to waste a bunch of time every month and results in an open-source-supported format, I'd be glad to hear it.

[Sluggo] This is just a comment; it's Ben's decision whether to have Flash in LG. I'm just disappointed I can't see the cartoons. :( I'm still behind on my list mail so maybe there was a discussion about Flash. If not, can we have one now? Is everyone happy with Flash in LG?

[Ben] I'm not all that excited by it, but see the choices above.

[Shane Collinge] I've had this discussion with multiple people already (including Ben) and have a few comments:

1. I can understand the whole "proprietary" thing. But the file's a free download, people have been using Real Player for years, nobody's complained too loudly about that. And the download doesn't install malware or anything.
2. SWF are insanely small file sizes with comparably, insanely high file quality that fit ANY screen res - something JPGs don't do.
3. SWF files can't be ripped off and manipulated as easily as JPGs can
4. I'm not being paid for any of the drawing, so I guess I can therefore choose my medium!
5. There are other tools to create SWFs - you don't need to buy Flash, I've even seen ways to create it via PHP.

Ummm... SWF seems to be the latest evolutionary step in my technique, because of the high quality finish with low file size, plus the nice colours and ability to animate. Whether it's embracing the devil or not, I don't know. But that's where I am right now, I guess. Sorry to the people that don't agree with this technique.

[Sluggo] No problem, man. I just didn't know what direction you were going or why. Whether the .SWF were just occasional or permanent, whether you felt they were a better long-term media for you or what. That's separate from the discussion of LG, and as I've said I've given up control over that. I was just surprised the change had happened without a discussion or even announcement in LG, but I've been sick for the past month so maybe I've missed it. But none of it is your fault. I'm glad you're still making cartoons.

[Shane] Nah, I've been using Flash for over two years now! For producing my style of artwork, I think it ruuuuules. Sure, the Flash creation software's proprietary but the SWF format's not - to the best of my knowledge, anyway. I actually downloaded the specs from the Macromedia site a while ago because I was toying with the idea of making my own SWF creation program using OpenGL as it's engine. I use Flash for animation sure, but for HelpDex still images I just use the vector part of the software, to get nice solid clean lines and strong, fast colouring. Flash has some glitches in its interface that bug the bejeesus out of me, but also has some good & great parts and the net result is I like it much more than I hate it. As for discussions on LG and their introduction of it... well I guess that's outside my control (other than me giving them the new format). This also means that next year when I have time and start ANIMATING HelpDex - fingers crossed! - the infrastructure's already there. Not sure if you've seen them, but I've already animated about 7 or 10 HelpDexes anyway. So allowance for animation needs to be made in the LG code at some stage if they want to run these.

[Ben] Shane, what would need to be done differently in order to play Flash animations? As far as I know, the HTML wrapper that we're using around it right now works just fine for Flash movies; I've tried it out with animated content, and it seems to work fine.

[Shane] If your code's currently showing the static SWF images, then there's NO change that needs to be done - it'll all just work. The static image you curently see is actually just an animation with a single frame rather than many, and to the user an aniamtion would simply show the "loading... xxx%" messages you normally see before kicking off into its show.

[Kapil] I'm a bit puzzled. Why would people want to put cartoons in a JPEG format? As I understand it JPEG is for photographs, not for drawings.

[Sluggo] Javier Malonda's Ecol cartoons are in PNG. PNG is more efficient for images with few colors (like cartoons); JPG is more efficient for images with thousands of colors (like photographs). But LG has long accepted JPGs in either case without converting them because it's not that big a deal. The current browsers handle PNG fine. Netscape 4.77 couldn't display PNG with transparency; it showed up as a solid box. I don't know why Shane chose JPG but it may have been for compatibility.

[Ben] I've actually spent some time reading up on image formats in the past, and have seen the 'this format is best for $FOOBAR, while that one is best for $BLAH' arguments. As far as I'm concerned, in practice, they're not real distinctions. That is, it is possible to make a 16 million color PNG in a ~60kB-size file (and a 256x256 color in 678 (!) bytes), but that appears to bear no relation to processing actual, real-life images, where I want the image to convey maximum information in a minimum file size. In that latter case, except for a small number of exceptions - and I'm sad to say that I have not determined the common factor for those - JPGs come out smaller than PNGs, by an overwhelming majority.

In the case of one of Shane's cartoons, it looks like this:

    502thumbs.swf    20269
    502thumbs.jpg    53862
    502thumbs.png   138759

Note that both the JPG and the PNG have been compressed as much as possible without losing image quality (via "jpegoptim" and "pngcrush", respectively) and are each 800x335px in size; both show up rather jaggy on my 1280x800 screen. The SWF, despite its much smaller filesize, shows no visible artifacts when viewed at that resolution; bringing the two images up to an equivalent display size nearly doubles the filesize.

[Kapil] PNG is a reasonable format for drawings that need to be exported in bitmap format. For drawings that were made in vector format and will be subjected to arbitrary scaling there is SVG and Java...and also Flash.

[Sluggo] I don't know about vector formats; I've never seen them on the web. I've only seen Flash used for its animation ability, not to make a scalable still. So Flash is really a vector drawing program?

[Kapil] As far as I know the latter is an open format,

[Sluggo] Is the format actually published?

[Ben] Given that GNU is developing a viewer based on the SWF specification, I have a sneaking suspicion that it is, yes.

http://www.gnu.org/software/gnash/

[Kapil] I admit that both these were assumptions based on what I had seen (that flash scales really well) and "heard" (from the osflash site).

[Jimmy] The format was published around the time of Flash 3; I don't know if the more recent versions were published, but people have gotten pretty used to reverse engineering it.

[Sluggo] Do the free players work with all Flash content?

[Kapil] I don't know about all content but the swfdec-mozilla-player that comes in the Debian package swf-player can show the HelpDex cartoons just fine. So also those animated "greeting cards" that some people occasionally send me. The only unfortunate aspect of this viewer is that it drags in gazillion other packages since it is based on "gstreamer".

[Sluggo] Do we know that Macromedia won't add proprietary extensions to discourage the use of other players and composers?

[Ben] And what if they did? Mike, that's a red herring and you know it - that's a "what-if" that you can play with many projects. The answer is that we'd use the currently-available versions - or switch to another format whenever it suits us. Where's the problem?

[Sluggo] We can put files with only compatible features in LG and switch formats whenever we want.

[Ben] So can anyone else. That's exactly the point.

[Sluggo] I'm talking about Flash in general.

[Ben] Why? What makes it so important? It's useful for today; if it doesn't suit tomorrow, it'll be discarded in favor of something that does. That's how technology works.

[Sluggo] If Macromedia does add stuff to it, we (free software types) will be playing catch-up all the time like we do with Samba and Word and used to do with PDF and Postscript.

[Ben] Anyone that feels like playing catch-up is welcome to do that. Those of us who don't, won't. I've never felt like I was playing catch-up with either PDF or PostScript; I got exactly what I wanted out of them, in the case of both creating and displaying them.

[Sluggo] Better to just boycott the format.

[Ben] You're welcome to do that. I'd say that you're going to lose out on the content that the rest of us are going to have access to, but it's your choice.

Look, Mike. You're making all kinds of unsubstantiated claims about Flash, and at this point are calling for a boycott against it - still based on nothing more than those vague claims that you yourself have generated. I don't see that there's anything useful to be had out of further discussion about it - at least pending additional facts. Let's just let it go until then, 'K?

[Sluggo] One comment and then I'll shut up. How is accepting Flash documents different from accepting Word documents?

### Flash Pros and Cons

[Kapil] I did some more googling^H^H^H^H^H^H^H^Hresearch and found out a bit. Sorry for the rather long mail. I hope it serves to inform rather than wake up the trolls.

1. The official Flash specification is in fact only available under a strange licensing agreement which specifically forbids the licensee from developing a Flash Player. Its sole purpose is to help people develop Flash Writers. (Ref: http://www.macromedia.com/licensing/developer/fileformat/faq/)

+1 to AFA (= Anti-Flash-Advocacy)

2. There are currently at least 5 projects under way to develop a Flash Player without reading the specification. Actually, one of them (gplflash) has merged into gnash. http://www.gnu.org/software/gnash/ and http://www.schleef.org/swfdec/ seem to be the most promising. As said earlier the latter already "seems to work".

-1 to AFA

3. The projects seem to be based on the time-honoured technique used by Samba, Abiword et al---"Reverse Engineering" in its completely legal sense.

+1 to AFA if you believe Samba and OpenOffice are doomed to play
  catch-up all the time.

4. There are a number of SWF content generators that are FLOSS. After all the writers of such generators are encouraged to read the official Flash specification as published. See www.osflash.org for details.

-1 to AFA

Frankly, I am confused by MacroMedia's bizarre license but it isn't the first time someone has given a new and strange twist to software copyright.

Mike also wrote comparing this to Word/SMB/CSS DVDs/PDF and postscript. However,

> "You are in a maze of twisty passages all different"

As far as I can see all these cases are different. I personally never thought of Postscript and PDF as being proprietary formats since I never used proprietary PS/PDF generators and none of my correspondents ever did so.

A rather long postscript [*] follows on what I understand to be the "restrictive usage" issues dealing with these formats.

Executive summary: I think Ben is right in calling Flash a lesser evil than either Word or RealPlayer but then that is a matter of opinion and a lesser evil is nonetheless an evil.

[*] | Couldn't resist the pun :)

In order of Evilitude or is it Evility (which is the opposite of civility)

### Evility

#### Postscript

I recall that one could buy the RGB books of postscript that described the language in great detail; and there was no clause in those books that said "thou shalt not write something called ghostscript that implements this language". What did happen is that there was a section of postscript that allowed each printer to have its own proprietary PS dictionary. A "driver" for that printer then used operators from that dictionary to enhance printing and the resulting postscript files did not work well with ghostscript of course. Postscript files that were generated using tools like "dvips" which were based on the RGB books alone, worked fine with ghostscript and with most PS printers. As people started exchanging PS files over the net these proprietary extensions became a hindrance and were mostly dropped.

#### PDF

Maybe I'm wrong but PDF was Adobe's "network"-if-ied version of Postscript. They tried to build in the proprietary extensions in a way that they would be network transparent but again were largely unsuccessful. There is of course, the "default 16 fonts" issue (that was in some sense an issue with PS as well) but as long as you had reasonable substitutes for those fonts everything worked just fine. Again documents that were generated using tools like "pdflatex" that included all the fonts/glyphs used worked fine with all readers. What "xpdf" cannot currently do are the fancy "transitions" like "Dissolve"---I don't know why this is so, but it has not bothered me since I don't care for it. To me encrypted PDF is like encrypted DVD's---if someone doesn't want me to enjoy their creativity---I won't.

#### SMB

Andrew Tridgell and folks (a big salute to them) patiently gathered network traffic in order to decode the way in which SMB was spoken and wrote clients/servers in some ways better than the original. Of course, the MicroSoft will continue to improve/modify(:)) their protocol but existing deployment prevents them from introducing incompatibilities that would break Samba as it would probably break Windows 95/98 as well. Note that Samba has (always had?) some security features over and above that offered by the proprietary version so in principle a number of people did switch over to Samba servers instead of proprietary servers. When enough people do that the proprietary protocol is under pressure to be more compatible with the "discovered" specification and avoid proprietary "enhancements".

#### Word/Powerpoint etc.

Some major effort of catch-up was required here but it does seem as if the current version of OpenOffice can deal with many MicroSoft generated documents. Again OO has added features to its software (like incorporation of LaTeX) which are not automatically available with the default MS offering. This and its slightly better security status could lead to enough people using it to pressurise MS to keep to "discovered" specs.

#### RealPlayer

They disclose so little I don't think there is anything to say here. To use a phrase from Joerg Schilling out of context "RealPlayer is the most self-incompatible piece of software that I know".

[Sluggo] Thanks, Kapil!

[Rick] Yes, thank you, Kapil. That was an enormously informative if not scholarly piece.

[Ben] It's exactly the same, Mike; no difference at all. Both have the .doc extension, both are common Web formats, both are Open Source, both have a project at GNU.org creating a viewer for them, both have an entire Open Source community creating authoring tools and discussing the exciting possibilities of the format, sharing code, tips, and even programming tutorials...

No difference whatsoever.

[Sluggo] Of course I have to read Word documents sometimes. But otherwise it's a tradeoff between how much I need the content vs how much I don't want to support vendor lock-in. Just like with other less-than-free formats like DRM music or CSS DVDs. The only way to blow these formats away is to put pressure on the content creators to release stuff in totally open formats. If they won't make content in the formats we want, we'll just make our own content instead.

[Ben] Feel free. So far, I haven't seen anything from you - or anyone else - that can make a claim of being even partially equivalent to Flash.

[Sluggo] Maybe SWF will look free-er in a couple years than it does now, and become the widespread medium of choice among free-software enthusiasts.

[Ben] It has; it just hasn't gained your favor. At this point, it looks like you're arguing to defend the position that you took up initially even though that position has completely crumbled away... but, hey, losers get killed and eaten here, so you've got to defend it to the death. I understand, and even sympathize (although I don't think in terms of winners and losers here, or even in terms of any kind of competition that results in such a thing) - but I'm glad that this is your "one [last] comment" on the subject.

[Sluggo] It's been done before with Postscript,

[Ben] Really? As far as I'm aware, Adobe just kept quietly releasing Ghostscript as Free software one version behind from the very start,

[Jimmy] Ghostscript has nothing to do with Adobe, other than implementing a language they designed.

[Ben] This is what I recalled from reading their docs, a number of years ago... but I seem to recall that they had a commercial and a free version, one level apart. Is that right, or am I thinking of someone else?

[Sluggo] Aladdin had a commercial and a free version, one generation apart. AFAIK they weren't related to Adobe.

[Ben] That must have been it, thanks; I obviously mis-remembered the company name, given the close connection with the format, etc.

[Sluggo] Adobe published the format for PDF only when market forces forced them to. I remember an article about an executive "with tears in his eyes" as he made the announcement. Because it was the end of their cash cow.

[Ben] Well, not exactly. If it was the end, then they wouldn't have had to do anything - much less release the format into the wild. Their business model was changing, and that often results in managers (who tend to be highly conservative as a breed) cry lakes of salty tears. [shrug] Note that Adobe is still in business, and going strong; old Bessy is still producing lots of milk. Only the milking method has changed.

[Ben] much like ATI with their video drivers (although with a lot fewer problems.) Nobody has "forced" Adobe to do anything by not using PS; in fact, anyone doing serious layout work in the Unix world would never have considered using anything else. I guess that continuous usage somehow constituted "pressure" on Adobe... but I must say that the logic eludes me. In my simple-minded worldview, it looks more like complete absence of any pressure on them, coupled with the company's desire to have a market-dominant format - and to sell the high-end tools to the people who do the big-time professional stuff with it. Every person that uses the format is a small but positive influence for authoring in that format - and Adobe appears to have a firm grasp of that principle.

[Sluggo] and PDF is getting more widespread too now in free software projects. But that still doesn't erase their "tainted" origins as proprietary formats originally used to lock in a captive market. Maybe we should be glad they were later given as gifts to the world. But the way that happened still bothers me.

[Ben] Perhaps they should do penance - CEOs should be flogged in the town square, chained in full view of the public they've abused with their evil former behavior and fed dry crusts of bread for a couple of years just so we all know they've truly atoned. This would be such a tremendous motivational technique for all the other closed-source companies that they would immediately and inevitably jump on the Open Source bandwagon...

When companies realize that it's in their interest to support Open Source, then they do so. Until they see that, they don't - AND RIGHTLY SO, as far as I'm concerned. Companies are not run in order to please Mike Orr - at least, I've never seen it at the top of anyone's requirements chart - but to make a profit; those that make the right moves to continue making profits are the ones that survive.

I know what side of that fence I'm on, and time will tell whose vision is right (as far as I'm concerned, it already has - although it's not quite as clearly evident as absence/presence of oxygen.) The world of business is agnostic - in fact, rather Zen Buddhist in its operation; there's no penance, atonement, required suffering, etc. Do the right thing, and you gain merit (money); do the wrong thing, and you lose it. Trying to see it as some sort of a Brueghel Hell, with sinners flogged eternally for their errors, isn't going to get you any sort of a true picture of what's happening. Nor is anyone going to buy into it, particularly when you demand that the skin come off their backs.

[Sluggo] PDF is "open", for instance, but people can still make encrypted PDFs or not include the fonts in the file, and then the non-Acrobat readers are screwed. I haven't seen those for a while so I don't know if people are making more standards-oriented PDFs now or the problems have been resolved in xpdf.

[Sluggo] RealPlayer is annoyingly proprietary but I've long reconciled myself to it. At least the company is OS neutral.

[Ben] I find it fascinating that you're willing to make excuses for a proprietary product while bringing up all sorts of objections about an open format. Is that the sound of an ox being gored in the neighborhood of Seattle?

[Sluggo] I don't understand the last sentence. I did find myself shut out from some sites that required RealMedia 10 or so because there wasn't a Linux version of it. That was a while ago and I don't remember the sites. I didn't know SWF was ever open.

[Sluggo] I feel better listening to radio programs in RealAudio format than Windows Media, and it's easier to configure than getting the browser to send an MP3 file to MPlayer or XMMS. (Hi, MPlayer, why are you just sitting there silently?)

[Ben] Firefox with the MPlayer plugin works fine for me.

[Sluggo] Or worse, sites that have their own built-in player.) We've never had sound files in LG so it's never been an issue here.

[Ben] Well, we've had a few within the past year or so.

    ben@Fenrir:/var/svn/linuxgazette.net/articles$ find -name '*ogg'
    ./104/misc/oregan/improv1.ogg
    ./104/misc/oregan/improv2.ogg
    ./104/misc/oregan/improv3.ogg
    ./111/misc/oregan/things-compressed.ogg
    ./111/misc/oregan/things-amplified.ogg
    ./111/misc/oregan/things.ogg
    ./111/misc/oregan/things-raw.ogg

[Sluggo] Fortunately, if we do want sound files someday, there's an open format (OGG).

Ben, I didn't make thumbnails because I was lazy, OK? Nobody ever complained about the size of the downscaled image files or the distortion of the images. If they had, I would've done something more elaborate.

[Ben] Most people take that kind of irritants in stride, since investing time and effort in dealing with them is likely to end up being unproductive anyway. Hell, I certainly had grounds for complaint: downloading a page for 10 minutes over a 1kB/S cell modem only to see tiny little thumbnails resulted in me ignoring the funnies in LG during much of the time that I'd been reading it. However, I just figured that it was how it had to be - LG being a volunteer effort - and I'd just live with it. I damn sure would have preferred not to.

(Note: I'm currently in the process of writing a CGI app that sucks up an image filename as a parameter and spits out an image stream - meaning that you can use it as a thumbnail link for a given image without having to generate an actual thumbnail file. When it's done, I'll be happy to send it on request.)

[Kapil] though the software most commonly used to produce and view the content is not free.

[Ben] Thank you for bringing that up: that's precisely the point that I made to Saul (the one person who complained about Flash last month.) The creator software from Macromedia has a restrictive license; the viewer software does not appear to have anything nearly as restrictive, and the format itself is, AFAIK, open.

[Kapil] As I pointed out earlier, there is software that can be used to view flash that is free as in libre---in fact I viewed the HelpDex stuff using swfplayer.

[Ben] There's also FOSS software that can be used to create it - which, as far as I'm concerned, ties down both ends of this equation.

[Kapil] The only reason for leaving out PNG in the past would have been that there were still some browser/OS combinations out there that did not support it. Does that problem still persist?

[Ben] Not as far as I'm aware. That problem is way in the past, AFAIK.

[Sluggo] OK, I just saw the cartoons, and the January ones. I guess I totally missed the January issue. It came out right when I got sick and I couldn't do much for a few days except sleep and try to get over my headache, plus I had a persistent cough which is still going on. And I got three weeks behind on my list mail and still haven't caught up. So I forgot about the January issue completely. Otherwise I would have remembered the cartoons coz I always look forward to them.