Jing is absolutely brilliant when it comes to recording and sharing media hosted on Screencast.com, but its ftp output enables some incredibly powerful, customized experiences. Unfortunately, ftp support is extremely rough around the edges making it not all that accessible for the layman. This post aims to change all that by providing a complete example implementation of customized ftp output.
First we need to take care of the basics and configure Jing’s ftp server preferences and ftp code templates (Jing–>More–>Preferences–>FTP).
You can think of the code templates as providing a blueprint of where files will exist on the server. Jing uses these blueprints to create the urls and embed code it returns to your clipboard when you push the ‘share’ or ‘embed’ buttons after recording. The blueprints use several tokens which allow Jing to insert the correct file name and dimensions in each url or embed phrase.
Now you might be looking at the embed code in the image above and thinking it looks a bit strange — that’s because it is. I happen to use the Kimili plugin for WordPress to embed Flash content within my blog and it uses a special syntax. Notice that Jing doesn’t care, you can create pretty much any specialized syntax you want . No worries though, here’s some ‘actual’ embed code like you might get from YouTube or Screencast.com.
Whew, we’re finally through the basic configuration, but there are a few pieces missing. You see, in the embed code template example above an additional file not provided by Jing is referenced which is an absolute must when embedding videos in your blogs. I call this additional file a “click to play” loader. Its a small swf file (8 KB) which is embedded in your blog (any web page really) that serves as a placeholder for your Jing video.
Why is this important? Well, embedding Jing videos directly in your blog means that every time someone visits your page that video (often MB’s of data) will be loaded up, regardless of whether the visitor actually watches the video. That’s not very nice for visitors or for your bandwidth, so instead we’ll embed a small placeholder with a ‘play’ button which, when clicked, will load the video. The placeholder takes up the same space and position as the actual video so your page layout will still look fine and the play button clues people in to the fact there’s a video sitting there waiting for them.
Here’s a link to a zip file containing the ‘click to play’ swf file. You’ll need to download it, unzip it, and then use an ftp client to upload the swf to the directory where your Jing videos are being uploaded. Now you just need to configure your embed code template (see examples above) and you’re all set. Blogging Jing videos is now just a matter of recording your video, hitting the ‘embed’ button and pasting the returned embed code into your blog’s rich text editor.
Here’s an example of the results.
Aren’t happy with the provided ‘click to play’ swf and have moderate Flash skills? You’re in luck–I’m making the source code available so you have complete control over the embed experience within your blog / site.
Hope this helps. Let me know you’re taking advantage or this or another custom Jing FTP solution.
Being awake and trawling the web at 3 AM sometimes means you get an early jump on tomorrow’s big announcements. Here’s a snapshot of the Photoshop Express uploader. Great workflow with a sophisticated and understated UI. I dig it, MUCHO.
Looks like they will be using a tiered model with a free basic version and a paid premium version that unlocks more features. You can really start to see the impact of the Adobe / Macromedia aquisition with these web based products. Looks like 3+ billion dollars gets you Flash Player and sweet ass web based versions of your products.
I made a couple of Jing’s of my first stumble through the application. These are really only useful if you don’t want to sign up, but want to check out the ui and workflow. If you’re an Adobe user experience guru you also might be interested in watching someone pop their cherry. There’s no audio so scrub away.
Here’s the end result.
Jing is absolutely my favorite piece of software made by TechSmith. It’s a quick and simple recipe for broadcasting images and video of your mac or pc that I believe has the potential to redefine how we think of screen capture / recording. It also has the opportunity to have a profound impact on how we communicate with and learn from each other whether its across the world or a few cubes down.
For the first time, rapid visual communication of our virtual desktops is possible. There’s no clunky workflow, no special knowledge of codecs and compression, no convoluted delivery choices — you don’t even need to have web space or know how to upload anything. Jing makes rich screen media creation and distribution accessible and even downright pleasurable.
Thereâ€™s also some wicked cool science at play here. You see, Jingâ€™s rich media delivery takes advantage of whatâ€™s called the picture superiority effect. Research indicates people learn better from images than they do from text. This effect is even more powerful, as Garr Reynoldâ€™s notes, when the consumer is casually exposed to the information.
Jingâ€™s raison dâ€™Ãªtre is to quickly capture and share visual information with others via hyperlinks. You take a snapshot or record a short video, get the url back immediately in your clipboard and slam it in an IM chat window or email. The url is then shared casually with consumers (this isnâ€™t rigid delivery like a classroom lecture). Hell, the lack of editing and spartan recording workflow within Jing means the decision to record is often impromptu — itâ€™s quick, dirty and natural, just as our day to day visual experiences are in the real world.
Video. Letâ€™s face it folks, we live in a world dominated by video. So much so that some interesting movements are afoot amongst progressive thinkers and educators. Michael Rosenblum argues we no longer â€œlive in a print driven culture…we live in a video driven cultureâ€ as he makes his case for video literacy. Heâ€™s not alone in this sentiment. Apple recently profiled Maria Lovettâ€™s â€œWriting with Videoâ€ class which riffs on the same idea and emphasizes the potential of video literacy for students who traditionally struggle with the written word.
Now Iâ€™m not trying to kill traditional literacy — I personally love words. Iâ€™m just looking for patterns and attempting to connect the dots. Prevalent broadband, web video momentum, easy screen recording and sharing, the picture superiority effect, video literacy, the ascendancy of the first web generation. When you add it all together its hard not to be excited by Jing.
So thatâ€™s my pitch on Jing. Itâ€™s free. Hosting is free (free basic screencast account) or you can put it on your own server if youâ€™d like. Thereâ€™s no excuse — check it out.
I was reading about Sam Ruby’s experience as an OS X switcher and he mentions the phrase uncanny valley which is an interesting theory on the emotive response of humans to technology (robotics actually) based on how similar the tech is to humanity.
Now I’m guessing our connections to tech are highly subjective and I might not be as nerdy as Sam and therefore less in tune with my virtual desktop, but I’d posit we’re a hell of a long ways from the uncanny valley. The iPhone is probably the most intuitive and enjoyable device I’ve ever used and its not too far up the food chain from an industrial robot. Regardless, it’s an interesting subject to reflect on as a both a tech contributor and consumer.
What’s your gut reaction to your computer, phone, television and the software applications that run on them?
A few lessons learned while serializing custom classes.
Compiler metadata tags only get you part of the way. Metadata alone is perfectly suitable when you’re not serializing classes with members that contain complex datatypes where those complex types have private members.
If there are private members in your complex data types then you’ll need to implement IExternalizable.
IExternalizable requires implementing two methods, ‘readExternal’ and ‘writeExternal’.
Another thing to watch out for is that it appears you must use a no args constructor in order to deserialize an object. If anyone knows otherwise please leave details in the comments.
AS3 makes it ultra simple to serialize variables via the IDataInput and IDataOutput objects. You just need to remember, when writing out things like Strings, to use writeUTF / readUTF rather than writeUTFBytes / readUTFBytes. The writeUTF method inserts a UTF string representing the number of bytes in each String which means you don’t have to do any grunt work when deserializing with readUTF — nice.