On Wednesday 10 October 2007 11:11:40 T. D. Ruth wrote: > I haven't tried it yet and this suggestion is probably subject to Phil's > comment but check out this article on Jing: > http://www.pcworld.com/article/id,134932-page,1-c,graphicsmultimedia/articl >e.html .
How you do video capture is very OS specific. There was a thread on here earlier that went into lots of detail about how to do this on a Linux system. There are at least two approaches that work for Linux users. Here is that thread: Re: [Flightgear-users] record a flight session video From: "Hal V. Engel" <[EMAIL PROTECTED]> To: flightgear-users@lists.sourceforge.net On Sunday 03 June 2007 20:46:54 Curtis Olson wrote: > On 6/3/07, Pigeon wrote: > > Considering you're Linux you could also try xvidcap (which has GUI) > > and ffmpeg (which you have to do at command line). > > > > > > But to be honest I doubt they would make huge differences from > > Instabul or recordmydesktop. > > > > > > I often find the bottle neck on most machines is not the video/audio > > encoding but how fast the data is being captured. For that you could try > > capturing at a smaller resolution or slower frame rate. I also notice a > > better display card does give a better performance, possibly related the > > xshm implementation of the driver and other display card specifics like > > memory bandwidth. > > > > > > And also depending on your machine and disk, you can try > > capture+encode on the fly versus capture-into-frames (jpg/png/xwd) then > > encode later. Though my personal experience is on slower processor they > > yield pretty much the same performance, while on a faster processor (say > > > > >2GHz) it is faster to capture+encode on the fly as there is less disk > > > > io. > > Another option which I have used at my day job with excellent results is to > get a scan converter that converts your vga signal to NTSC (or PAL) video. > Now pipe that video output into a video capture box that is plugged into a > second computer. It's more expensive than an open source software package, > but the results are full smooth frame rates since you don't have two > applications competing for the same video/memory/disk/cpu resources. > > Curt. This an old thread that I discovered when I was trying to figure out how to create videos of a flightgear session. The thread was a dead end but it did point out somethings that do not work so that I didn't have to spend anytime looking at those options. So I did a little research myself and figured out a way to get OK recordings. Since it appears that no one has documented a way to do this I will do it now. After doing some research I tried using yukon to do the capture and it works much better but it also requires more steps. Yukon is specifically for recording OpenGL games and uses hand optimized assembly code at least on x86 and x86_64 hardware. To do this with yukon I ended up using a three step process. Step 1. Capture the FDM data for a flight using --generic=file,out,20,<file>,playback as part of the command you use to run FG. <file> is the name of the output file that contains the FDM data. This creates a fairly small data file (less than 1 meg per minute of flight time). This step can be done using what ever screen resolution you want since it does not affect the final result in any way. In my case I have been using 3200x1200. In the --generic parameters the 20 is the captured frame rate for the FDM. Depending on your hardware you might find other values that work better. In addition, I do not know if this is the best value to use in my case because I did not try too many other settings. Yukon seems to capture at 25FPM no matter what I told it to do so I think that using 25 might give the best overall results. For those using fgrun you can set this up in the Advanced dialog in the Input/Output section. Use the generic protocol. Step 2. Play back the file created in step 1 in FG using a better video capture resolution such as 640x480 or 320x240 and record it with yukon using a command that looks like this: yukon /usr/games/bin/fgfs --fg-root=/usr/share/games/FlightGear --fg-scenery=/usr/share/games/FlightGear/Scenery --aircraft=pc7 --enable-horizon-effect --enable-game-mode --lon=-122.3590 --lat=37.6157 --altitude=0 --heading=120 --geometry=640x520 --bpp=32 --fov=90 --generic=file,in,20,<file>,playback --fdm=external Where <file> is the file created in step 1. Use F8 to start and stop recoding by yukon. It is important that the air craft and starting position used in the above command are the same as when the FDM output file was created in step 1. Be sure that yukon is configured correctly and is working before doing this. Warning - the file created by yukon is uncompressed raw video and is very large. You can find info about yukon here: http://neopsis.com/projects/yukon/wiki For Gentoo users there is are ebuilds for seom and yukon in the sunrise overlay. You need to have seom installed to build and run yukon. Step 3. At this point you have a very large raw video file and you will need to do additional processing to make it usable. So do something like: seom-filter yukon.seom | mencoder - -ovc xvid -xvidencopts bitrate=512 -o myvideo.avi mencoder is part of mplayer. You can change the bitrate to get higher quality (but also larger files) or lower quality (smaller files) video. Setting bitrate to 512 did have noticeable artifacts in the resulting video captured at 640x480. You may want to try higher values. You can also do a two pass conversion with mencoder to get higher quality video at a given bitrate. Using the above techniques I have made a 8 minute 47 second video and a 5 minute 20 second video. Again captured at 640x480. The output from yukon on the longer video was almost 4 gigabytes and the resulting avi file using a 512 bitrate was 32.4 megabytes. The shorter video had 2.1 gigabyte and 19.8 megabyte files respectively. Both of these videos played back fine using xine and mplayer. But I was not able to get either to work when uploaded to youtube. I don't know why. Now I have a question. I would like to be able to pan and zoom in the recoding session (IE. during step 2). Zooming is easy since I can us the x and X keys. But panning is problematic since right clicking the mouse to use it for panning results in a big ugly cursor in the middle of the recording. If the cursor was not visible this would work great. Is there anyway to prevent that cursor from appearing? Hal Re: [Flightgear-users] record a flight session video From: Pigeon <[EMAIL PROTECTED]> To: flightgear-users@lists.sourceforge.net > Step 2. > > Play back the file created in step 1 in FG using a better video capture > resolution such as 640x480 or 320x240 and record it with yukon using a > command that looks like this: While we're experimenting with video capturing, if anyone here is comfortable with patching and building your own FG, I invite you to have a try with my screen streamer patch, which allows you to capture FG's screen directly, without using an external program. I'd like to know how much better/worse this streamer performs comparing to things like xvidcap and yukon. http://pigeond.net/~pigeon/fgfs.osg-plib.ss.20070820.patch Please make sure you read the header of the screenstreamer.cxx file. In short, you run fgfs with an extra argument, like: --screenstreamer=localhost,20000 Then you can capture FG and transcode into a video on the fly, say with mencoder, by doing: mencoder -nocache -demuxer rawvideo -rawvideo w=640:h=480:fps=25:format=rgb24 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=480 -o output.avi -ffourcc DIVX "http://localhost:20000/?fps=25" A lot more details and examples can be found in the screenstreamer.cxx file. Any feedback would be much appreciated. And just recently I have setup an experimental live "mpcam" on the mpmap. My originally e-mail to the devel list: http://www.mail-archive.com/[EMAIL PROTECTED]/msg12262.html So you can see the screen streamer in live action. Pigeon. Re: [Flightgear-users] record a flight session video From: "Hal V. Engel" <[EMAIL PROTECTED]> To: flightgear-users@lists.sourceforge.net On Sunday 26 August 2007 16:46:20 Pigeon wrote: snip > I'd like to know how much better/worse this streamer performs > comparing to things like xvidcap and yukon. I have not tried your patch yet but I can tell you that I found xvidcap totally unusable for capturing FlightGear. It only captured the first frame and then the only thing that "moved" in the video was the blinking cursor. I think xvidcap is more for making training videos and is not well suited for capturing things like games and simulations. I will try your patch but it may take a few days. Can I use the patch with 0.9.11-rc1? One of the things that I think is useful about the way I am doing this with yukon is that I can focus on flying during the FDM capture session without having to think about things like camera angels and zoom. Then when playing back the session during capture I can forget about the actual flying and focus on things related to the composition (camera angle, zoom...). In other words it cleanly separates the pilot and camera man functions. Of course this should be possible with your patch as well. Question - when your patch is doing the capture does it also capture the cursor and menu? Siegfried has placed one of my yukon captured videos on the home page of the FlightGear Fan Portal http://flightgearfan.6x.to/ if anyone is interested in seeing the results. This video is mostly a proof of concept and it not at all polished. There is no sound since the version of yukon I was using does not capture sound (it will be in the next release). This video is about 6:47 minutes and consists of an aerobatics flight over KSFO that starts with taxing for take off and ends with a landing on 28R. The aircraft is a PC-7. It was captured at 320x240 and is hosted on youtube. I have not been able to playback the youtube video on my machine because I am running gnash on my system and right now gnash works with most but not all of the videos on youtube. Since it is still alpha level code gnash also does not currently work with the mpcam either. But I like the idea behind mpcam since it would allow for a pilot to take someone in another location for a "ride" in their airplane. Hal Re: [Flightgear-users] record a flight session video From: Pigeon <[EMAIL PROTECTED]> To: flightgear-users@lists.sourceforge.net > I will try your patch but it may take a few days. Can I use the patch with > 0.9.11-rc1? I've just reorganized my patch now, it's now split into two: http://pigeond.net/~pigeon/fgfs.plib.ss.20070828.patch http://pigeond.net/~pigeon/fgfs.osg.ss.20070828.patch The plib one should work with 0.9.11-rc1 > One of the things that I think is useful about the way I am doing this with > yukon is that I can focus on flying during the FDM capture session without > having to think about things like camera angels and zoom. Then when playing > back the session during capture I can forget about the actual flying and > focus on things related to the composition (camera angle, zoom...). In other > words it cleanly separates the pilot and camera man functions. Of course > this should be possible with your patch as well. Indeed. Your approach is good in many ways, and it should work with any mean of capturing. > Question - when your patch > is doing the capture does it also capture the cursor and menu? At the moment, the plib version captures menus and dialogs, but not the cursor. The current osg version, which I've used render-to-texture to capture, only captures what's in the scene graph, which means it does not capture the menu. In theory I could also implement a RTT version for the plib branch as well. > There is no sound since the version of yukon I was using does > not capture sound (it will be in the next release). That would be an advantage of (future) yukon to capture audio as well. Of course I could also implement that if it is worthwhile. I've also tested the streamer under windows and it works pretty well too. I believe I would not be straight forward to get yukon on windows, but then I don't know. The original intention of my streamer is to provide an easy and in theory efficient way to capture video of FG, comparing to using any external on-screen-capture tool. I know a few people was using FG's jpg-httpd for capturing and making video, which is IMHO insanely inefficient. I have not tried yukon myself yet, but with the way it works it should be very fast as well. Pigeon. Re: [Flightgear-users] record a flight session video From: "Hal V. Engel" <[EMAIL PROTECTED]> To: flightgear-users@lists.sourceforge.net On Monday 27 August 2007 16:49:17 Pigeon wrote: > > I will try your patch but it may take a few days. Can I use the patch > > with 0.9.11-rc1? > > I've just reorganized my patch now, it's now split into two: > > http://pigeond.net/~pigeon/fgfs.plib.ss.20070828.patch > > http://pigeond.net/~pigeon/fgfs.osg.ss.20070828.patch > > > The plib one should work with 0.9.11-rc1 I was able to get the old patch (with some minor tweaks) to work with 0.9.11-pre1. I also did some testing. This would be a real nice addition to FlightGear and I would like to see it become part of the next release. > > > One of the things that I think is useful about the way I am doing this > > with yukon is that I can focus on flying during the FDM capture session > > without having to think about things like camera angels and zoom. Then > > when playing back the session during capture I can forget about the > > actual flying and focus on things related to the composition (camera > > angle, zoom...). In other words it cleanly separates the pilot and > > camera man functions. Of course this should be possible with your patch > > as well. > > Indeed. Your approach is good in many ways, and it should work with > any mean of capturing. There are both advantages and disadvantages: Pluses. 1. Better control over composition while recording. 2. No distractions related to the recording process while piloting the aircraft. 3. Since you can run the record playback session at lower resolutions than you would normally run FG while flying you can crank up the OpenGL quality parameters while recording. Minuses 1. Sounds do not playback very well using this method. The engine/prop sound does not change like it does normally. Wind noises from lowering the landing gear are not present. 2. At least with the PC-7 none of the engine gages work while using an external FDM. Perhaps this is related to #1. Is this a PC-7 issue or does this happen with all aircraft? 3. Does not allow you to record other aircraft that may have been present during the session when you recorded the FDM. So this will not work if you want to create a video of a formation flight for example. 4. During FDM play back movements of the controls are jerky and do not completely reflect what happened when the FDM was recorded. Hopefully #1, #2 and #4 will be fixed at some point. > > > Question - when your patch > > is doing the capture does it also capture the cursor and menu? > > At the moment, the plib version captures menus and dialogs, but not > the cursor. The current osg version, which I've used render-to-texture > to capture, only captures what's in the scene graph, which means it does > not capture the menu. In theory I could also implement a RTT version for > the plib branch as well. With yukon it is fairly simple to avoid recording the menus since you can tell it to ignore parts of the application window it is recording. But I think that your code should be designed to prevent things like menus from being captured and it looks like you are already there with OSG. Not recording the cursor is a good feature and a definite plus compared to yukon. > > > There is no sound since the version of yukon I was using does > > not capture sound (it will be in the next release). > > That would be an advantage of (future) yukon to capture audio as > well. Of course I could also implement that if it is worthwhile. > Sound would be a plus but I don't think it is a big deal at this point. Focus on getting video capture working as well as possible before worrying about sound. > > I've also tested the streamer under windows and it works pretty well > too. I believe I would not be straight forward to get yukon on windows, > but then I don't know. I believe that yukon is X11 and x86 or x86_64 only at this point. I would expect that we will see it for other architectures on X11 before we see it on Windows. But I believe that there are currently other viable options for Windows for those who want to capture videos of games and sims. For X11 users I get the impression that yukon is about the only viable option. At least that is what users on the gentoo forums are saying. > > The original intention of my streamer is to provide an easy and in > theory efficient way to capture video of FG, comparing to using any > external on-screen-capture tool. I know a few people was using FG's > jpg-httpd for capturing and making video, which is IMHO insanely > inefficient. > > I have not tried yukon myself yet, but with the way it works it > should be very fast as well. Yes yukon is fast and it has fairly low CPU overhead. It is actually a good general purpose OpenGL video capture tool considering how young it is. But at higher resolutions it starts to become IO bound because of the size of it's output files. It also needs a huge amount of disk space - a 640x480 capture uses about a half gigabyte per minute of recording. The advantage however is that you can do things like two pass processing, for better quality at a given compression level, that would be at best difficult using your patched FG code. Another plus for yukon is that you can start/stop recording by pressing F8 (this is the default key but it can be changed). For example, you may want to only record a few segments of a flight and yukon will let you do that. One other thing that may be an issue. I like to run FG in game mode across both of my monitors. This means that if I wanted to capture a live session (IE. not using a recorded external FDM) there would be no way to start mencoder after FG was running. And as you know starting mencoder before FG is running does not work. I hope this was helpful. Hal ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Flightgear-users mailing list Flightgear-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-users