Howto:Reload sound configuration without restarting
(Redirected from Howto:Reload sound config without restarting FG)
Jump to navigation
Jump to search
Reloading the sound configuration without restarting can be a massive time saver for those working on sound configuration files.
The Nasal console method described below no longer works. Instead you can reload the Aircraft model (Debug -> Reload Aircraft Model).
Using the Nasal console
Note: this method does not work anymore.
The following line of Nasal code can be entered in the Nasal console (found in the Debug menu).
fgcommand("reinit", props.Node.new({ subsystem: "fx" }))Every time the line is executed the sound subsystem ("fx") is restarted and the configuration file reloaded, enabling you to test your changes instantly.
| Tip Remember to actually save your sound configuration file each time you want to test it, so that FG can see the most recent changes. |
Reloading the sound config automatically
Here is a Nasal function which will automatically reload the sound configuration file when you make a change:
var reload_sound = func {
var sf = getprop('/tmp/sound-xml/path');
if(sf == nil)
{
sf = getprop('/sim/fg-root') ~ '/' ~ getprop('/sim/sound/path');
setprop('/tmp/sound-xml/path', sf);
}
var st = io.stat(sf);
var lm = getprop('/tmp/sound-xml/modified');
if(lm == nil)
{
lm = st[9];
setprop('/tmp/sound-xml/modified', lm);
}
elsif(lm < st[9])
{
setprop('/tmp/sound-xml/modified', st[9]);
fgcommand('reinit', props.Node.new({ subsystem: "fx" }));
}
settimer(reload_sound, 2);
}
reload_sound();