Go watch TikiBar TV

I’m not one to advocate drinking, but anyone interested in video production should watch some episodes of TikiBar TV. You can subscribe to it in iTunes if that’s your bag.

Why the recommendation? It’s one of the most beautifully shot and composited video podcasts, plus it’s clever and funny. Plus, the folks making it actually went to film school, yet it’s not pretentious tripe.

Check out their forums as well, particularly the FAQ forum, to get some insight into their workflow.

Check out the PixelCorps

Initially, I wasn’t quite sure what to think about the Pixel Corps, Alex Lindsay’s digital post production guild, but having heard him speak more on This Week In Tech, MacBreak, and DL.TV, I’m really getting interested.

The gist is that they’re a worldwide group of folks interested in film/video production and post-production. They offer training, real world opportunities, and discounts on software. It seems like they trend almost exclusively towards the technical side of things, giving people the tools and the knowledge of how to use them.

Alex is also a serious video geek – anyone who gets giddy over 4:4:4 dual-link HD-SDI is all right with me.

Anyways, if you’re interested in the technology side of things, I highly recommend browsing the PixelCorps website, to see whether it might be a good fit for you.

Writing my own FTP client…

So, Navdeep Bains helped me immensely by updating his FTPKit ftp socket class to support large files (bigger than 2gigs), but I kept running in to problems – resume was broken, queues were broken, etc. Since I didn’t have access to the source, it meant going round and round with Navdeep, and while he was incredibly helpful, it just seemed problematic. So, I’m writing my own class. And that’s why I’m not posting here. Because I’m stuck in a horrible world of uint64 bugs and reading RFCs…

Getting video framerate through the Quicktime API

This is a topic in which pitfalls abound, but I think I’ve just about sorted out the various ways to get an accurate idea of the a video file’s framerate. I’m using RealBasic for this, but the calls should be pretty generic in any language that talks to quicktime.

If you poke around a bit, you’ll find that the Movie.Timescale property is “sometimes” the number you’re looking for. In particular, video files generated from Apple applications (FCP, Compressor) seem to have their timescale set to the framerate. However, many other files will have their timescale set to the sample rate of the audio track, or perhaps to something entirely different.

If you can use the timescale, go for it. It’s much faster than the alternative. Note that it may come in as an int – so 2997 instead of 29.97.

What I’m doing is testing whether the timescale number makes reasonable sense in the context of video. I figure I’m not likely to have a video with a framerate higher than 60fps, or lower than 10fps. If the timescale result falls somewhere outside those bounds, I fallback to an alternative method.

By using the GetNextInterestingTime Quicktime call, or in Realbasic using NextInterestingVideoTimeMBS (requires MonkeyBread) you can measure the time between frames. NextInterestingVideoTimeMBS will return the current time in the movie and the duration of time between two “interesting times” (which usually equate to frames). The number you’re most interested in is the duration. By calling NextInterestingVideoTime a few times, you can be sure that the duration of each frame is the same.

Once you’ve got your duration number, you can divide your Timescale by the duration, and get the number of frames per second. You can even reset the Timescale to your new value (multiplied by 100) and then use the TimeDuration call to get the length of the movie in seconds.

Seems to work pretty reliably on the videos I’ve thrown at it. Anybody have better methods?

RealBasic is Kinda Neat

The reason I’ve fallen off the face of the planet the last few days is that I’ve been wrapped up in learning RealBasic. Since nobody seems to know what Realbasic is (except Mike of course), I’m going to get together a longer post about the coolness of it. I’ll have it up later today.

Edit: OK, got all crazy busy doing some cool code this afternoon. Will tell you about it tomorrow. RB is just too cool!

Not Dead

Sorry, it’s spring break, I’m out of town. Nothing of note in the biz anyways, aside from someone mentioning that HDCAM is EOL’d – that can’t be true, can it?