Wednesday, March 31, 2010

Editing video with the video scratcher


Here's a test of the video scratcher used to edit video.
The procedure....

Put guide lines at the edits.
Define the 'shots' by dragging at a 'normal' speed as closely as possible
Speed up past the things I want edited out
Slow down where appropriate

This is very similar to an audio project I worked on. I like media where the timeline is done gesturally, almost as if it's hand-cranked. It gives everything a kind of weird fluidity. I also really like the bubbly audio.

Tuesday, March 30, 2010

More video tests


I'm excited about the tests we're doing for future iterations of video classes. You can see them here. I'm especially liking the video scratcher that Craig and I have been working on. The idea is to establish various spatial relationships then have the video 'create itself.' It's like a blend of interactivity and video. In our test version, a marker represents travel among three LA cities. When the marker hits a certain position, info about that city pops up.

The original video scratcher is shown below. It enables After Effects to create motion scrub type animations using motion sketch data which is then used to control the timing of a jpg sequence....

Sunday, March 28, 2010

Laserium lives and other tests


Been doing a lot of tests with various techniques in After Effects for future iterations of video classes. This one takes me back to the 70's. I also think this one is neat...

Sunday, March 21, 2010

Languages, languages

I tend to get calls for elemental effects so I've been trying out a ton of languages/aps to find something for that kind of work. Plus I'm looking for something that has a richer scripting environment that AE.

Some results of my experimenting and research so far....

Maya-Essentially, a program without an interface, just a bunch of dialogs connected to an engine. Great dynamics and effects but everything is 3x harder than it needs to be.

Cinema 4D-easy to use, nice, but restrictive academic licensing and dynamics modules are extra.

3D Studio Max-this looks great, but is Windows only. Might try running this on my Intel machine.

Motion--some nice, simple dynamics, but overall, more like a toy.

Quartz Composer--I love the node-based real-time interface, but it needs just a big more refinement in terms of the quality of output.

Nodebox 2-Output is a little too sparse.

Processing-You can do some nice stuff with this. Dynamics requires linking libraries. Still thinking about this one.

Lightwave-capable, but weird interface + a dongle!

Strata--seems unchanged since I used it 20 years ago.

Blender-Highly capable but where is that interface from? Still, highly capable dynamics. Still thinking about this one.

RevMedia with Derbrill plug-in-I love hypertalk, but a bit too sparse.

Scratch

Alice

Various flavors Logo

contextfreeart.org

Unity game engine

dim3 game engine

panda3d

Saturday, March 20, 2010

Show player code for revMedia

Pretty straightforward. I was in a rush so it's inefficient and unoptimized. Plus I hardcoded the file names.

--MAKE SCREEN BLACK, INITIALIZE VARIABLES

on openstack

global videopos

put "1200,400" into videopos

hide menubar

set the width of this stack to 2000

set the height of this stack to 900

set the location of this stack to 300,400

set the lockerrordialogs to true

end openstack


--PRESS ESC TO EDIT

on escapekey

show menubar

end escapekey


--PRESS TAB TO INITIALIZE

on tabkey

openstack

end tabkey


--PAUSE VIDEO

on returnkey

global thevideo

if there is a videoclip thevideo then

if the paused of videoclip thevideo is true then

set the paused of videoclip thevideo to false

else

set the paused of videoclip thevideo to true

end if

end if

end returnkey



--MAIN SHOW CONTROL

on keydown thekey

global thevideo, videopos

--JASMINE CUES LEFT

if thekey is "1" then

checkvideo

put "/Users/faculty/Desktop/show/1-flowerL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "2" then

checkvideo

put "/Users/faculty/Desktop/show/2-juniperL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "3" then

checkvideo

put "/Users/faculty/Desktop/show/3-UNL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "4" then

checkvideo

put "/Users/faculty/Desktop/show/4-fallingL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "a" then

checkvideo

put "/Users/faculty/Desktop/show/a-airportLEFT.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "b" then

checkvideo

put "/Users/faculty/Desktop/show/b-channelchangeL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "c" then

checkvideo

put "/Users/faculty/Desktop/show/c-rewindL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "d" then

checkvideo

put "/Users/faculty/Desktop/show/d-fastforwardL.mov" into thevideo

play videoclip thevideo at videopos

else if thekey is "e" then

checkvideo

put "/Users/faculty/Desktop/show/e-skyL.mov" into thevideo

play videoclip thevideo at videopos

--FADE

else if thekey is "0" then

lock screen

if there is a videoclip thevideo then stop playing videoclip thevideo

unlock screen with visual dissolve

end if

end keydown



--CLEAR ANY EXISTING VIDEO IF PLAYING

on checkvideo

global thevideo

if movie() ≠ "done" then

lock screen

stop playing videoclip thevideo

unlock screen with visual dissolve

end if

end checkvideo

Building the system pt. 2

The difficult part of working in small theater video projection is that you have to be a software and hardware person. You're analogous to the lighting designer who, besides designing lighting, is up there on tall ladders hanging lights. On most of the previous shows I've worked on, I've had to use my feminine wiles to get someone to do that stuff for me. That's one of the reasons I stopped working on shows for awhile. I have no idea how to hang projectors from the ceiling. Remember, I'm the person who tried to mount a 500 watt light for my movie using string (which promptly burned off). I also set a sheet on fire by putting my bed sheet scrim too close to a light. Cabling, fine. Mounting hardware, no.

So it's not surprising that the way I addressed the system problem was to turn back to software. Most show running software requires fast computers. But I was hoping to use two of the spare old G4s we had in the art department. So I turned to revMedia. revMedia is the free version of a suite of products including revStudio, and revEnterprise. revMedia is a clone of HyperCard, a high level programming language written by Bill Atkinson for the Mac over twenty years ago. I feel very comfortable with the syntax, like it's a second language. Not only is revMedia free, it's cross platform so it runs on Windows, Mac and Linux systems. Plus, it's not a resource hog. I've used it on a couple of small projects in the past few years.

It took about four hours to get a working system going. Everything is cued by the keyboard. You press 1 on the keyboard, video cue 1 pops up. You want to fade something out you press 0. Press return to pause/unpause. It works great I think. Still waiting for the show report. But in rehearsal it went fine. There's still no dowser/curtain on the monitors so we're working without a net. But at least we're working on a Mac system in which it's easier to control error messages. Plus on revMedia, you can lock out application-specific error dialogs. Break a leg.

Building the system pt. 1









There are three vital components to doing theatrical projections: creating the videos, rendering the videos and building the show system. Creating the videos is usually the easy and fun part. Rendering is a time-consuming inevitability. Building the system is almost always painful.

Two shows ago I ran Gaul's video using QLab. The unreliability and overall kludginess of that software left me looking for another solution so for Pugilist we went with Quicktime movies. It worked great. We just had one quicktime movie on screen which we paused and played using the computer keyboard. We accomplished fades using a projector dowser constructed by a stage hand. Operated remotely by a string, the dowser was a piece of wood that slid up and down to cover the projector lens. Simple, yet effective. (The pic above shows a fancy automatic dowser sitting on the projector).

Hardware dowsing is actually very important for theater. First, it allows for true "blackout." In theater the stage goes black for transitions, like a fade in film. If your projector or monitors are on, they will visibly light the stage since video black is projected black, not true black. Second, a dowser provides a safety net. If the computer crashes or otherwise screws up, a dowser lets you turn off the screen quickly and reliably. Without a dowser or curtain, you're working without a net. Third, a dowser makes it easy to fade out cues. Let's say you're playing a video and it goes longer than the scene. You just dowse the video and it appears to fade out gracefully. This means you don't have to program any fades into the video and yet, you can time the fades perfectly. When you're projecting, always fight for a hardware dowser.

Since this system worked so well I thought I'd try it again for Jasmine and Prodigal. But then the problems started. First, KCC has a terrific high output projector that they use for showing films. But it's really noisy and made it difficult to hear the actors. So that was out. After roaming around KCC we found two large screen monitors. We talked to the the stage designer about working those into the set as a focal point.

So here's the problem. How do you dowse two on screen monitors? We talked for a while about putting up a black curtain that would reveal and hide the TVs. But unlike the makeshift dowser built for Pugilist, this one would have to look good as part of the set. So I decided to bake the fades into the video and go without the dowser. Working without a net.

Version one of our system was supposed to work like this. Each of the monitors was hardwired to an old XP computer mounted directly below on a stand. We planned on extending the keyboards using USB cables so we could operate the computers off stage. Problem: the computers were so old that they had old keyboard-type ports, not USB ports. Our tech said it's hard to find extensions for those.

Version two. We borrowed two old XP laptops from KCC and ran long VGA cables to the monitors. The laptops had player software called GOMplayer that worked well enough to show the mp4 videos full screen and at full frame rate. Problems: First, we found that GOMplayer doesn't play audio from mp4s which was important for one video that had sync sound. Second, even the tech couldn't get XP in a show-ready state. One of the problems of using computers is that messages are always popping up on screen. When getting a computer ready for a show it's important to turn off screen savers, software updaters and disable power-saving settings that allow the disk drive to sleep [also turn off Expose settings & the annoying Adobe Updater]. But during one rehearsal, we had a message pop up on screen. That's XP.... Finally, and perhaps the last straw, the movie player technique wasn't working. Without hardware dowsing, it was impossible to get the videos timed correctly. The videos would go too short or they would go way way too long and there was no way to fade them out. Rehearsals were a pain because it was so difficult to reset the videos to the correct cue. Clearly, the system wasn't working.

Extravagant memory

There are lots of live performance ideas I'd like to work on but I'm always stopped by the inefficiency of theater. Both of the current shows required months of rehearsal with five actors and the director. Plus there were the efforts of live musicians, a featured singer, video designer, a lighting designer, stage designer, sound designer, stage manager, two crew people, a producer, a site liason, site tech, and site sound man. All this for just four shows. And yet, theater—and live performance—lingers. In the end, unlike video, we're left with an inefficient, extravagant memory.

No news is good news













Last night was the premiere of the two shows. I didn't get any last minute calls yesterday afternoon which is good. Last minute calls would have meant the video system wasn't working. Now I'm waiting for the show report for last night. If it went fine, there will be no notes for me. No notes is good notes. There are still three more shows to go.

Thursday, March 04, 2010

Flight board








The director wanted a flight board but this still might change. I was going to shoot it but realized that it's hard to get a nice shot and I needed the flexibility to change the arrival places and times. Here's my half-done After Effects version. The font is an animated flipping font from Motion. It's really ugly but after turning it black and white (it's actually red) it looks a lot better.