Mercurial > code > home > repos > light9
view bin/ascoltami2 @ 929:c20c2eea6fce
another hack to stop graphfile from thinking its own new empty file means it should delete all the statements in that context
Ignore-this: 94639afbbe8d3a0abd8a06e16922394f
author | Drew Perttula <drewp@bigasterisk.com> |
---|---|
date | Tue, 11 Jun 2013 20:25:02 +0000 |
parents | cca75951554a |
children | c2faa69099e6 |
line wrap: on
line source
#!bin/python from run_local import log from twisted.internet import gireactor, reactor import web, thread, sys, optparse, logging from rdflib import URIRef sys.path.append(".") from light9.ascoltami.player import Player from light9.ascoltami.playlist import Playlist, NoSuchSong from light9.ascoltami.webapp import makeWebApp, songUri, songLocation from light9 import networking, showconfig import gi gi.require_version('Gst', '1.0') from gi.repository import GObject, Gst, Gtk class App(object): def __init__(self, graph, show): self.graph = graph self.player = Player(onEOS=self.onEOS) self.show = show self.playlist = Playlist.fromShow(graph, show) def onEOS(self, song): self.player.pause() self.player.seek(0) thisSongUri = songUri(graph, URIRef(song)) try: nextSong = self.playlist.nextSong(thisSongUri) except NoSuchSong: # we're at the end of the playlist return self.player.setSong(songLocation(graph, nextSong), play=False) if __name__ == "__main__": GObject.threads_init() Gst.init(None) parser = optparse.OptionParser() parser.add_option('--show', help='show URI, like http://light9.bigasterisk.com/show/dance2008', default=showconfig.showUri()) parser.add_option("-v", "--verbose", action="store_true", help="logging.DEBUG") (options, args) = parser.parse_args() log.setLevel(logging.DEBUG if options.verbose else logging.INFO) if not options.show: raise ValueError("missing --show http://...") graph = showconfig.getGraph() app = App(graph, URIRef(options.show)) reactor.listenTCP(networking.musicPlayer.port, makeWebApp(app)) log.info("listening on %s" % networking.musicPlayer.port) reactor.run()