taken from a public git repo and made some minor changes to remove errors. Note: requires lame and id3-py and faad