Camtasia Studio 4 - Static JPG PIP Hack

Comments Published November 7th, 2006 in Screencasting

Sometimes you don’t want / need a flv PIP over the top of your table of contents. Instead what you’d like is a simple, small image file to sit above your TOC adding a nice finishing touch to your Camtasia Studio 4 Flash output. This screencast walks you through the xml edits currently needed to make this happen.
spacer
Screencasts are available for the video iPod as well
spacer

Camtasia Studio 4 - Custom Flash Preloaders

Comment Published November 7th, 2006 in Screencasting

The .fla files and .as files for the new Camtasia Studio 4 preloaders are now part of the software installation. This allows owners of Flash 8 to easily customize their screencast preloader experience. In this screencast you’ll get a step by step walk through on how to quickly update one of the preloaders with a branded logo.

If you want to write a preloader from scratch this screencast also briefly discusses the preloader event object that is dispatched by the controller swf.
spacer
Screencasts are available for the video iPod as well
spacer

Camtasia Studio 4 - Flash Closed Captioning

Comments Published November 7th, 2006 in Screencasting

This screencast takes a look at how, with a few simple xml edits, you can customize Camtasia Studio 4 Flash closed captioning.

spacer
Screencasts are available for the video iPod as well
spacer

Camtasia Studio 4 - Flash Quizzing

Comment Published November 7th, 2006 in Screencasting

With Camtasia Studio 4 we completely revamped the Flash output’s quiz and survey capabilities and for the first time, IMHO, have quizzing which is aesthetically palatable and functionally robust.

This screencast highlights some of the new features, including:

1) Flow layout

2) Multiline questions and answers

3) Global, question and answer level feedback capabilities

4) Virtually unlimited number of questions and answers

4) SCORM 2004 and SCORM 1.2 conformant quizzes
spacer
Screencasts are available for the video iPod as well
spacer

Camtasia Studio 4 - Misc Flash Output Features

Comments Published November 7th, 2006 in Screencasting

Camtasia Studio 4 was released a few weeks back and I’ve finally had the opportunity to make a few screencasts highlighting some of the new Flash related features as well as some backdoor hacks that allow you customize and configures many items that aren’t exposed in the UI. So, the next few posts will be devoted to Camtasia Studio’s Flash output.

This first screencast gives a high level overview of some of the Flash UI elements that we’ve introduced in the Camtasia Studio 4:

1) Flash Preview - Camtasia Studio actual embeds an Active X control in the C++ GUI in order to allow you to pick your Flash output theme (skin) and preview how your output will look in the Flash skin you’ve chosen as you resize elements (scale the content, size the toc, etc.). The Flash theme selector also has buttons which open MFC option dialogs and the like.

2) Target a Specific version of Flash Player - Camtasia Studio allows you to target Flash Player 6 - 8. If you choose to output to swf your content and controller swf’s will both reflect the version you select. If you choose to encode your content as as an flv your controller swf will reflect the version you’ve chosen and the flv will be encoded to the codec you select (both vp6 and h.263 are supported).

3) Optional Preloaders - Camtasia Studio 4 now includes a variety of preloaders and progress bars which come in branded and unbranded varieties.

spacer
Screencasts are available for the video iPod as well
spacer

Apollo Scoops

Comments Published October 24th, 2006 in Flash

Scoops:

 1) Apollo will use the WebKit browser engine (Safari also uses WebKit).

 2) Apollo uses an xml manifest to indicate the application entry point. The content value appears just be the mime type (text/html, shockwave-flash, etc). This means there is no binary / specialized bytecode generated for Apollo apps. You write straight up ActionScript / MXML/ HTML /ECMAScript using the the Apollo API’s for any "desktop" functionality you need.

Usability vs User Experience

Comments Published August 11th, 2006 in User Experience

Last night Betsy Weber, TechSmith’s Chief Evangelist, dragged me to MI UPA meeting which I had mixed feelings about going into–I tend to battle some usability folks who seem averse to aesthetics and are always shoving “Windows standards” down my throat. However, I walked away from the event completely inpired. Up until last night I had never heard of Tom Brinck, but after listening to him expound on usability and user-experience–I have to say the man totally rocks! Tom totally gets it. He knows what web / interface design is all about and his presentation was easily one of the best I’ve ever seen at a user group meeting (hell it was better than most of the sessions you see at conferences).

