Hi, finally had the time to complete the replay system overhaul. Thanks to everyone providing input. Some people had sent me longer wish lists – unfortunately I'm unable to fulfill all of them - at least not now :). But some things are still high on my list: specifically the option to easily save/load and stream recorded data using a format that doesn't break easily. Also, the option of taking over flight controls at any point during a replay. The latter isn't as easy as it sounds, since most FDMs don't really like being repositioned or even having the speed changed externally.
Another thing, since the topic was raised: since FG2.4.0 the multiplayer system is already aware of replay sessions - and already freezes the state. Other pilots are no longer annoyed by remote replay sessions. It's still a good idea though to start the replay only while in a parking position – since other MP players could still see your aircraft squatting the runway or frozen in mid-flight. Now to the overhaul: main improvement is the option of making it work properly with any type of aircraft and any custom properties. The old system only worked perfectly with certain propeller aircraft and piston engines. Important to mention though: by default, nothing changes for existing aircraft. The old system already covered a huge number of properties - but it's impossible to just record everything. I did some tests trying to auto-detect aircraft types and properties to be recorded - but that cannot really work with all aircraft for a number of reasons. And any fixed selection eventually doesn't work perfectly with some aircraft. Hence, it seems a better idea to avoid any kind of guessing and hard-coded logic - and rely on configuration alone. The default, obviously, is the same set as hard-coded for FG2.4 and earlier. The new system is still easy to adapt since several ready-to-use configuration files are available - which simply need to be included, depending on aircraft/engine/.. type. And it's not much more work to customize. For those interested, there's a README.flightrecorder in the Docs folder. There's also a few examples in fgdata showing different levels of customization: the ASK13 (glider), the c172p (prop/piston), the b1900d (turboprop), the UH-1 (helicopter), and the 777-200ER (jet). As announced, I haven't changed the actual replay buffering. But, as someone requested, all buffer properties are now configurable (see /sim/replay/buffer properties). So, if you have enough memory, you could increase the buffer sizes/rates. There's still no configuration GUI for these properties though. The most obvious change though is probably the new GUI dialog: looks like a video player, provides play/pause/skip controls, also controls replay speed. You can also use the 4 arrow keys to control replay (they were useless during replay so far). Finally, since replay can be paused now, it was necessary to move the "stop replay" key binding to the "ESC" key (instead of pressing "pause" twice) – which feels more intuitive to me anyway. Hope some people find all this a bit useful - so have fun. I recommend you take your favourite aircraft for a ride and then replay and evaluate your landing using the new slow-motion support... ;-) And I'm sure you'll let me know when things aren't working as expected... cheers, Thorsten On 04.09.2011 20:56, ThorstenB wrote: > Hi, > > I'm currently looking into an overhaul of the replay system. The > buffer mechanisms of the existing replay system itself won't change, > but I'm replacing the hard-coded recorder/FDM interface. Instead, > I'll introduce a fully configurable "flight recorder". It's basically > a "property recorder", so anything that's in the property tree can be > recorded - and replayed. Aircraft-specific XML descriptions can be > used to specify properties, data type and interpolation method > (discrete, linear, or rotational in degrees/radiant) for each > "signal". > > There'll be a set of default property lists which can be included, so > only custom properties need to be specified manually. Naturally, all > (existing) aircraft not providing any recorder configuration will use > a default, matching the hard-coded system of <= FG 2.4.0. > > I have a prototype which also shows the new system is going to be > faster, mainly since it doesn't resolve property paths at run-time > and avoids copying data around. It'll also use less memory, since > most properties can be recorded with reduced precision, e.g. it's > unnecessary to record things like flap or gear position with full > "double" precision. And the current system always records properties > for 4 engines + 4 propellers + 6 tanks + 3 gear. With the new system, > this can be easily adapted - a glider doesn't even need > tank/gear/engine/propeller properties. On the other hand, most jet > engine properties weren't recorded so far - this will also improve. > And the obvious advantage of the new system is the option of > recording custom properties. > > Finally, the new system also comes with a new replay "dialog". Looks > more like a video player, provides a "time slider" and, also new, > introduces slow-motion play back. Sneak preview: > http://imageshack.us/photo/my-images/683/fgfsreplay.png/ > > I have a working prototype, but nothing ready to be committed. > Meanwhile, constructive comments/ideas are welcome. > > cheers, Thorsten > ------------------------------------------------------------------------------ All of the data generated in your IT infrastructure is seriously valuable. Why? It contains a definitive record of application performance, security threats, fraudulent activity, and more. Splunk takes this data and makes sense of it. IT sense. And common sense. http://p.sf.net/sfu/splunk-d2dcopy2 _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel