The value of an existing frame on multiple files cannot be set via D-Bus.
Kid3 3.1.1, Linux, started with directory containing files without Composer frame.
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 nextFile
qdbus net.sourceforge.kid3 /Kid3 selectCurrentFile
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name1
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name2
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 getFrame 2 Composer
The result of the last command should be "Name2", however it is "Name1". The value is set in the frame table, but not in the tags of the files.
Workaround: Delete the frame before setting it
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 nextFile
qdbus net.sourceforge.kid3 /Kid3 selectCurrentFile
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name1
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer ""
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name2
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 getFrame 2 Composer
or set the value for each file, not for multiple files.
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 nextFile
qdbus net.sourceforge.kid3 /Kid3 selectCurrentFile
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name1
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name2
qdbus net.sourceforge.kid3 /Kid3 selectNextFile
qdbus net.sourceforge.kid3 /Kid3 setFrame 2 Composer Name2
qdbus net.sourceforge.kid3 /Kid3 selectFirstFile
qdbus net.sourceforge.kid3 /Kid3 getFrame 2 Composer
Imported from SourceForge, author: ufleisch