Perhaps the most fascinating part of the evening was his discussion of Wabi-sabi influenced user-experience design. The philosophy is one of elegance through simplicity and utility, but aknowledges there is inherent beauty in such a design. One of his slides was diagram created by Peter Boersma which outlines the relationship between Wabi-sabi and user-experience design which provides a pretty good overview of topic.

Anyways, this was interesting enough that I thought I’d throw it out into the blogosphere for others to nibble on.

Lightweight SWF Header Reader (Java) II

Comments Published August 11th, 2006 in Flash, Java

After discovering how to compress / decompress swf files via the Java Deflater / Inflater api, I’ve abandoned the RandomAccessFile method of reading the swf and moved to just using a FileInputStream to create a byte array which can then be examined byte by byte, or, in some cases, bit by bit. The end result is a lightweight Java solution for parsing the header of any swf irregardless of whether the swf is compressed or uncompressed.

Another significant change has been reading the swf size from the header rather than just looking at the number of bytes in the file. This is critical when reading a compressed swf since the header contains information about the number of bytes the file will consume when uncompressed.

As with the previous version you are able extract the following information from the header:

  • file signature ( “FWS” if uncompressed or “CWS” if compressed)
  • version
  • size (in bytes)
  • width (getWidth converts the twips to pixels for you automatically)
  • height( again twips to pixel conversion is taken care of)
  • frame rate
  • frame count

I’m again providing both a jar an java source files:

swfheader.jar

SWFHeader.java

PackedBitObj.java

I’m really interested in tackling reading / writing metadata in the swf format, so if anyone has ideas or suggestions give me a yell.

***UPDATE***

I found a bug which effects reading the frame rate and frame count. Because the swf width and height are stored in a “packed” format (the number of bytes needed to store the dimensions varies) I couldn’t use an arbitrary count to read frame rate and frame count. Instead the parseHeader method now stores an iterator that keeps track of the next byte that needs to be read. The jar and source files available above have been updated accordingly.

***UPDATE 2***

Several users noted a bug where large dimension swf files (width & height) were failing to be read. Anson, noted that the using the >>> operator to deal with right shifts does not work as defined in the Java documentation. Instead, every time a right shift is needed we to mask and do a standard right shift - (someByte[0] & 0xff) >> 3. The jar and source files have been updated in the links above.

Decompressing A SWF With Java

Comments Published August 10th, 2006 in Flash, Java

This example reads a swf file into a byte array and decompresses / inflates all of the bytes of the swf except for the the first 8 bytes which are always uncompressed. As most swf files have zlib compression applied, file decompression is necessary if you wish to fully parse the swf. As with the previous post on swf compression, this is a very raw example–no file signature or compression checking is performed before attempting to inflate the file.

SWFDecompressor.java

Compressing A SWF With Java

Comments Published August 10th, 2006 in Flash, Java

The title pretty much says it all–this code sample illustrates how to compress a swf file using the Java Deflater class to perform the zlib compression on all the bytes of the swf except for the first 8 bytes which are always uncompressed. This class isn’t intelligent in the sense that it doesn’t check to see if you actually have a valid swf file signature, or check to see that the file is actually uncompressed. So basically you have swf compression in its rawest form.

SWFCompressor.java


« Previous Entries


Search

About

Cogito Ergo Flammeus is a collection of tutorials, podcasts, code snippets and rants by Brooks Andrus. I am currently employed by TechSmith Corporation, but my views are my own and are in no way associated with those of my employer.

Latest

spacer
  • Camtasia Studio 4 - Static JPG PIP Hack
  • Camtasia Studio 4 - Custom Flash Preloaders
  • Camtasia Studio 4 - Flash Closed Captioning
  • Camtasia Studio 4 - Flash Quizzing
  • Camtasia Studio 4 - Misc Flash Output Features
  • Apollo Scoops
  • Usability vs User Experience
  • Lightweight SWF Header Reader (Java) II
  • Decompressing A SWF With Java
  • Compressing A SWF With Java
  • Blogroll

    • Greg Wygonik
    • Visual Lounge
    • Tim Sneath
    • Aaron Silvers
    • Sam Ruby
    • Darron Schall
    • Peter Elst
    • Colin Sampaleanu
    • John Grden
    • Jesse Warden
    • John Udell
    • Tom King
    • Mike Chambers
    • Fabio Sonnati
    • Patrick Mineault
    • Don Park
    • Tinic Uro
  • Flash Related

    • Flash Mailing Lists
    • JSFL Library
    • OOP Tutorial
    • Open Source Flash


gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.