Accept tuple for format argument

This patch make `SoundFile` accept tuple of strings as argument, which enables users to assign format of another file to the new file directly.