Published on March 5, 2005 in Tech and Web. Closed
Another very handy little Cocoa program I came across recently is CocoaMySQL. Its basically a graphical user interface (GUI) for accessing MySQL databases. I recently installed WordPress (which stores user account information and more in MySQL) locally on my laptop as an experiment and CocoaMySQL helped demystify the installation process completely. Initially I didn’t really know how such a database worked but after examining it using this program it all started to make sense.
I’m a big fan of these applications which make UNIXy command line processes accessible to the lay-person.
Published on March 5, 2005 in Tech and Web. Closed
del.icio.us is a free social bookmarking site which lets you log in, post a URL, a brief description and use ‘tags’ to organise and categorise your links and browse those submitted by others. It even generates RSS feeds of bookmarks for each user. On its own this is very cool, and a good way to keep track of bookmarks across multiple computers / operating systems / locations.
If you happen to be using Mac OS X, Cocoal.icio.us allows you to access and manage your del.icio.us bookmarks, descriptions and tags without having to use a web browser by talking directly to the del.icio.us API (once you’ve told it your username and password). It also features a built in browser preview window, so you can click on a bookmark and to check that you got the URL right etc.
Vidget 3.5 is an experimental interactive audiovisual performance device which allows the user to manipulate video in real time online. As well as mixing a number of video clips together, the user may search for still images from the Flickr photo sharing site and mix them together. For a instructions on usage see previous versions above.
This is the latest version of my Quicktime vj/image search app. It now works as two separate movies which talk to eachother. Click on each of the images above to load in Quicktime Player.
More details, instructions etc soon (i’ve gotta race to the library to return some very overdue books!).
I recently completed work on an experimental internet radio program with Hannah Miller and Kate Eccles. Hannah and Kate are final year Media students at RMIT majoring in Radio and TV production. My role in the production was to take various pieces of audio, video, still images and text, and create an interface which would allow the user to mix and match the elements in an exploratory, non-linear way.
The result of this work is a program called “Inspiration”, which features interviews, live footage, sound recordings and lyrics from Reset://0 a Japanese influenced Melbourne band.
The program was authored in LiveStage Pro and is a Quicktime file that consists of a sprite track, several movie tracks and a text track which features lyrics. The above image shows the partially completed work as I was assigning sounds to various non-square shaped roll-over buttons. The idea was that rather than presenting the user with a list of options, or even a grid of non-labelled options, the work should encourage the user to explore the screen space with the cursor, almost like they are feeling their way in the dark. To give the users some feedback, and a little direction as to where may be a good place to explore, I used Hanna’s fire twirling image as a guide. I placed invisible sprites over the background image which reacted to the “MouseEnter” event, triggering sounds which played in specific movie tracks, and changing the sprite image for the background so that different parts of the fire twirling would be illuminated and hi-lighted.
You can view the completed work in context on the interadio site. Or, to go straight to Inspiration(requires Quicktime, a fairly recent computer and a decent broadband connection – 15Mb)
I arrived in Newcastle late on the Wednesday night, its was a very long drive from Melbourne.
I stayed at an Irish themed pub called the Northern Star Hotel. The room was clean, fairly big (bigger than my room at home!), had two desks for me to set up all my equipment on and a tv with Channel V (doubled as a handy preview monitor too).
On Thursday morning I finished preparation for my Critical Animals presentation. I brought my printer/scanner/multifunction thing with me so I could scan in some last minute images from books (I still need to find some video of John Whitney’s films) and print out some notes to refer to.
I decided to use the Finder as my presentation tool after a bad experience a few months ago trying to use Keynote on the 2nd monitor output of my laptop with the notes on my own screen. It was very messy and the audience couldn’t see what I was doing properly. This time I set up a series of folders for each of my main points. Within each of these folders I had either examples (Quicktime files, jpegs etc) or sub-folders with sub-points. This worked very well, letting me keep track of where I was up to and letting the audience see exactly what I was doing.
I just caught the end of Keir Smith‘s presentation From Transmission to Multiplicity: Interactive Art Installations as a Site for Research which looked very interesting. Keir is a Phd candidate from iCinema at UNSW in Sydney. He is studying as part of both the Collage of Fine Arts (COFA) and the Computer Science department.
“Keir Smith explores the changing methods with which interactive art installations are being designed, built and experienced, and the shift from singular author/creators, to groups of collaborators and multiple users.”
I look forward to reading his full paper when it is published in New Media Poetics.
Later that night I headed over to the QuantaCrib, an all-in improvised AV jam space. If I expanded the collection of computer and music bits and pieces that fill my tiny room to fill a hall sized venue this is what it would look like. Great fun. They had two video projectors going so I plugged into one and Tim plugged into the other. While he played with video feedback off his laptop monitor with Universal Access effects, I played with Vidget 3. Later another guy (who’s name I forget) played with a MAX patch he had written. I continued to play, matching some of his dark and heavily masked imagery. I tried to keep up but after a while I couldn’t stand to look at my low frame rate / low resolution video next to his super-fast, super-smooth lovely images. It was all good fun anyway.
So to do a search for “factory” I take the string “http://www.flickr.com/services/feeds/photos_public.gne?tags=” and add it to the contents of the text box and then add “&format=rss_200″ to the end. This give me the URL of the feed. I then use the “LoadQTListFromXML” command to load it into the movie. The RSS file is structured as below, it has a lot of information for each picture.
http://www.flickr.com/photos/42039133@N00/560315/
<img src="http://www.flickr.com/photos/560315_ac00de7218_m.jpg"
/><br />I’m not sure whether the quotation marks
add to the effect, or detract from it. Fri, 24 Sep 2004 23:05:08 PSTnobody@flickr.com (several_bees)
length="16472" type="image/jpeg" />
http://www.flickr.com/photos/rae/547742/
<img src="http://www.flickr.com/photos/547742_555b39e9fb_m.jpg"
/><br />Watching the precious bottles of Cascade beer get packaged up. Thu, 23 Sep 2004 23:30:10 PSTnobody@flickr.com (Raelene)
length="17794" type="image/jpeg" />
http://www.flickr.com/photos/rae/547738/
<img src="http://www.flickr.com/photos/547738_9b3371cb06_m.jpg"
/><br />Apparently this cat lives at the Cascade factory. It was there the last time
Tony visited. Thu, 23 Sep 2004 23:29:40 PSTnobody@flickr.com (Raelene)
type="image/jpeg" />
If you compare this with the previous XML example you can see some similarities. Where I have the whole list surrounded by the tags, the RSS list is surrounded by and tags. Where I have each clip name surrounded by the tag, the RSS list has each item surrounded by the tags. Within the tag there is more information and it is more structured. For locating the images, the important URLs can be found in the…
Ok I just realised it would have been much easier to find the image details from in the enclosure tag, but I used the description tag. I’ll change this next version. Anyway…
For each item, there is a url for a medium sized jpg image. After some quick snooping around I found that the images are coded with a letter to describe their size. For example here is an image from DocManhattan‘s Flickr photostram showing the various sizes and their urls (note the how only the last letters change):
The RSS points to the “m” sized image but what I need is the “t” thumbnail sized version so I remove the last few letters and add “t_d.jpg” to the end.
This post is getting really long so I’ll continue with part 3 soon. Please leave a comment if I need to explain anything more clearly.
Each of the clip names refers to the name of both the thumbnail and its associated video clip. For example, when AKM is read, I add “.jpg” to the end and add a sprite image. When the thumbnail is dragged to one of the layers and released I add “.mov” to the clip’s name and add a child movie to the layer. All of these files are located in the same directory on the hypertext.rmit.edu.au server but could potentially be from any directory on any server.
Loading the Flickr thumbnail images is a little more complicated.
This is the latest version of my interactive networked video project.
Click on the image to load Vidget 3 in Quicktime Player. (It is quite small but very processor intensive – especially as it first loads)
This version is a mix between the my first vidget which featured a text based interface for mixing up to three video clips on top of eachother, and my Quicktime Flickr photo viewer which let you search for and view images based on a search word.
The interface has been redesigned and now features a grid of 25 draggable images which represent video clips. These may be dragged and dropped onto three coloured ‘layers’. The blue layer is the uppermost with green below and red at the bottom. Each of these layers has a number of ‘graphics modes’. Like Photoshop layers, these may be combined in a number of modes, ranging from fully transparent to fully opaque. Each of these layers also has a number of playback controls which allow the user to play the clip faster or slower, forwards or backwards and step through frame by frame.
To the right of the three colour layers and their controls is a small white text field. This allows the user to search for images from Flickr. The ten most recent pictures tagged with the search word entered are loaded as thumbnails below. These thumbnails may be dragged and dropped onto any of the layers and combined with other moving and still images.
I have resized the output movie area so that everything fits on one screen.
Behind the scenes, the vidget has also been greatly updated. Rather than being limited to a set number of video clips determined at the time of authoring, this version dynamically loads all content including thumbnails. The names of these files are drawn from an XML file. This file may be updated with a simple text editor to add or delete more clips. The movie automatically loads the first 25 thumbnails from the XML list as it initially loads but may load the next 25, and the following 25 via the 1, 2 and 3 buttons at the top right of the controls.
At the moment the whole movie pauses whenever thumbnails are loaded, either via a Flickr search or by skipping to the next 25 thumbnails of video clips. I am working on ways around this.
The LiveStage Pro source files may be downloaded here: vidget3.zip
Sorry, my del.icio.us post was a little full of TLA (three letter acronyms).
I’ll try to explain a little bit more clearly.
Steve Harrington writes:
“I don’t get what is significant about RSS let alone RSS feeds or RSS feeds of bookmarks. Couuld you give an example and why you see this is cool -i.e. what does it help you accomplish fasterbetterqucker?”
OK, RSS was originally developed as a way of syndicating news headlines, summaries and the like. For example a news site like slashdot.org or news.bbc.co.uk may put out an rss feed of its current (latest) stories. This is like a stripped down version of the regular html version: no ads, no styles, nothing fancy, just the information. Rather than being formated like a normal html page with tags for bold, italics, etc. an RSS (or the competing format ATOM) feed will be formatted in XML with more general, database like tags like item, link, and description. This format is readable by a special news reading program and some newer web browsers (the next version of Apple’s Safari for example). So with an RSS feed and a program to read it, a user can get all the headlines and summaries very quickly and see if their favourite news site has been updated.
This format is also designed for computer-to-computer rather than computer-to-user communication and so is relatively easy to parse or interpret with a fairly simple program (much easier than HTML). So if I use del.icio.us to make an RSS feed of the URLs to video clips rather than web pages, I can make a simple program that takes these URLs and displays the associated video.
When you post a link to del.icio.us you can assign ‘tags’ to it. By tag I do not mean a piece of code, but rather a keyword. So say I linked to a clip of a monkey on a skateboard I could tag it ‘monkey’, ‘skateboard’, ‘silly’, ‘video’, etc. What is cool is that del.icio.us will generate an RSS feed for each of these tags so I could search for all links tagged ‘monkey’ by username and it will return an RSS formatted list.
For an example of how this could work, see my Quicktime Flickr photo viewer. It takes a word you type in and reads an RSS feed of images tagged with that word from the Flickr photo sharing site. It then takes these images and displays them as thumbnails. The same sort of thing could be applied to video content.
I had a quick play with del.icio.us today. It’s like a public bookmarks list, they call it ‘social bookmarks’. Its also like a stripped down blog engine with two key features that I think are very cool.
1. It generates RSS feeds of bookmarks.
2. Each entry can be ‘tagged’ and categorised – mmm, metadata
1+2 = It can generate RSS feeds for each tag.
So I was thinking, what if rather than linking to web pages I link to video files. And what if rather than giving a text description, I include a reference to a jpeg thumbnail. Now I could theoretically link to any piece of video I find or generate on the web and find it by searching for its tag. This would work just like my flickr viewer except for video/sound/anything.
I just got home from playing some visuals at Kent St. The show went pretty well but unfortunately the internet connection was down. This meant I could use only the clips I had on my laptop – no flickr image leeching . I’ve seriously gotta make/process some more clips and/or explore some more different effects because by the end of the three hour set I was thoroughly sick of all my clips.
I added a couple of new buttons to the interface so that I could have more than 25 clips at a time to choose from but they didn’t work as I had planned. Rather than getting the next 25 clips from my xml file, they got only got one extra clip and replaced the first. Luckily I was able to edit the xml, cutting the top 25 clips and pasting them back at the bottom, then re-loading the thumbnails. Whenever I load an xml file everything pauses for a good few seconds, even if the file is stored locally. I think I’ll just try to make more space for thumbnails so that next time I don’t have to reload as often.
For the past couple of Thursday nights I have been playing live visuals at a night called ‘Plug & Play’ at a bar called Kent St (located confusingly on Smith St in Collingwood). The night is run by two fine gentlemen named Jean Poole and Future Eater and is a nice relaxed place where each week people come to plug in their audio/video/laptop/playstation/casio devices and play. The venue also has a good broadband connection which allows for international djs/vjs to perform remotely and for me to test my latest vidgets. Version 3 is just about ready for posting here and combines the layering/mixing of clips of the first version with the photo searching and xml reading of the Flickr Viewer.
Here is a screenshot of the new drag and drop interface. The grid of images is loaded dynamically based on an xml file which means I can set the vidget up to play different content without rebuilding the entire project in LiveStage Pro. Almost everything is modular now. The ten thumbnails on the right are the results of a Flickr search for the tag ‘blue’. Each of these thumbnails is draggable to the three clip holders at the top of the screen (red, green, and blue). These refer to the three different layers of video which are output to a screen or projector. Up to three video clips or still images may be mixed/layered together.
After playing with this prototype version at Kent St last week I’m definitely going add some more space for thumbnails as I ran out of content after a while. I am also going to explore some more of the graphics modes for combining the images.
Oh yeah, I’m playing there again this week so if you’re in Melbourne come down. Its free and starts at about 8pm @ Kent St, 201 Smith St Collingwood.
Published on September 15, 2004 in Tech and Web. Closed
A few people have recently commented that my poster movies weren’t working properly. I think this was due to the fact that I was using .jpg images as the poster movies. While Safari and Firefox had no problem using the Quicktime Plugin to view the .jpgs, Internet Explorer didn’t like them. I have now replaced the .jpgs with .movs of exactly the same content so hopefully the problem has been solved.
Click image to load in Quicktime Player (it seems to be a little funky in a browser)
This is a little Quicktime movie that lets you view photos from Flickr, a photo sharing and social networking site. When users upload their images they associate them with tags, so a picture of a tree may have the tags ‘tree’, ‘green’, ‘eucalyptus’ etc. The entire database of photos is searchable by tag, by author, by series and other organisations. Each of these has a RSS or ATOM feed associated with it. This is what I am using here to access the 10 most recent uploads for a given tag.
To search the site and view the photos, just type a tag, say “cow” (no quotes) into the small white text field and press return. If you press return without entering any text you get the 10 most recent uploads from any category. Once the thumbnails load you can click to view at a larger size on the right.
The movie uses Quicktime’s ability to read and parse XML files such as RSS feeds and access files from the network.
I just found these links on the Quicktime Talk discussion list. I haven’t had a chance to try them out yet but they look very handy.
PAGEot Is a freeware application for Mac OS X, OS 9, and Windows, which generates Quicktime embed HTML code. It looks a bit like QT HTML which I mentioned previously. Its good to see PAGEot is actively being developed and is cross platform friendly.
Lillipot is an OS X application which converts ‘reference’ Quicktime movies to ‘flattened’ files for posting online. Some applications such as iMovie will save a small QT file which refers to other movies for its content. This saves space but when it comes to posting online these reference files break. Lilipot allows you to drag and drop movies onto the application, flatten them and set them up for ‘fast-start’ online delivery.
Both of these applications are hosted on a French Quicktime site: http://www.qtbridge.com/ which has a number of interesting links I will check out soon.
Published on August 23, 2004 in Tech, Video and Web. Closed
I see that Adrian has found some useful info on embedding QuickTime movies in web pages. It is very cool how you can set up a series of individual movies to play in sequence using the embed tag alone. I think this is particularly useful in the context of moblogging/videoblogging.
One of the characteristics of video taken with a camera phone or digital still camera is that it tends to feature one continuous shot. While Quicktime Pro allows for fairly easy basic editing of shots, by using the embed tag to string the shots together the user can create separate annotated permalinks for each shot (say videos from a holiday) and string a selection of shots together for a ‘hilights reel’ at no extra storage cost and with very little difficulty. Tools like QT HTML help too.
Some more snooping around the Apple developer site reveals some of the other network friendly abilities Quicktime has. QuickTime XML Importers describes how a basic xml text file with the ‘.mov’ extension can be used to do a number of handy things. For example, if you are using a new codec or component in your movies which are not yet common, such a file can be used test for its presence and ask the user if they want to download it.
The ability to read xml files also means that you can set up a ‘Quicktime Link File’ (.qtl) to do things like: open a movie in the Quicktime Player application, play at full screen, and then quit when the movie has finished. ‘.qtl’ files can be written by hand in any text editor, generated by script, or created using Quicktime Player’s XML Exporter.
Another flavour of XML is SMIL (Synchronized Multimedia Integration Language) which provides a standard cross platform way to create playlists and presentations combining discrete content (interestingly, the MMS standard for mobile multimedia messaging is based on SMIL). For example a SMIL file can source a slide show of JPEG photos from one server and display text annotations for each photo, while playing an accompanying MP3 from another. SMIL also allows multiple visual sources to be arranged on screen and played independently. Quicktime and SMIL provides a detailed run through of the functions available and how to apply them, while Embedding SMIL Documents in a Web Page describes that process.
Ok, I’ve been inspired by the Videoblogging crew to start posting some video blog entries and now that I have a new phone which can record video and send it to my computer via bluetooth there’s no excuse! I think these posts will be mostly everyday snapshot type content which I can remix and manipulate in my interactive works.
This was recorded on Swan Street in Richmond with my shiny new phone (a Sony Ericsson K700). Over the last couple of weeks the speed limits on inner suburban shopping streets seem to have all dropped from 60kmh to 40 and these flashing signs have popped up all over the place. I think they look cool, but with cars going slower pedestrians seem to cross the road whenever they want to (creating some near-misses).