- length,title=line.split('#EXTINF:')[1].split(',',1)
- song=track(length,title,None)
+ prefix,title=line.split('#EXTINF:')[1].split(',',1)
+ title=title.strip()
+ length,attrstr=prefix.split(' ',1)
+ attrs={}
+
+ while attrstr:
+
+ attrstr=attrstr.strip()
+ key,tail=attrstr.split('=',1)
+ if tail[0]=='\"':
+ tail=tail[1:]
+ value,attrstr=tail.split('"',1)
+ else:
+ try:
+ value,attrstr=tail.split(' ',1)
+ except ValueError:
+ value=tail
+ attrstr=''
+ attrstr=attrstr.strip()
+ attrs[key]=value
+
+ title=title.decode('string_escape')
+ song=track(length,title,None,attrs)