There are certain situations which would benefit from additional information contained in the movie header.
Movies recorded in WiiVC mode may not sync on N64 mode and vice-versa, so that flag should be present in the header.
Additionally, non-critical (not sync-relevant) metadata such as an authorship tag, a bruteforcer magic number, and an extended rerecord count.
Proposal
A new "extended" version byte should be introduced at 0x16, which determines the available extended format.
The byte at 0x17 contains a bitfield with only the first bit currently defined as the WiiVC flag.
Furthermore, 0x24 begins with a 4-byte authorship tag defining the movie's source (e.g.: MUPN for movies created in the emulator, STRP for those made by STROOP, and WAFL for wafel-bruteforced movies),
followed by a 4-byte bruteforce extra data field, and a 4-byte rerecord count, which is the upper word of the other legacy rr count.
Pros and Cons
Provides more information to powerusers
Prevents playback desyncs
Extended version number allows future changes to the m64 format within bounds of the unused segments
Needs thought about how external programs behave when they encounter a new version number or additional non-zero data in the unused fields
Rationale
There are certain situations which would benefit from additional information contained in the movie header.
Movies recorded in WiiVC mode may not sync on N64 mode and vice-versa, so that flag should be present in the header.
Additionally, non-critical (not sync-relevant) metadata such as an authorship tag, a bruteforcer magic number, and an extended rerecord count.
Proposal
A new "extended" version byte should be introduced at 0x16, which determines the available extended format.
The byte at 0x17 contains a bitfield with only the first bit currently defined as the WiiVC flag.
Furthermore, 0x24 begins with a 4-byte authorship tag defining the movie's source (e.g.: MUPN for movies created in the emulator, STRP for those made by STROOP, and WAFL for wafel-bruteforced movies), followed by a 4-byte bruteforce extra data field, and a 4-byte rerecord count, which is the upper word of the other legacy rr count.
Pros and Cons