I'm developing a desktop application in Adobe Air. I'm trying to figure out how to record video to the hard drive as a FLV file using the Camera and Video classes. I have looked everywhere in the Adobe Flash documentation for information about how to record a video, but I can't find out how to do this. Can anyone tell me how this would be done?
There is no server in this situation; in fact, the computer the software will be running on isn't even connected to the internet. If it isn't possible to record video to the hard drive using Camera or Video classes, is there some kind of work-around I could use, keeping in mind that for this project I have full access to the client computer and can install any software I need to on it? I'm developing for a project that will be shipped to customers as a kiosk computer with all software pre-installed.
There's no documentation for recording because it isn't supported, at least directly.
There are a couple of ways to do it, though:
There's this class: http://www.joristimmerman.be/wordpress/2008/12/18/flvrecorder-record-to-flv-using-air/ But it doesn't support sound and I don't think you get much, if any, compression.
You could install a local server that can accept the video stream from AIR (which is already encoded).
You could use the NativeProcess API to send data to a native program for encoding. There could be problems with this approach, I've heard that people have had trouble with high bandwidth applications like video encoding, but I don't know the details. Using Timmerman's method of saving bitmapdata to a file and then using passing the file name to a native program to do the encoding might work better than trying to send the video bytes over the NativeProcess link itself.
In AIR 3, you should be able to write a native extension that lets you encode video straight from the application.