mutagen/easymp4.py
def RegisterFreeformKey(cls, key, name, mean=b"com.apple.iTunes"):
        """Register a text key.

        If the key you need to register is a simple one-to-one mapping
        of MP4 freeform atom (----) and name to EasyMP4Tags key, then
        you can use this function::

            EasyMP4Tags.RegisterFreeformKey(
                "musicbrainz_artistid", b"MusicBrainz Artist Id")
        """
        atomid = b"----:" + mean + b":" + name

        def getter(tags, key):
            return [s.decode("utf-8", "replace") for s in tags[atomid]]

        def setter(tags, key, value):
            tags[atomid] = [utf8(v) for v in value]

        def deleter(tags, key):
            del(tags[atomid])

        cls.RegisterKey(key, getter, setter, deleter)
def RegisterFreeformKey(cls, key, name, mean=b"com.apple.iTunes"):
        atomid = b"----:" + mean + b":" + name

        def getter(tags, key):
            return [s.decode("utf-8", "replace") for s in tags[atomid]]

        def setter(tags, key, value):
            tags[atomid] = [utf8(v) for v in value]

        def deleter(tags, key):
            del(tags[atomid])

        cls.RegisterKey(key, getter, setter, deleter)
def RegisterFreeformKey ( cls , key , name , mean = b"com.apple.iTunes" ) : atomid = b"----:" + mean + b":" + name def getter ( tags , key ) : return [ s . decode ( "utf-8" , "replace" ) for s in tags [ atomid ] ] def setter ( tags , key , value ) : tags [ atomid ] = [ utf8 ( v ) for v in value ] def deleter ( tags , key ) : del ( tags [ atomid ] ) cls . RegisterKey ( key , getter , setter , deleter )
Register a text key.

        If the key you need to register is a simple one-to-one mapping
        of MP4 freeform atom (----) and name to EasyMP4Tags key, then
        you can use this function::

            EasyMP4Tags.RegisterFreeformKey(
                "musicbrainz_artistid", b"MusicBrainz Artist Id")
Register a text key .