Currently, it is possible to embed neither a savestate nor SRAM into a GMV file; but there are plans for both for GM2. So whichever is chosen makes no difference, and a separate file is required in either case -- either a savestate anchor or a compatible SRAM.
I decided to make the movie depend on a savestate instead of SRAM because:
- GMVs do not have a flag for SRAM dependency. This means that Gens neither knows nor cares about the SRAM dependency of the movie, and will not ask for the SRAM file.
- 'Clear SRAM' is checked by default. Thus, supplying the SRAM does not guarantee that the movie will synch when playing because it is very easy to forget to uncheck it. And because any other S3&K movie you play will overwrite SRAM.
- Gens will refuse to play the movie if you don't supply the savestate, giving an error message. This already gives feedback to the user that he is forgetting something.
For these reasons, the natural choice until GM2 is a savestate dependency, using the procedure I developed to guarantee that starting from the savestate anchor is equivalent to starting from the "dirty" SRAM.
An alternative would be to make custom version of Gens that uses a derived GMV format that allows embedding of SRAM or savestate. This would break Microstorage, the TASVideos site
and the TAS Editor (unless the change is 'approved', and the required code changes are implemented) and would require shipping the custom emulator. In all cases, another file is required to play the movie.