Implementation of "bullet-proof rerecording" prevents this. For example, you should never load a savestate which is ahead of your current time.
If this happens, you may try to hex-edit the GBA Lag Reduction flag stored inside your desynced movie according to the VBM format description. VBA versions prior to v21 have a bug that may automatically disable the GBA Lag Reduction setting.(The timing of GBx games is mostly different in v20.) You may try recording with other versions instead. VBA v20 has some emulation problems with SGB games.If you don't need some advanced TAS features (such as Lua scripting), you should use SNES9x Rerecording 1.52. SNES9x 1.52 improved sound emulation logic overall, and the issue above has probably been fixed.Using the improved version, disabling sound emulation entirely or using Fake Mute mode may prevent it from happening. Some state saving/loading patterns during music changes might cause trouble as well. Games with timing to music or sound might desync. Snes9x 1.43/1.51 has trouble with sound.(The improved Snes9x can play and record movies in both Final and WIP timing.) Official version of Snes9x 1.43/1.51/1.52 has some desync issues.Wiimote recording is prone to frequent desyncs, and will fail to playback if you do not restart Dolphin each time you wish to start recording or playback of a movie.In general, these emulators have some desync issues.There are a number of causes of inconsistent savestates: