it's not convenient for third party. sounds can be split into two categories: TDM sounds and FM sounds. as you see there is need to support more than one files. different events. look HL2 for example. time codes not so critical. must be support many files: [subtitles]x[language]x[FM]. in summary all my arguments are reduced to the DIP. we have a particular solution of particular problems (def, lang and so). i will write new parser but ideologically it is not good. http://en.wikipedia.org/wiki/Dependency_inversion_principle