Corner Cases

Sonice makes some assumptions about the types of tags that you place on your albums, and may behave oddly if you do certain things. There are two known categories of undefined inputs:

Singleton tags

Sonice assumes that the following tags are singletons (if they’re defined, there’s only one of them):

version
The code that determines filenames assumes that there’s only one version tag, and might produce odd filenames.
part
See comment for version.
title
Since title usually determines the name of the file that’s generated, odd things might happen if there are multiple values of that tag.

Odd Characters

Sonice can do strange things if odd characters are in the input files. Here are some characters to watch:

newlines, tab characters
Newlines and tab characters are worth avoiding in tags that get used as part of the filename, like title, version, and part.
double quotes (")
Sonice uses these to escape the shell for filenames. If any tags with quotes in the name are used in the filename, sonice might confuse oggenc and break horribly.
As a side note, also be on the lookout for things like ‘6" Remix’ that would also break quotes.
Characters that are invalid filenames in Windows
The following characters can’t be in Windows filenames:
/ \ : * ? " > < |
However, if you don’t run Windows, don’t worry about this restriction (except for ", as noted above).
Anything that isn’t part of 7-bit ASCII
Any character that isn’t part of the ASCII 7-bit character set might come out (or go in) incorrectly. Culprits include:
  • Your shell
  • Python’s unicode handling
  • The Pure Python Parser for YAML’s unicode handling, or lack thereof
  • oggenc’s ability to handle unicode in the command line

Note that these warnings shouldn’t discourage the use of extended characters, but do be aware of settings that might affect their displayability.