new_contents: #!/usr/bin/env python
  # -*- coding: utf-8 -*-
   
  # needs mutagen
  # grabbed from: http://code.activestate.com/recipes/577138-embed-lyrics-into-mp3-files-using-mutagen-uslt-tag/
  # simplified to only work on one file and get lyrics from stdin
  
  import os
  import sys
  import codecs
  from mutagen.mp3 import MP3
  from mutagen.id3 import ID3NoHeaderError
  from mutagen.id3 import ID3, USLT
  
  TEXT_ENCODING = 'utf8'
  TEXT_LANG = 'XXX'
  TEXT_DESC = ''
  
  # get workdir from first arg or use current dir 
  if (len(sys.argv) > 1):
  	fname = sys.argv[1]
  	print "fname=" + fname
  else:
  	print 'Give me at least a file name to work on, plus the lyrics from stdin'
  	print 'Optionally, you can provide the language (3 lowercase letters) of the lyrics and a description'
  	sys.exit()
  
  if (len(sys.argv) > 2):
  	TEXT_LANG = sys.argv[2]
  
  if (len(sys.argv) > 3):
  	TEXT_DESC = sys.argv[3]
  
  print "reading lyrics from standard input ..."
  
  lyrics = sys.stdin.read().strip()
  
  # try to find the right encoding
  for enc in ('utf8','iso-8859-1','iso-8859-15','cp1252','cp1251','latin1'):
  	try:
  		lyrics = lyrics.decode(enc)
  		TEXT_DESC = TEXT_DESC.decode(enc)
  		print enc,
  		break
  	except:
  		pass
  
  print "Adding lyrics to " + fname
  print "Language: " + TEXT_LANG
  print "Description: " + TEXT_DESC
  
  # create ID3 tag if not exists
  try: 
  	tags = ID3(fname)
  except ID3NoHeaderError:
  	print "Adding ID3 header;",
  	tags = ID3()
  
  # remove old unsychronized lyrics
  if len(tags.getall(u"USLT::'"+TEXT_LANG+"'")) != 0:
  	print "Removing Lyrics."
  	tags.delall(u"USLT::'"+TEXT_LANG+"'")
  	#tags.save(fname) # hm, why?
  
  #tags.add(USLT(encoding=3, lang=u'eng', desc=u'desc', text=lyrics))
  # apparently the description is important when more than one 
  # USLT frames are present
  #tags[u"USLT::'eng'"] = (USLT(encoding=3, lang=u'eng', desc=u'desc', text=lyrics))
  tags[u"USLT::'"+TEXT_LANG+"'"] = (USLT(encoding=3, lang=TEXT_LANG, desc=TEXT_DESC, text=lyrics))
  print 'Added USLT frame to', fname
  
  tags.save(fname)
  
  print 'Done'
  
  
subject: Add a little script to create test files with lyrics.