fout.write (self.fileitem.value)
fout.close()
self.attempt_rpgain ()
- return self.filename
+ return { 'file': self.filename }
class Youtube:
upload_dir = '/srv/archive/incoming/youtube-moosic'
ydl_opts = {
'format': 'bestaudio/best',
- 'outtmpl': upload_dir + '/%(id)s.%(ext)s',
+ 'outtmpl': upload_dir + '/%(title)s-%(id)s.%(ext)s',
'quiet': True,
'postprocessors': [
{
def save (self):
info = self.ydl.extract_info (self.url, download=True)
- filename = '{}/{}.ogg'.format (self.upload_dir, info['display_id'])
+ filename = re.sub ('\..{3,4}$', '.ogg', self.ydl.prepare_filename (info))
subprocess.call (["/usr/bin/vorbisgain", "-q", filename])
- return filename
+ return { 'file': filename }
def css ():
print (doc.getvalue ())
elif 'uploadgo' in form:
upload = Upload (form, 'song')
- filename = upload.save ()
- self.randomqueue ({"file": filename}, 1 if 'asap' not in form else 3)
+ item = upload.save ()
+ self.randomqueue (item, 1 if 'asap' not in form else 3)
elif 'youtubego' in form:
youtube = Youtube (form, 'youtubeurl')
- filename = youtube.save ()
- self.randomqueue ({"file": filename}, 1 if 'asap' not in form else 3)
+ item = youtube.save ()
+ self.randomqueue (item, 1 if 'asap' not in form else 3)
elif 'partyon' in form:
if 'error' in xbmc.Player.SetPartymode (partymode=True, playerid=0):
xbmc.Player.Open (item={"partymode": "music"})