Audience Chat

Audience members are also known as "chatters", because they can interact with the performance by typing into the text input field at the bottom right of the screen. This text appears in the text chat window, amongst the players’ text. 

Audience text is grey, silent and anonymous, while players' text is slightly darker and larger than audience text, spoken and identified with the avatar’s name. Audience can identify themselves by adding their name at the start of their comments (in the future we hope it will be possible for audience members to have a name if they want).

UpStage screengrab 

The screengrab above, from West Side's Story (101010 UpStage Festival) shows audience and player text in the chat. 

The audience chat has a life of its own. Often at the beginning of a performance, audience members will ask where other people are physically located and have conversations between each other. During the performance, the audience can respond to and commentate on the action of the performance, embellish the narrative or provide a counterpoint. Obviously every audience is different, making every performance significantly different - sometimes an audience may be very quiet but at other times very chatty.

Re-presenting the chat 

Audience text can also be incorporated into the performance, for example repeated or responded to by the players. Another effective re-presentation of audience chat into the performance is the projection of chat text and its subsequent capturing and re-presentation as a web cam image, as shown in the screengrab below from Belonging by Avatar Body Collision (2007).


Audience Commands

Audience members can use a number of commands in the text chat; these are instructions typed into the text chat input field after a /  

For example:

/asize 8 (or another number): this changes the font size of audience-input text to 8 (the default size is 5) on that computer. This is useful for people with visual impairment or if the screen is being projected for a group audience.

/psize 8 (or another number): this changes the font size of player-input text, as above.

/info: gives some information about UpStage.

Players have a lot more commands available to them - see the chapter on Commands for more information. 

Audience View

Audience members enter UpStage by following a web link from an email or web page; they do not need to download or install any additional software as long as they have a browser with the Flash player plug-in1. Audience members do not log in, and do not have access to the on-stage tools used by the players.

A splash screen covers the stage while it loads, preventing the audience from interacting until the stage is fully loaded. As the stage loads drawing is shown, once loaded the audience will see any graphics that have already been placed on the stage, they will see and hear the performance, and they will be able to participate in the text chat by typing into the text input field. Audience chat is silent.

The audience view of the stage is shown below: the text chat window is at the right, with an input field at the bottom and up-down scroll arrows on the right top and bottom corners. Above the text chat window, a counter shows how many players and audience members are on the stage. The rest of the screen is the "stage" where the visual action of the performance takes place. 

UpStage audience view
  1. The Flash player plugin comes preinstalled with most browsers; if you don't have it, it is free to download here:^


Prerecorded MP3 audio files can be uploaded and played in UpStage. See the chapter Uploading Media for information on how to upload audio files.

The audio palette 

Click on the yellow audio button in the tool palette to reveal the audio palette. Audio files assigned to the stage will appear alphabetically in a list on the right, with musical notes indicating music tracks and "sfx" indicating sound effects. Use the green arrows to scroll up and down if there are more than six tracks assigned to the stage.

UpStage audio paletteClick on a track and its file name will appear in one of the three slots to the left, where you can start, pause and stop individual tracks, set looping and adjust the volume with the slider. 

You can stop all tracks at the same time by clicking stop all. 

Click on the blue act button to return to the avatar tool palette. (Your avatar can still speak and move when you have the audio palette open).

Known bug   

There is a known bug with being unable to stop a looping track, if after you have set it playing and looping you fill up the other two tracks and then add a fourth. The fourth track will replace the first looping track, but it won't stop it. Clicking stop all will also not stop it. The only solution is to reload the stage. This bug has been lodged on SourceForge and we hope to fix it soon, but in the meantime the workaround is to be careful not to select a fourth track when the first one is still looping. 

/ Commands

There are a number of commands you can type into the text chat input field to do certain things. Typing a / at the beginning tells UpStage that what is following is a command, rather than text to be spoken.


Here is a list of the commands that can be used by players: 

/a 1, /a 2 etc

displays a different frame of an animated or multiframe avatar

/a 0

animates a multi-frame or animated avatar


/asize followed by a number will adjust the size of the audience text in your chat window (note – this only affects your own screen; the text size will not adjust for the audience or other players); the default size is 5. Audience can also use this command to adjust the size of font in their browser

/b 1, /b 2  etc

displays a different frame of a multi-frame backdrop

/b 0

animates a multi-frame backdrop


lists the usernames of all players and the number of audience members who are present on that particular stage


gives you a list of some of these commands


shows information about UpStage including which version of the software you are using


allows you to change the name of the avatar you are holding – type /nick newname


provides information about the dual GPL and Creative Commons license


/psize followed by a number will adjust the size of the player text in your chat window  (note – this only affects your own screen, the text size will not adjust for the audience or other players); the default size is 5. Audience can also use this command to adjust the size of font in their browser

/whisper or /wh

allows you to communicate with other players without the audience being aware; the whisper command is explained in the chapter Speech and Text Chat


typing : before your text will give you a silent thought bubble, rather than a speech bubble and spoken text. The text is blue in the chat window


typing ! before your text will make your avatar shout. The speech bubble outline and the chat text is red



Creating and Editing Players

All players can edit their own information; if you have admin permissions you can edit your own and others information, and create new players. 


From the Workshop navigation, click Edit Players.

All players can update their email address or change their password.


If you have administrative permissions, you will also have the ability to create new players, edit the details of existing players, and delete players. You will find these Administration Links below the save buttons at the end of your details. 


Adding a player 

