I request, mp3tag to let assign the "padding size" under settings.
Retain existing padding after new field added or existing pad removed. Meaning, final file size must not expand or contract with changes in tag.
If the padding is not sufficient for the new field, then it must add value (a large value) given in the setting.
This way, files are not re-written only the small bytes are made in the songs.
I have a large collection of songs. mp3tag crashes all the time.
I have started to mutagen in python. They have this feature.
from mutagen.mp3 import MP3
if info.padding < 0: # in case there is no padding left after write add lots
return 50000 # bytes
else: # if there is some left, just use it
This way the music files have sufficient breathing space to add and remove tags after the first save.