def loadPlayer(state): import ffmpeg player = ffmpeg.createPlayer() for e in [m for m in dir(PlayerEventCallbacks) if not m.startswith("_")]: cb = EventCallback(targetQueue=state.updates, name=e) setattr(PlayerEventCallbacks, e, cb) setattr(player, e, cb) player.queue = state.queue return player
def loadPlayer(state): import ffmpeg player = ffmpeg.createPlayer() for e in [m for m in dir(PlayerEventCallbacks) if not m.startswith("_")]: cb = EventCallback(targetQueue=state.updates, name=e) if e == "onSongChange": cb.extraCall = onSongChange setattr(PlayerEventCallbacks, e, cb) setattr(player, e, cb) player.queue = songs(state) return player
def loadPlayer(state): import ffmpeg player = ffmpeg.createPlayer() player.outSamplerate = 48000 # higher quality! :) for e in [m for m in dir(PlayerEventCallbacks) if not m.startswith("_")]: cb = getattr(PlayerEventCallbacks, e) assert cb setattr(player, e, cb) player.queue = songsQueue(state) player.peekQueue = songsPeekQueue() player.volume = state.volume return player
def loadPlayer(state): import ffmpeg player = ffmpeg.createPlayer() player.outSamplerate = 48000 # higher quality! :) for e in [m for m in dir(PlayerEventCallbacks) if not m.startswith("_")]: cb = EventCallback(targetQueue=state.updates, name=e) if e == "onSongChange": cb.extraCall = onSongChange setattr(PlayerEventCallbacks, e, cb) setattr(player, e, cb) player.queue = songsQueue(state) player.peekQueue = songsPeekQueue() player.volume = state.volume return player
def loadPlayer(state): import ffmpeg from appinfo import args import utils if args.debug and utils.isMainProcess: ffmpeg.enableDebugLog(True) player = ffmpeg.createPlayer() player.outSamplerate = 48000 # higher quality! :) for e in [m for m in dir(PlayerEventCallbacks) if not m.startswith("_")]: cb = getattr(PlayerEventCallbacks, e) assert cb setattr(player, e, cb) player.queue = songsQueue(state) player.peekQueue = songsPeekQueue() player.volume = state.volume player.startWorkerThread() return player
i = 0 def songs(): global i, files while True: yield Song(files[i]) i += 1 if i >= len(files): i = 0 def peekSongs(n): return map(Song, files[i:]) player = ffmpeg.createPlayer() player.outSamplerate = 48000 player.queue = songs() player.peekQueue = peekSongs player.playing = True def formatTime(t): if t is None: return "?" mins = long(t // 60) t -= mins * 60 hours = mins // 60 mins -= hours * 60 if hours: return "%02i:%02i:%02.0f" % (hours, mins, t) return "%02i:%02.0f" % (mins, t)
"~/Music/Rock/Tool/Lateralus/09 Lateralus.flac", "~/Music/Cults - Cults 7/Cults - Cults 7- - 03 The Curse.flac", "~/Music/Special/zorba/(01) - Theme From Zorba The Greek.ogg", "~/Music/Classic/Glenn Gould Plays Bach/French Suites, BWV812-7 - Gould/Bach, French Suite 5 in G, BWV816 - 5 Bourree.mp3", "~/Music/Electronic/Von Paul Kalkbrenner - Aaron.mp3", "~/Music/Electronic/One Day_Reckoning Song (Wankelmut Remix) - Asaf Avidan & the Mojos.mp3", ] import os files = map(os.path.expanduser, files) i = 0 while True: yield Song(files[i]) i += 1 if i >= len(files): i = 0 player = ffmpeg.createPlayer() player.queue = songs() player.playing = True def formatTime(t): if t is None: return "?" mins = long(t // 60) t -= mins * 60 hours = mins // 60 mins -= hours * 60 if hours: return "%02i:%02i:%02.0f" % (hours,mins,t) return "%02i:%02.0f" % (mins,t) import os,sys,termios def prepareStdin():
rootdir=os.path.expanduser("~/Music"), fileexts=["mp3", "ogg", "flac", "wma"]) return [fileQueue.getNextFile() for i in xrange(n)] N = 10 files = getFileList(N) from pprint import pprint pprint(files) import ffmpeg print "imported" step() for i in xrange(N): ffmpeg.createPlayer() print "after createPlayer" step() class Song: def __init__(self, fn): self.url = fn self.f = open(fn) def readPacket(self, bufSize): s = self.f.read(bufSize) return s def seekRaw(self, offset, whence): r = self.f.seek(offset, whence) return self.f.tell()
return [fileQueue.getNextFile() for i in xrange(n)] N = 10 files = getFileList(N) from pprint import pprint pprint(files) import ffmpeg print "imported" step() for i in xrange(N): ffmpeg.createPlayer() print "after createPlayer" step() class Song: def __init__(self, fn): self.url = fn self.f = open(fn) def readPacket(self, bufSize): s = self.f.read(bufSize) return s def seekRaw(self, offset, whence):