To add a new player: 

  1. Click Create New Player and a dialogue box will pop up. 
  2. Enter a username and password for the new player (if you use a generic or easy password, you should advise them to change their password when they first log in). 
  3. Enter their email address (if you don't have it, this can be added at a later date by you or the player). 
  4. Select the permissions (explained below) that you wish to give this player.
  5. Click Save Player

Add player 

Player Permissions

Different permissions can be given to players, according to what you want them to be able to do and access on your UpStage server. The default permissions allow access to the on-stage tools, but no access to the Workshop to upload/edit media, or create/edit stages. Tick the checkboxes to give a player extra permissions:

Editing Players

From time to time, you may need to edit the details of a player other than yourself - for example if someone's email address has changed but they haven't updated it themselves, or if you wish to give someone extra permissions such as an unlimited upload limit. The most common example is when a player has forgotten their password - an admin player can create a new password for them so that they can log back in.

The Edit Existing Player Details link at the bottom of an administrator's Edit Players screen will give a list of all players, and clicking on a player will open a pop-up window as shown below.


Make the changes that you want to make for the player, then scroll down to click Update Player; this is also where you can delete a player, by clicking on the Delete Player button at the end of this pop-up window. 


Creating and Editing Stages

Stages are web pages on which UpStage performances take place. An UpStage server can have any number of stages, and media uploaded to the server can be assigned to multiple stages.

A player can be "in" more than one stage at a time, simply by having different stages open in different browser tabs.  

Audiences enter a stage for a performance by clicking on the stage link - from the foyer page of your UpStage server, from another web site, or from an email. In a similar manner, an audience member could attend concurrent shows on different stages by using tabs or windows.


Create a new stage 

To create a new stage,  click Create/Edit Stage in the Workshop menu, and then with the dropdown menu showing New Stage, click Select.


A dialogue box will open over the page. Enter a name for your stage and the URL - this can be the same as the name, but it can't have any spaces in it.


Click Create Stage and, voila! your stage has been created. You will find yourself at the edit screen for your new stage. 

Editing a stage 

You will arrive at the edit screen when you create a new stage following the steps above. If you wish to edit an existing stage, in the Workshop menu click Create/Edit Stage and then select the stage you wish to edit from the dropdown menu.


Stage name

You can edit the name of the stage, and its URL, by changing the text in the appropriate boxes then scrolling to the bottom of the edit screen to click Save


Splash message 

The splash message appears on the screen while a stage is loading; you can use this text to give some information about your show. After editing the text, scroll to the bottom and click Save.


Debug message 

The option to print debug messages on the backdrop of your stage is primarily for developers, so that they can identify bugs by seeing what is happening as actions are performed on the stage. However, it can and has been used in performance, to add a layer of performing code to your show.

Background colour 

Here you can select background colours for different areas of your stage: the chat window, the tool palette, the props and backdrops bars and the entire stage. Click on the radio button for the area whose colour you wish to change, then select from the colour palette. The chosen colour will be displayed in the box under the name of the area.

Remember to scroll to the end of the screen and click Save in order to save your changes. 

Player access 

This feature is still in development and will be implemented in version 2.4.3; it will allow you to select which players can access your stage as players, and which other players can edit your stage.

Save buttons

At the end of the screen are a number of different possibilities for saving your stage: 

Creating Audio for UpStage

As well as sound created in real-time by avatar voices, prerecorded .mp3 files can be uploaded to UpStage and played via the audio palette in the on-stage player tools.

Prerecorded audio can include music, sound effects, human voices, etc. At this stage, ONLY the .mp3 format works. Another possibility for adding audio to your performance is to embed audio in a Flash animation, if you have the skills and ability to do this.

There is a 1MB file size limit for all media uploads, to ensure that the server doesn't get unnecessarily filled up with enormous files and that stage load times are not too long and tedious for the audience. It is possible to over-ride the 1MB limit by giving a player unlimited upload permission, but remember that when the audience enters your stage, all of the media assigned to the stage must be loaded to their computer, therefore the bigger the files, the longer the load time.

Converting files to .mp3 

There are many ways to create, convert and compress .mp3 audio files; we recommend that you refer to other manuals for more information on this if you are not familiar with it. 

If you are a Mac user, a simple method to convert an audio file from another format to .mp3 is to open the file in iTunes, and from the Advanced menu select Create MP3 Version.

Creating Graphics for UpStage

Avatars, backdrops and props for UpStage can be created using standard graphics applications such as Gimp, Photoshop, Fireworks, Flash etc. However, before you go ahead and upload something you prepared earlier, please read this chapter as there are many important points to ensure that your graphics appear the way you want them once uploaded to UpStage.

Format and size 

The recommended formats for your original graphics files are .swf or .pngVector-based images will appear much cleaner than pixel images (such as .gif and .jpeg), as they resize in UpStage to match the dimensions of individual screens and browsers. You can use .gif and .jpg but your images will lose quality (note – as the exception to the rule, backdrops are fine as jpegs). 

Avatars and props will appear on stage approximately two to three times larger than the original file. This is because the stage is not in a fixed-size window: it allows for different screen resolutions and sizes, and different sizes of browser window. The aspect ratio is 7:3 (see the backdrop diagram below).

The recommended size for the original file for a "standard" size avatar is approximately 100x100 pixels – obviously you will want bigger and smaller ones, but this gives you somewhere to start. In order to test the size of your avatar, you must upload it, assign it to a stage, then look at it on that stage (the same applies to props, and also for backdrops if you are working out what is going to be obscured by the chat window).

It can be a time-consuming process getting your graphics to the size you want, so it’s a good idea to make a couple of samples first and then base the rest of your graphics on those once you have got them the size you want. If you upload graphics that are not the right size, please remember to delete your unwanted files, to keep the server tidy.

Creating .pngs

The .png file format is good for avatars and props, as it allows for transparency (unlike .gif or .jpg) and gives a good quality image. Most graphics applications will allow you to save your files as .png. In the File menu, choose Save As and look for the .png option.

Do NOT interlace the file when you save it.

Creating .swfs

Although UpStage itself is open source and we've done everything we can to make it cross-everything, everything is ultimately delivered to the browser with the help of the Flash Player plug-in; because of this, the most successful graphics format is .swf.

To create .swf files, you need the Flash application (note: open source applications that convert other formats to .swf are available - if you know of something that works well, please let us know!). 

Please note that the following information is by no means a comprehensive Flash tutorial. If you do not know how to use Flash at all, or if the following steps are not clear to you, we recommend that you look on the web for a Flash tutorial.

At the time of writing, UpStage only supports Actionscript 2; please make sure that you save your files correctly, as files saved with Actionscript 3 will not work. 

The basic steps for producing a single frame avatar or prop using Flash is as follows:

  1. Start with a .png file in which you have clear-cut your image and given it a transparent background. Keep the .png image at a large size – around 500px square for a standard-sized avatar is a good guide, as much larger will result in an unnecessarily large .swf file but a smaller file will start to lose quality.
  2. Open Flash and from the File menu, choose Import; navigate to your .png file and import it into Flash.
  3. Click on the image to select it – a grey border appears around it.
  4. In the Insert menu, choose Convert to symbol – the border will change to a thin blue line.
  5. Resize it (Modify > Transform), remembering that avatars and props will increase in size by about 2-3 times when uploaded into UpStage. Around 100 pixels is a good size to begin with if you don’t know what size you want.
  6. Once you have reduced it to the required size, adjust the document size to match.
  7. From the File menu, choose Export Image. Put the jpeg quality up to 100% and save the .swf file.

Animated avatars and backdrops

UpStage supports both animated sequences and Flash movie clips. 

You can create an animated sequence either in Flash (an .swf with a series of frames) or by creating a series of .pngs (or .jpgs or .gifs) and uploading them with the multiframe option in UpStage. When you put sequenced (frame-by-frame, or motion or shape tweened) animation onto the stage it will appear static with the image in the first frame. To change to other frames of the animation, type /a 2, /a 3, etc. To make the avatar animate, type /a 0 and to return to the first frame type /a 1. 

If you have saved your .swf as a movie clip animation it does not need any commands, it will automatically loop and can be used on stage either as a continuously looping animation or as a series of still avatars that are swapped using the /a command, as above.

Props and backdrops can also be animated using Flash. But bear in mind that Flash animations can end up as larger files, which will increase the time it takes to load your stage. 

Animated sequence

To create an animated sequence, follow these steps:

  1. Create a series of .png files and give them numbered filenames.
  2. Open Flash and from the File menu, choose Import and navigate to the first .png file; Flash will ask if you want to import the series, say "yes". This will create a frame for each image.
  3. On each frame in turn, click on the image to select it (a border appears around it); from the Insert menu, choose Convert to symbol (the border will change to a thin blue line) 
  4. Resize (Modify > Transform), remembering that avatars and props will increase in size by about 2-3 times when uploaded into UpStage.
  5. Once the images are all reduced to the required size, adjust the document size to match; if your images are not all exactly the same size make sure you have made the document size as big as the largest image.
  6. From the first frame, and with the image selected (the blue line should appear around it), go to the Insert menu and select Create motion tween.

Sounds can be embedded into Flash movie clips, but it takes a bit of trickery to be able to control the sound.

When using Flash to create animated avatars and props, be sure to check the the frame rate and whether it is set up to loop.  If the frame rate is, for example, 24 fps and it is set to loop, the image will reload 24 times a second, regardless whether anything else is changing on the screen. Making your still flash pictures run at, for example, 1 fps and/or switching off looping will ease the load on everyone’s browser. Very slow animation, for example tweened over 40 or so frames and looping, will cause the least strain and can create some very effective movement.

UpStage doesn't cope with movie clips nested within the frames of a Flash animation, but it is possible to import Quicktime movies into Flash and then export as a .swf. You will need to experiment with file sizes and perhaps remove some of the frames from the Quicktime movie in order to keep the file size down.

Once again, this manual does not pretend to provide a comprehensive Flash tutorial. Please look on the web for more detailed information on using Flash.


As long as the original image is 380x240px or larger, a backdrop will fill the UpStage screen, including going behind the text chat window. You may wish to create a backdrop that has a blank area on the right where the text chat window is to ensure that important parts of your backdrop are not hidden behind the chat window.

The proportions of the whole image are:

total width : total height - 800 : 500 (or multiples of these proportions)

width of stage area : width of chat area - 5 : 3.5 (if your image is 800 wide, the chat will begin at 550).  

minimum width : height – 380 : 240 pixels 

Bear in mind that everyone’s screen size and browser window size can be different – your backdrop will stretch to fill the space.

Note that in the Player view of the stage, an strip along the bottom of the backdrop will be obscured by the Backdrop and Prop Image Galleries – but as these tools are not seen by the audience, it is recommended that your backdrop extend below that strip.

TIP: it's a good idea to look at your stage in audience view as well as player view; you can do this while you're working by having it open in two browsers, one where you are logged in and one not.

Backdrops can be created as .png, .swf, .gif or .jpeg; as with avatars and props, .png or .swf will give the best quality results, however generally a .jpg backdrop will also be fine. If you are using .gif or .jpeg, upload a test backdrop to see if it’s going to be good enough, and remember to delete unwanted images.

Note that .png files should NOT be interlaced when saving.  

File Sizes

UpStage has a default file size limit of 1MB for each media item uploaded. This can be over-ridden by giving a player unlimited upload permission, but in general it's a good idea to keep your files as small as possible. The larger the files you upload, and the more media assigned to your stage, the slower the stage will load. 

What is a "reasonable" file size for your original graphic? This is very hard to say, as it’s completely different for a small static flat graphic prop which may be only 1K, and an animated flash backdrop or multiframe avatar, which could be over 500K. And a stage with a single large graphic may load faster than one with many medium sized graphics.

If your original files are larger than 500K, check whether you can resize them and save them again to a smaller file size. Remember that screen resolution is only 72ppi so there is no need for your originals to be at a higher resolution.

Deleting Graphics

It is good practice to delete unwanted graphics in order to keep the server tidy and minimise digital storage requirements. 

  1. From Edit/View Media, browse to find the item you wish to delete and select it.
  2. If the item is a assigned to one or more stages, tick the checkbox at the bottom of the screen Delete even if in use.
  3. Click Delete media

If you are working on a server that is used by many players, such as the Open UpStage ( please do not delete anything that has been uploaded by someone else. But also be aware that we operate a Creative Commons policy, so your media may be "borrowed" by others, for learning and playing; no-one should use someone else's media in a performance without the original creator's permission.

Embedding links in graphics

Active hyperlinks can be created by typing a URL into the text chat window (use right-click or ctrl+click to open or copy the link); however sometimes it’s useful to have a graphic onstage that provides a hyperlink to another stage or a different web site.

The way to do this is to create a .swf image with an ActionScript button containing the following code: 

on (release) {

            getURL("http://desired.url", "_self");


This could be an avatar or a prop that is placed on the stage at the time that you want the audience to follow the link.

More Flash tricks

If you are experienced in using Flash and Actionscript, you can do a lot more with it in UpStage; most (but not all!) interactivity that can be achieved in a web page using Flash, can be achieved in UpStage. Performances that have enhanced audience interactivity through sophisticated Flash programming include Virtual Theatre's Lines (090909 Festival) and Murder 2.0 (101010 Festival), and The Best Air-Guitar Album in the World Vol II by Anaesthesia Associates (070707 Festival).

The purpose of this manual is not to teach you how to use Flash, but there are some relevant tutorials on the UpStage web site which you may find helpful. 


Clicking on the draw button in the tool palette reveals a different set of tools – the drawing palette. You can be still holding an avatar while you are drawing and can speak, but you won’t be able to move your avatar on stage. Click the act button to return to the tool palette so that you can operate your avatar again.


Drawing allows you to draw directly onto the stage, in one of four layers; the layers correspond to the four boxes on the right hand side of the drawing palette. Click on the red pencil icon to select a layer to draw in. The black border shows which layer you have selected; a pale blue border indicates that another player is holding that layer. If you select a layer with a  blue border you will "steal" it from the other player. The top box will draw on the top layer, obscuring avatars. The next two layers will let you draw amongst the avatar layers, and the bottom layer draws behind the backdrop. 


Click the eye icon to hide or show your drawing. Click clear to erase all the drawing from that layer. Note that it is currently not possible to erase only part of the drawing in a layer. 

The slider in the layer box controls the transparency of what has already been drawn in that layer: move it to the left and the drawing in that layer will become more transparent; move it all the way to the left and it will vanish completely. This is useful for fading prepared drawing in and out. 

The colour picker at the top has three sliders, letting you adjust the colour of what you’re about to draw. Move the sliders to change the hue, and the new colour appears in the square to the left of the sliders. 

The slider immediately below the colour picker controls the transparency of what you are ABOUT to draw, that is you can draw in percentages of transparency on the same layer (use the slider in the layer box to change the transparency of something AFTER you have drawn it).

UpStage drawingThe circle and slider below the transparency slider control the size of your brush. Move the slider to the right and the circle will increase in size, indicating how big it will appear on stage. Move it to the left to make it smaller. 

Currently it is not possible to erase, other than to clear everything in a particular layer. If you are trying to draw a curved line and finding that it appears as sections of straight lines, you are moving your mouse faster than UpStage can keep up with; try drawing slower for smoother curves. 

If you want to draw a completely straight line, hold the shift key down while you click at the beginning and the end of the line.

Edit Media

To edit media that has been previously uploaded, click Edit/View Media in the Workshop navigation bar.

Edit/View Media 

Use the filters or tag search (explained in the chapter Browse Media) to find the media item(s) you want to edit, and click on the text below the icon of the item to open the Edit interface. 

For this example, the media type we are editing is an avatar, but most of the following information applies to all media types. 


Here you can:

Once you have made your changes, click Save Changes.

Display details 

Click Display Details to see more information about this media item, including:


Click Edit Media to go back to the Edit interface for that media item. 

Edit other media types 

The edit interface is the same for all types of media, apart from one difference: avatars have the voice dropdown menu and Test Voice button, and audio items have a Test Audio button, which allows you to listen to the file.

Browse Media

One of the major improvements in this version of UpStage is the greatly enhanced ability to filter and browse media that has been uploaded to the server. You can use filtering and tags in order to find what you want quickly and easily. 

Edit/View Media

Clicking Edit/View Media in the Workshop navigation bar gives you an interface where you can browse all of the media that has been uploaded, by yourself and other players, as well as edit individual media items (see the chapter Edit Media for information on editing).


Filter your displayed media

Probably you are most interested in finding your own media, or media uploaded by your collaborators for a particular show. The filtering system allows you to do that easily.

Under the Category dropdown menu, you can select:

Once you have chosen which category you want to filter by, the Sub-category dropdown menu will then allow you to select from all the options within that category - i.e. all players who have uploaded media, all stages, or all media types.

For example, you could set the filters to Category: Type and Sub-category: Backdrops to find all the backdrops that have been uploaded. 

Add a second filter 

But let's say that you only want to see all the backdrops that you have uploaded yourself. Click Add Filter to add a second level of filtering to your search. This time, select the Category: User and for the Sub-category your own player name. Only the backdrops that you have uploaded yourself will be shown.

Another example would be to see all of the avatars on a particular stage:

  1. Set the Category to Stage.
  2. Set the Sub-category to the name of the particular stage.
  3. Click Add Filter.
  4. Set the Category to Type.
  5. Set the Sub-category to Avatar.

And voila! the thumbnails displayed are only the avatars that have been assigned to that particular stage.

Search by tags 

Another way to search for specific media items or groups of media items is to use tags. Tags can be added at the time of upload, or later by editing a media item (see the chapter Edit Media for information on how to do this).

For example, you may wish to be able to easily find all media that has been uploaded for a particular show, even if some are test items and have not been assigned to the stage. Filtering would allow you to find the items assigned to the stage, but if you have given them all a common tag, such as the name of the show, searching for this tag will allow you to find all of that media. This can be useful when you want to delete all of the unwanted test media, if you want to decide to use an item that you'd previously rejected, or if you are making different versions of the same show that require slightly different sets of media.

Tags can also be used to:


Here are definitions for some of the terms that are used in this manual. Please let us know if something is missing.

Audience: people present online at a performance, but not logged in. The audience can participate via the text chat, but do not have access to the same tools as the players. 

Avatar: a graphical icon that can be held and moved around the stage by a player, and that can speak. 

Backdrop: a graphic which fills the stage behind any avatars and props that are placed on it. A backdrop can also extend behind the text chat. 

Chatters: the online audience are also referred to as "chatters", as they contribute to the performance via a text chat function. 

Cyberformance: live online performance where remote players and/or audience use internet technologies to come together in real time.

Drawing: functionality that allows real time drawing directly onto the stage. 

Foyer: the home page of an UpStage server – where the audience can come to see what's on, and where players can log in. 

Mirror: the square on a stage that shows a player which avatar they are currently holding. 

Palette: e.g. "drawing palette" or "audio palette" – a set of tools for a particular function. 

Player: a logged-in participant in a performance. Players have access to on-stage tools which allow them to manipulate avatars, backdrops and props, and can have different levels of permissions to allow them to access the Workshop and administration tools.

Prop: a graphic which can be held by an avatar or placed on the stage using an invisible avatar. 

Splash screen: a sort of "curtain" that appears over the stage while it loads; the splash screen shows the name of the stage, a loading progress indicator and an editable welcome message. 

Stage: a dynamic web page where you can place and move avatars, props and backdrops to create a performance. 

Stage tools: tools visible on the stage to logged-in players (but not visible to the audience) that enable the players to manipulate media on the stage in real time. 

Text chat: an input field and text chat window, where avatars’ speech and audience text appears and is visible to everyone; the text chat window can be scrolled up and down to read text that has been entered previously, and can be accessed for saving by adding /log to the end of the stage url. 

Tools: the buttons, sliders and icons that allow logged-in players to manipulate media. 

UpStage: UpStage is an open source platform for cyberformance: remote performers combine images, animations, audio, web cams, text and drawing in real-time for an online audience. Players and audience need only a standard web browser with the Flash player plug-in. For more information about the UpStage, visit the web site:

Wardrobe: the interface through which players can select avatars on a stage; an alphabeticised and scrollable list of the icons and names of the avatars assigned to that particular stage. 

Whispering: silent text communication between logged-in players that is not visible to the audience. 

Workshop: the "back stage" interface where logged-in players can upload media, view and edit existing media, create and manage stages and manage players.

How to Help UpStage


Welcome to the user manual for UpStage version 2.4.2; released in October 2012, this version introduces a new media management system. If you are working with an earlier version of UpStage, please refer to the version 2.1 manual.


UpStage is a web-based venue for cyberformance1 - the real-time compilation of digital media into live performance, by multiple remote players for an online audience (and sometimes an offline audience as well). People anywhere in the world can participate in live performance events by using standard browser software to access UpStage, without having to download and install additional software and without needing to know anything other than a web address. 

The concept for UpStage was developed by Avatar Body Collision, a globally dispersed cyberformance troupe whose members have been experimenting with online theatrical performance since 1999, and together as Avatar Body Collision since 2002. UpStage was born from the desire to reach a wider audience and to make it easier for audiences and performers alike to participate in live performance via the internet. 

The software combines the different elements of cyberformance - graphical avatars, web cams, audio, images, text chat (and who knows what else in the future) - into a single interface. The audience simply directs their browser to the web address at the appointed time, to watch and participate in the cyberformance.

The UpStage server application is open source and free to download. It is available under dual licensing: a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License and GNU General Public Licence (GPL). 

The initial development of UpStage was funded in 2003 through the Smash Palace Collaboration Fund, a joint initiative of Creative New Zealand and the NZ Ministry of Science, Research and Technology. In 2006, the UpStage project received funding from the Community Partnerships Fund of the New Zealand government’s Digital Strategy to develop UpStage version 2. UpStage V2 was also supported by partners CityLink, MediaLab and Auckland University of Technology. 

Currently, UpStage is supported by CityLink, who provide free server hosting and traffic, and Auckland University of Technology, who provide teams of final-year computer programming students to work on the ongoing development of the software. The UpStage team and user community are very grateful for this vital support. 

This is the user manual; it provides general instructions for using UpStage version 2.4.2 and is divided into 7 sections:

Open sessions are held regularly in UpStage, providing training in the basic use of UpStage and how to create cyberformance. For dates and times for the next open session, visit and join the UpStage Announce list. 

If you are looking for technical support including instructions for installing the UpStage server, please refer to the SourceForge trac and the developers' mailing list. 

For further information and updates, please visit


Creative Commons License 
The UpStage User Manual has been edited by Helen Varley Jamieson in collaboration with Vicki Smith and Miljana Peric, and is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License

  1. Cyberformance uses internet technologies to bring remote performers together in live theatrical events;^

Logging In

Players log in to UpStage to create and present performances. They do not need anything other than a browser with the Flash player plugin to do this.

Note that audience members do NOT log in to UpStage; their view of the stage is different to that of logged in players.

When attending others' performances, players are advised to log out first so that they experience the performance as it's intended to be viewed, without the distraction of the on-stage player tools. A stage access feature is in development, which will allow players to specify which other players may enter a stage as a logged-in player; if you are logged in but don't have player access to a stage, you will then automatically see the audience view, without having to log out. This feature will be implemented in v2.4.3 (ETA 2013).

Log in 

From the home page, enter your username and password in the input boxes at top right. 



Player permissions

Different levels of permissions and access can be given to a player.

Default player 

The default permissions enable a logged in player to access the on-stage player tools, so that they can collaborate in a performance. This level is also used for guest log-ins, for open walkthroughs and workshops where people are learning the basic operations of UpStage before starting to make their own show. This default level does not give access to the Workshop.


A player with "user" permissions can access the Workshop and upload media, edit their own media, create stages and edit their own stages; as well as access the on-stage player tools.


A player with admin access can administer their own and others media and stages, add/edit players, and edit the Workshop pages.

Unlimited upload

A player with unlimited upload permission can upload files larger than the 1MB file upload limit.

About Inkscape

Inkscape is an open source drawing tool for creating and editing SVG graphics.  More than just a text vector editor, Inkscape provides a WYSIWYG interface for manipulation of vector images, allowing the artist to express himself freely. While other free and proprietary software with similar capabilities exists, Inkscape provides an interface to directly manipulate the underlying SVG code. This allows one to be certain that the code complies to W3C standards. Since the beginning of its development, the Inkscape project has been very active, providing stability for the current software and the capacity for future growth.

Like other drawing programs, Inkscape offers creation of basic shapes (such as ellipses, rectangles, stars, polygons, and spirals) as well as the ability to transform and manipulate these basic shapes by rotation, stretching, and skewing.

Inkscape also allows users to manipulate objects precisely by adjusting node points and curves.  Advanced artists find these functions indispensable in drawing software to freely create what they imagine.

A user can either manipulate the properties of objects individually and precisely through the XML editor or, in a more general and intuitive fashion, with input devices such as mice, pen tablets, and even touch screens.

In addition, Inkscape allows one to insert text and bitmaps (such as PNG—another W3C recommended bitmap image format) into an image, as well as perform some basic editing functions on them.  If an artist requires further bitmap editing, he may use other tools (such as the GIMP) on images before or after importing them. If one does edit a linked bitmap in another program, Inkscape will reflect these changes once the SVG file is reloaded.

All of these characteristics make Inkscape a model drawing application, especially considering its flexibility and many other capabilities. Its strict compliance with the W3C SVG standards allows excellent portability of images to many applications and the varying platforms on which these applications run.

On-stage Player Tools

Logged-in players have access to a range of on-stage tools, not visible to the audience, which enable the real-time manipulation of preloaded media and live elements on the stage. 

Holding and Moving an Avatar

The avatars assigned to a stage appear as small icons in the Wardrobe. To hold a particular avatar, click on its icon in the Wardrobe (use the arrows to scroll up and down the Wardrobe). The icon will disappear from your Wardrobe and appear in your Mirror, the square area to the left of the Wardrobe. This shows you which avatar you are currently holding. A greyed-out icon in your Wardrobe means that another player is holding that avatar.

Once you have an avatar in your Mirror, click on the stage area and your full-size avatar will appear there. Click in another place, and it will move there. 


The Player tools are the set of buttons below the mirror, and the green arrows in the mirror. These arrows allow you to move your avatar in front of and behind other avatars on the stage.


This button controls the avatar movement – fast causing the avatar to jump to where you click, and slow causing it to glide there. The button shows the action that the avatar will change to when next clicked – for example if your avatar is gliding, the button will show fast. Click on it to change to fast, and the button will become orange and say “slow”.


When your avatar is gliding (in slow mode), click on stop to stop it at any point in its trajectory.


This button will hide or show your avatar’s name on the stage – this is particularly useful when working with invisible avatars. When you first hold an avatar, the default state is for the name to be showing, so click on “name” before you place the avatar on the stage if you don’t want the name to show.


This button changes the function from acting to drawing, displaying the drawing tools palette instead of the avatar tools. See the chapter Drawing for more information about drawing.


The drop button will remove your avatar from the stage, and put it back in the Wardrobe so that you are no longer holding it. If you want to leave your avatar on the stage while you operate another avatar, simply select the new avatar from the Wardrobe without clicking drop.


Use clear to remove all unheld avatars and props from the stage.


This button displays the audio tools palette. See the chapter Audio for more information about using audio.

Player/Audience counter

Below the control buttons, a counter keeps a live tally of the number of players (P) and audience (A) present on stage at any time. Typing /details will list the usernames of the players and the number of audience in the chat window.

Operating Multi-frame or Animated Avatars

Avatars that have been created as .swf animations, or uploaded as multiframe avatars, allow you to change the avatar while it is on stage.

Animated Avatars

Created as .swf files, these avatars will animate in the Workshop, Wardrobe and Mirror. When placed on stage, animated sequences will appear as a still image in the first frame of the animation. Type /a 0 to start the looped animation, and to display a different still frame type /a 1 (the default), /a 2, /a 3 etc.

Flash Movieclips will animate on loop without typed-in commands. You need to create these as movies in Flash – see the chapter Creating Graphics for UpStage for more information (but note that this does not attempt to be a comprehensive Flash tutorial - you will need to have some prior knowledge of Flash).

Multi-frame Avatars

These work in a similar way to the animated avatars, but are created by uploading a series of still images (in .png or .jpg format) rather than using Flash.

Changing Your Avatar’s Name


To change the name of the avatar you are holding, type /nick newname in the text input field at the bottom of the chat window. You will see the name underneath your mirror change, and when the avatar is on stage the new name will appear below it (unless you have used the “name” button to turn off the name). The new name will also appear in the text chat window before the text your avatar speaks.

When using invisible avatars, you can make words float around the stage by showing the name, and using /nick to change the visible word on screen. Only up to 9 characters will be visible on stage; if you have a longer name it will all be visible in the text chat.

Holding and Placing Props

The props assigned to the stage appear as small icons in the Props Gallery at the centre bottom of the screen.


When you roll your cursor over the icons, a name label appears, allowing you to distinguish between similar or very small props. If more than 8 props are assigned to a stage, arrows will appear at either end of the bar to allow you to scroll through the props, which are displayed alphabetically.

You must be holding an avatar and be on stage to hold a prop. Click on the prop icon in the Gallery, and it will appear at the top left of your avatar. Click again on the prop icon in the Gallery, and it will remove the prop from your avatar. If another player clicks on the same prop that you are holding, it will be transferred to their avatar.

Props that have been created as .swf animations, or uploaded as multiframe props, do NOT allow you to change the frame of the prop while it is on stage (as is the case with avatars and backdrops). When placed on the stage, a prop which has been uploaded as an animated sequence will appear only as a looped animation; a prop uploaded as a single frame (as .swf, .jpg or .png) will appear only as a still image. 

 Changing Backdrops

The backdrops assigned to a particular stage appear as small icons in the Backdrops Gallery, at the bottom left of your screen.

Roll your cursor over the icons to display the name label so that you can accurately choose the backdrop you want. If more than 8 backdrops are assigned to a stage, arrows will appear at either end of the bar to allow you to scroll through the backdrops, which are displayed alphabetically.

Click once on the icon to place the backdrop onto the stage; click the icon a second time to remove it.

Multiframe backdrops can be used in the same way as normal backdrops; to change the backdrop's frame, type /b 1, /b 2 etc in the text input field. Type /b 0 to make the backdrop animate through its frames. 

Player Profile

All players with more than the default (guest, act-only) level of access can edit their own profile, change their password or add/update their email address. 

From the Workshop navigation, click on Edit Players then edit the information you want to update.


Player View

Players log in to UpStage to create and present performances. They do not need anything other than a browser with the Flash player plugin1 to do this.

Different levels of access and permissions can be given to players. The default level allows access only to the on-stage player tools, for collaborating in performances and learning how UpStage works (see the chapter Logging In for more information about player permissions).

The "player view" of the stage is different to the "audience view" (see the chapter Audience View). 


The Wardrobe (top right hand corner) is a scrollable list of the avatars that have been assigned to this stage. The Mirror (the square beside the Wardrobe) shows the avatar you are currently holding, with its name in the rectangle under the mirror.

There are tools below the Mirror, and image galleries for backdrops and props along the bottom of the stage area. Players see a smaller text chat window than the audience.

The tools and palettes are explained in detail in the chapter On-stage Player Tools.


  1. The Flash player plugin comes preinstalled with most browsers; if you don't have it, it is free to download here:^

Speech and Text Chat

Using text2speech synthesis, avatars' text can be spoken aloud in a variety of ways.

Note that at the moment, it is only possible to use characters from the Roman alphabet (including letters with accents such as é, ñ, ø, ü) but not other alphabets such as Cyrillic, Greek, etc. 

Ive got something to say


To make your avatar speak, type into the text input field below the chat window (bottom right of your screen) and hit enter (if there isn’t a blinking cursor line there already, you may need to click the mouse there). 

Your text will appear with your avatar’s name in the text chat window, as well as on the stage beside your avatar (unless you have not put your avatar onto the stage). It will be spoken aloud in the voice selected for that avatar (note that you cannot change an avatar's voice on stage, this must be done in the avatar edit screen from the Workshop). 

The audience can also type into the text chat, but their text won't be spoken out loud and only appears in the text chat window, not on the stage. As the audience doesn’t log in, there are no names connected to the audience chat. If you aren’t holding an avatar, your text will appear as audience text.

I think therefore I am


You can make your avatar "think" by typing : (colon) before the text. Your text will appear in a thought bubble over the avatar, but won't be spoken aloud. It will appear in the text chat window in blue and with curly brackets around it (see image below).

this is how we shout



Note that the default font size in the text chat window is 5. You can increase or decrease the size of the font on individual computers using the commands /asize (audience text) and /psize (player text) followed by a number, e.g. "/asize 8" to make the audience text font size 8.


To make your avatar "shout", type ! (exclamation) before the text. Your text will appear in a red-outlined bubble over the avatar, and in the text chat window as red capitalised text. It will be spoken aloud and the avatar's voice is subtly modified upwards in pitch.

 listen up everybody


Avatar Voices

UpStage uses the Festival Speech Synthesiser and MBROLA to generate text2speech audio for the avatars' voices. 

When you upload a new avatar, you can select a voice for it from the dropdown menu in the upload screen. To change the voice of an avatar that has previously been uploaded, go to the edit screen for that avatar and select the new voice from the dropdown menu. In both situations, you can test the voices to decide which one you want directly from that avatar's edit screen.

Once you have changed the voice, you will need to reset the stage(s) it is assigned to for the change to take effect. 

Note that changing an avatar's voice will change it on ALL stages that the avatar is assigned to; therefore you should not change the voice of an avatar that is not yours, or that other people may be using on another stage. 

See the appendix on Text2Speech Voices for more information about available voices, descriptions, and how to add more.

Saving the log

The text chat is automatically saved by the server, and can be viewed by adding "/log" to the end of the URL in the address bar of your browser (e.g. You can then either select Save as from your browser’s file menu, or copy and paste the text into a text file. 

To permanently delete all of the text from the chat log for a stage, go to the stage edit screen and click Clear stage at the bottom of that screen. Note that this will also remove any drawing, and clear any media left on stage (NB: currently this clears everything).


Players can "whisper" to other logged-in players; this lets you communicate with your fellow players without the audience hearing or seeing it. You can whisper to an individual player, a number of players, or to all logged in players present on the same stage as you. You can also whisper to players on other stages, but you must use their usernames, and there is currently no way to whisper to a player who is in the Workshop and has no stage open. Note that you can have multiple stages open at the same time in different browser tabs or windows, and you can have the Workshop open as well as a stage or stages. 

Typing a whisper command incorrectly displays a "how to" message in your chat window.  If messages are not delivered to users (due to misspelling a username, or a user not currently being online), the whisper "bounces" and informs the sender what went wrong in the chat field. 


 To whisper: 
 to a single player  /wh username1=Message
 to multiple players  /wh username1,username2,username3=Message
 to all users on the current stage  /wh *=Message

Note - /whisper works exactly the same as /wh but obviously it's easier to just type /wh


Technical Information

UpStage is a server-side application. This means that it runs on a web-server, and the users of UpStage (players and audience) access it via a web browser; you do NOT install UpStage on your own computer.

If you have access to a web server and wish to install your own, customisable, version of UpStage, please refer to the installation manual and other support available on the SourceForge site.

Programming technologies 

Upstage is written in Python, using the Twisted framework for event-driven asynchronous networking. It doesn't require Apache (or MYSQL or anything else). The client is written in pure Actionscript, and is compiled using Mtasc, so there is no requirement for Macromedia software other than the Flash player plug-in on the client computer. 

Words typed in by the players are converted into speech using the Fesitval speech libraryeSpeak and MBROLA, and streamed to the clients as MP3s. 

The server runs on Debian Linux, but should easily convert to other platforms. Python and Twisted are cross-platform, but there is a line or two of shell scripts that tie in the speech synthesis.

The software has been worked on since June 2003 and contains some 8000 lines. Please visit our SourceForge site to find the latest stable version and installation documentation.

Client hardware and software requirements

If your computer has a browser with the Flash player plug-in, then you already have everything you need to use UpStage. Obviously faster processors and higher RAM give improved performance, but UpStage has been designed to work on relatively low-spec client machines.

A broadband internet connection will give the best performance, but UpStage performs surprisingly well over dial-up. The main disadvantage when using dial-up is that the load time for each stage is longer. You may need to allow up to 15 minutes to load a stage, depending on how many graphics are on it. Once it’s loaded, the real-time interaction and overall performance of UpStage is not much slower on dial-up than on broadband.

UpStage has been designed to run on a wide range of clients using the Macromedia Flash Player plug-in (we recommend the latest version). It should function properly in all standard browsers such as Firefox, Safari, Internet Explorer and Opera.

Note: due to an issue in Chrome for Mac, at the time of writing it is not possible to upload .swf files from a Mac computer using the Chrome browser. Until such time as Chrome fixes this issue, you will need to use an alternative browser such as Safari or Firefox to upload .swf files.

Linux users may need to install gsfonts and gsfonts-x11 (see the section Troubleshooting for information about this).


UpStage will function through most but not all firewalls, depending on how the firewall has been set up. 

If you install your own UpStage server, it will ask you to specify which ports you want to use (the defaults are 8081 and 7230). You will need to ensure that your users have the correct ports open.

The Open UpStage server uses ports 8084 and 7230-7233, therefore these ports need to be open if you are trying to access this server through a firewall. These ports are open by default in most private internet connections, but some organisational networks will close any “unnecessary” ports.  

Text2Speech Voices

UpStage's speech is generated by the Festival Speech Synthesiser, developed at the Centre for Speech Technology Research at Edinburgh University (

An avatar's voice is selected from a dropdown menu when uploading or editing an avatar. There are currently about 100 voices on the Open UpStage server; if you are setting up your own UpStage server, please see the technical documentation regarding installing voices.

Note that at the moment, it is only possible to use characters from the Roman alphabet (including letters with accents such as é, ñ, ø, ü) in the text chat, but not other alphabets such as Cyrillic, Greek, etc.  

Voices currently available on UpStage

The voices currently available with UpStage have a filenaming system that gives a clue as to what kind of voice each one is. Some of the voices speak English with a foreign accent, some speak English with different English accents, and some are designed to speak other languages more-or-less accurately. We have endeavoured to include a good variety of accents as well as male and female voices.

The format is: ["e" or "emb"] _ [native language] - [en] - [modifications]

For example:

Other accents in the e_en series are "n" for north, "sc" for Scots, "rp" for RP, "r" for rhotic (which means it pronounces the r in words like church).

You can test the voices on the avatar upload and edit screens, by selecting different voices from the drop down menu and entering the text you want to test.  

We are in the process of compiling descriptions for all the voices; following is the information so far: 












Soft, slightly muffled






Clear, not very deep






A little bit quavery






Firmer than bdl_cmu, a bit higher, but clearer






Deep, calm






Robotic, soft






Crunchy - good for witches & effects






Smooth, young






fast, boyish






fast, boyish






nasal drawl






boyish nasal drawl, computerish & like a learner-reader reading












neutral German male






mid-range, clean, English w/German accent






pimp's voice: low & lecherous (English w/German accent)






slow low somewhat distorted voice






slow high somewhat distorted voice, English w/German accent






mid-high slightly strangulated male, English w/German accent






middle somewhat slow and drawn out male, German






soft mid-range male voice






low & lecherous






mid-high male voice, sounds like he has trouble speaking






low soft female voice with slight European accent






mid-low male






mid-low male voice with slight European accent






mid-low calm female






mid-low calm female with European accent












mid-low male speaking quickly






mid-high female with European accent






boyish computer monotone












Deeper than roger, clear, little bit emphatic






Thin, proper-sounding, not deep






gets slower & lower, very good for effects






Flat, slightly muffly






Flat, a bit clearer & stronger than slt-cmu

Adding more voices

You can install additional speech plug-ins on your own server to extend the range of voices available to the avatars. As long as you don't mind messing around with the source code a little bit it's not difficult – Patricia Jung explains how she did it (for Linux, using UpStage V1 - note that this is now several years old):

Just add another entry in the VOICES section in Upstage/upstage/ like:



 'de1': ("| /usr/local/mbrola/pipefilt | /usr/local/mbrola/preproc /usr/local/mbrola/Hadifix.abk /usr/local/mbrola/Rules.lst | /usr/local/mbrola/txt2pho -p /usr/local/mbrola/data/ |/usr/local/mbrola/mbrola /usr/local/mbrola/de1/de1 - -",



I know, it looks awful but this is only because the command is an awful chain consisting of four commands with a couple of options each and the relevant path:

           "| pipefilt ...| preproc ... | txt2pho ... | mbrola ..."


It does some preprocessing (like exchanging all appearances of "z.B." with "zum Beispiel"), then hands the resulting text over to txt2pho and to mbrola.


As long as your command or command chain takes text input from the standard input and outputs the result as sound in raw format on the standard output chain (Unix stuff, ask me if you haven't heard about it) you can put whatever you like in between the "| and the ".


The above mentioned awful command chain will work when one has installed the txt2pho frontend; it uses the de1 female mbrola voice, and you can choose it in the web interface using the name de1.


The only problem with this kind of reconfiguration is: as isn't a nice configuration file but a python script one needs to know at least that python is very picky about vertical alignment: It's extremely important that your new voice entries have the same amount of whitespaces at the beginning of the line as the other voice entries.


The reason it took me so long was TTS: I failed completely and utterly in making the German festival extensions for use with mbrola voices:


work. Then I tried txt2pho with mbrola:


( has a nice installation description), ignoring Festival, and this worked at once.

The Workshop Interface

Once you have logged in to UpStage, you arrive at the Workshop, from where you can either proceed to a stage to rehearse or perform, or choose from a range of options that allow you to create and manage stages and players, and upload and manage the media (graphics and audio) that you will use in your performances. 

At the top left, the UpStage logo provides a link to the UpStage web site, where you can find information about the UpStage project, festivals, regular open sessions and other activities. 

To the right of the logo, HOME will take you to the foyer page for this UpStage server: this is the public entry point, where audience can find information about upcoming shows and click on links to enter stages. The content of the Home or Foyer page can be edited by players with admin permissions.

WORKSHOP is the page you are on, and STAGES gives a list of all the stages on this server.

In the top right-hand corner, you can log out, and you can also see how many players and audience are currently on this server.

Workshop Navigation

From the Workshop links between the green and black lines, you can do the following:

How to do all of these things is explained in more detail in the following chapters.

Messages for UpStage users

The text area below the navigation is an editable area (by users with admin permissions) that can be used to provide information for players on this server - for example if maintenance is scheduled at a particular time, or to remind people about upcoming events and deadlines.

At the very bottom of the screen is the version of UpStage and the date it was last updated. 


UpStage is a work in progress: it is being maintained and developed by volunteer programmers, which means that things happen but sometimes slowly, and sometimes things break as we go. We welcome input from anyone who has the time and skills to work with us on the development of UpStage - please visit the SourceForge site for more information, and join the developer's list.

If you encounter a problem that isn't listed here, or that you still can't find an answer to, please:

Browser Problems

We are constantly monitoring browser compatibility, so if you experience problems connected to your choice of browser, please contact us. 

If you are having browser problems, we recommend the following:

Note: due to an issue in Chrome for Mac, at the time of writing it is not possible to upload .swf files from a Mac computer using the Chrome browser. Until such time as Chrome fixes this issue, you will need to use an alternative browser such as Safari or Firefox to upload .swf files. 

Stage Won’t Load

If the stage fails to load properly, and the splash screen remains over the stage with the message Couldn’t load all images, this could mean that there is a corrupted image assigned to the stage. 

The first thing to do is try reloading, as it could just have been a blip in the data flow; either use the reload button on the splash screen, or use the back button in your browser to return to where you came from and click on the link to the stage again. 

If this doesn't work, you may need to remove a rogue image from the stage. If you had just assigned a new graphic to the stage before you encountered this problem, then that is most likely to be that one that’s causing the problem. Try unassigning that image from the stage, and see if it will load. 

If you don’t know which image it is, you may need to take everything off the stage and reassign them one by one or alternatively, delete the stage and make a new one. 

Missing voices

On the Open UpStage server, we have had a lot of problems with some voices disappearing or ceasing to function; this may be caused by server restarts or upgrades, but it is quite random and very frustrating.

If the voice of an avatar assigned to a stage has disappeared, it may cause all of the sound on that stage to stop, and other problems. If it is not possible to reinstall missing voices immediately, we recommend changing any missing voices to similar ones that are still working, to avoid possible on-stage problems. 

Fonts look bad

If an .swf file has been saved as low quality (in the original file), it can force the whole stage to appear "low quality". This can be changed by right-clicking (on a Mac, ctrl+click) on the stage, and selecting Quality from the menu that appears. If Low is selected, change it to High and you will see that the fonts now display properly. 

However, this will only correct the problem on your machine; your audience may not know how to change the quality. A better solution is to work out which image is causing the problem, delete it and resave the original file as high quality. 

Linux Fonts

If you are using UpStage on Linux you may find that fonts are not appearing on stage. This problem is fixed by installing additional packages:

Uploading Media

The following media formats can be uploaded to UpStage:

You must first create your media in a graphics or audio application, before uploading; please see the section on Creating Media for more information about this.

Note: due to an issue in Chrome for Mac, at the time of writing it is not possible to upload .swf files from a Mac computer using the Chrome browser. Until such time as Chrome fixes this issue, you will need to use an alternative browser such as Safari or Firefox to upload .swf files.

How to upload media 


 Click on Upload Media in the Workshop navigation bar, and you will see the following screen:


When you click on the radio button for the type of media you want to upload (Avatar, Prop, etc) the screen will expand to provide the upload form. 

We will look at each media type in detail.

Upload an avatar 

When you select the Avatar radio button, the screen will expand to give you the form below: 


Enter a name and any tags you want to attach to this media item (tags can help you to find a media item later) then click Browse to navigate to where your media item is on your hard drive or online.

Avatar voice 

Select a voice for your avatar from the dropdown menu of voices. To hear what each voice sounds like, click Test Voice (you can change the text that will be spoken in the input box). There is more information about the different voices in the appendix Text2speech Voices.

Multi-frame avatars 

One way to create animated or multi-frame avatars is to use an application such as Flash that can generate a multi-framed swf file. Another option is to create multi-frame avatars in the upload process. You will need to prepare each frame beforehand, making sure that each image is the same size, then upload them using the number of frames dropdown menu.

  1. Select the number of frames you require, which will create additional fields below Filename 1: for each frame. 
  2. Click Browse to navigate to the file that you have created for each frame of the avatar.

Assign to a stage 

You can assign your avatar to any of the existing stages as part of the upload process:

  1. Click on the name of the stage in the Unassigned list to select it.
  2. Click on the arrows to move it to the Assigned list.


When you're ready, click Upload to upload your media. If you've forgotten to enter any required information - such as a name - a dialogue box will prompt you. You can also change information later by editing your media.  

Upload a prop 

To upload a prop, click on the Prop radio button and you will see a similar form to that for uploading an avatar, minus the voice selection and test.


Upload a backdrop 

Backdrops also work in the same way as props; select the Backdrop radio button and the form is the same.

Upload an audio file 

Select the Audio radio button, navigate to find your file, and select any stages that you wish to assign the audio to. The only difference this time is that you are also asked to select either Sound Effect or Music as the type of audio file. Audio files MUST be MP3.


Upload a video avatar 

This last option allows you to send a stream of jpeg images from a live webcam to an avatar on the stage. Please see the separate chapter on Webcams for information on how to do this.

UpStage Team

This project was initiated in 2003 by Avatar Body Collision, who are Vicki Smith, Leena Saarinen, Karla Ptacek and Helen Varley Jamieson. The project continues to be managed by Vicki Smith and Helen Varley Jamieson. For more information about the Colliders, please visit 

The UpStage application was originally written by Douglas Bagnall, who is a digital artist with a background in open source development of online projects. His artistic work includes the development of a film-making robot and a cloud-classifier; visit for more information.

At the end of 2010, former AUT student Paul Rohrlach joined the team as a developer and server administrator and in 2011 Francesco Buonaiuto became our volunteer documenter. Many other artists are involved in the annual UpStage Festival, and we have a growing team of open source developers who are supporting the maintenance and development of the software.

Since December 2004, the UpStage server has been generously hosted by Citylink.

Thanks to Anne Philpott, we have an ongoing relationship with Auckland University of Technology (New Zealand) which has seen teams of final year software development students working on UpStage as their major project since 2006. 

The AUT UpStage teams1  to date are:

Many other people have contributed to the development of UpStage through encouragement, advice, user testing, feedback, and simply believing that it was possible. The project team thanks every one of you. 

If you are interested in being a part of the development of UpStage, you can join the developer list, 

If you would like to be kept informed about events in UpStage, you can join the announcements list:   

  1. Students in their final year of Bachelor of Computer and Information Science at Auckland University of Technology (New Zealand) have worked on UpStage as a "real world" project since 2006.^


Players wanting to use a live video feed in UpStage need to have a web cam and a separate application that allows the player to FTP their video to the server as motion JPEGs. 

Web Cam FTP Software

FTP freeware or shareware is available for the major operating systems. Theoretically any web cam FTP application should work, however the following software has been researched and tested for compatability with UpStage. Please note that this is by no means all the available software, and as time passes there will be more and better options.

The main features that we have looked for in web cam FTP applications are:

Recommended Webcam FTP Software

Please scroll down this page for screenshots showing how to configure each of the applications listed below. This information is also available at

Windows: Fwink

Fwink (version 0.9.95 beta) is free, has no ads, allows customised sizing and has some special effects including text messages and overlay images.

Mac: Evocam

"EvoCam is the ultimate webcam software for Mac OS X. Use EvoCam to publish a webcam with streaming video, view and record video from network cameras and video servers, create timelapse movies, or use it as part of your home security system with its configurable motion sensors - these are just a few of the things you can do with this easy-to-use yet incredibly powerful webcam software!"

Evocam is not open source, and it's not free (but it is pretty cheap!) but at the moment it seems to be the most reliable and featured-packed webcam ftp app for Mac. It has useful features such as customisable sizing of the window and a variety of effects.

Linux: Camstream

CamStream is a tool for webcams and TV grabber cards that allows for streaming video from multiple video sources. It can save and/or upload (FTP) timed snapshots. It provides a GUI frontend to control the video devices.

Web Cam FTP Configuration

Once you have chosen and installed the appropriate web cam software, you will need to configure it to send the web cam images to your UpStage server. Following are the settings you will need:

Before you begin to upload your web cam image to UpStage, check the pixel size, bearing in mind that images increase in size when they are uploaded as avatars to UpStage. If it is 320 x 240 or larger, it will take up half the stage or more, and impact on the speed and performance of UpStage for everyone. We strongly recommend using a web cam FTP application that allows you to scale your image to custom sizes.

You will need to set a trigger that tells the application how often to take a new image; we recommend 2-3 seconds, as any faster is likely to be faster than the image can travel from your computer to the server and out to the other players and audience.

Once you have configured your web cam and are sending a live stream to your UpStage server, go to Upload Media, select the Video Avatar radio button and look for the filename of your web cam stream in the list of available video streams.

You can then create an avatar using that stream, assign it to a stage, and use it on the stage as you would a normal avatar. 

Passive or active?

You will need to set the FTP upload to passive or active mode according to the configuration of your server. At the server is set to active.

We have recently had issues which suggest that this setting will also vary according to your client computer's platform: with the new (2010) UpStage server, we have discovered that Fwink on Windows needs to be in passive mode to work, whereas Evocam on Mac and Camstream on Linux do not work in passive mode, and need to have this option toggled off.

If you are having trouble with web cam FTP, the first thing to try is toggling passive mode.

Fwink configuration:


Evocam configuration:



Camstream configuration: