From fc634f2bc1ef52382807fa4f1d8e8ee8a160cb9e Mon Sep 17 00:00:00 2001 From: James Cameron Date: Thu, 23 Dec 2010 23:51:39 +0000 Subject: pep8 adjustments - excluded examples because we don't have consensus, - excluded physics since this is a copy of an upstream, - excluded query.py since this code does not currently work. Co-authored-by: Nitin Gupta Tested-by: James Cameron --- (limited to 'library') diff --git a/library/pippy/__init__.py b/library/pippy/__init__.py index 98d48d7..e5c88f1 100644 --- a/library/pippy/__init__.py +++ b/library/pippy/__init__.py @@ -1,4 +1,4 @@ -# Copyright (C) 2007,2008 One Laptop per Child Association, Inc. +# Copyright (C) 2007,2008,2010 One Laptop per Child Association, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,12 +17,12 @@ """Pippy standard library.""" import pippy.console as console import pippy.game as pygame -#import pippy.physics as physics try: import pippy.sound as sound except ImportError: - pass # this module fails to import on non-XOs. + pass # this module fails to import on non-XOs. + def wait(delay=0.1): """Pause briefly, for animations.""" diff --git a/library/pippy/console.py b/library/pippy/console.py index 7dbd73f..e36725f 100644 --- a/library/pippy/console.py +++ b/library/pippy/console.py @@ -1,5 +1,5 @@ """Console helpers for pippy.""" -# Copyright (C) 2007,2008 One Laptop per Child Association, Inc. +# Copyright (C) 2007,2008,2010 One Laptop per Child Association, Inc. # Written by C. Scott Ananian # # This program is free software; you can redistribute it and/or modify @@ -16,27 +16,34 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA import sys +import os +import tty +import termios + + def clear(): """Clear screen on console.""" # magic escape sequence sys.stdout.write('\x1B[H\x1B[J') + def size(): """Return the number of rows/columns in the current terminal widget.""" # xterm magic! see http://rtfm.etla.org/xterm/ctlseq.html - import os, tty, termios - fd = os.open('/dev/tty', os.O_RDWR|os.O_APPEND) + fd = os.open('/dev/tty', os.O_RDWR | os.O_APPEND) + def read_to_delimit(delimit): buf = [] while True: c = os.read(fd, 1) - if c==delimit: break + if c == delimit: + break buf.append(c) return ''.join(buf) - oldattr = termios.tcgetattr(fd) # make sure we can restore tty state - tty.setraw(fd, termios.TCSANOW) # set to raw mode. - os.write(fd, '\x1B[18t') # write the 'query screen size' command - read_to_delimit('\x1b') # parse response. + oldattr = termios.tcgetattr(fd) # make sure we can restore tty state + tty.setraw(fd, termios.TCSANOW) # set to raw mode. + os.write(fd, '\x1B[18t') # write the 'query screen size' command + read_to_delimit('\x1b') # parse response. read_to_delimit('[') size = read_to_delimit('t') # Output can be '8;rows;cols' or 'rows;cols' depending on vte version. @@ -48,34 +55,37 @@ def size(): else: rows = int(values[0]) cols = int(values[1]) - termios.tcsetattr(fd, termios.TCSANOW, oldattr) # reset tty + termios.tcsetattr(fd, termios.TCSANOW, oldattr) # reset tty return cols, rows + def getpos(): """Return the current x, y position of the cursor on the screen. The top-left corner is 1,1.""" # xterm magic! see http://rtfm.etla.org/xterm/ctlseq.html - sys.stdout.flush() # ensure that writes to the terminal have finished - import os, tty, termios - fd = os.open('/dev/tty', os.O_RDWR|os.O_APPEND) + sys.stdout.flush() # ensure that writes to the terminal have finished + fd = os.open('/dev/tty', os.O_RDWR | os.O_APPEND) + def read_to_delimit(delimit): buf = [] while True: c = os.read(fd, 1) - if c==delimit: break + if c == delimit: + break buf.append(c) return ''.join(buf) - oldattr = termios.tcgetattr(fd) # make sure we can restore tty state - tty.setraw(fd, termios.TCSANOW) # set to raw mode. - os.write(fd, '\x1B[6n') # Report Cursor Position - read_to_delimit('\x1b') # parse response. + oldattr = termios.tcgetattr(fd) # make sure we can restore tty state + tty.setraw(fd, termios.TCSANOW) # set to raw mode. + os.write(fd, '\x1B[6n') # Report Cursor Position + read_to_delimit('\x1b') # parse response. read_to_delimit('[') row = int(read_to_delimit(';')) col = int(read_to_delimit('R')) - termios.tcsetattr(fd, termios.TCSANOW, oldattr) # reset tty + termios.tcsetattr(fd, termios.TCSANOW, oldattr) # reset tty return col, row + def setpos(column, row): """Move to the given position on the screen. @@ -83,86 +93,105 @@ def setpos(column, row): # xterm magic! see http://rtfm.etla.org/xterm/ctlseq.html sys.stdout.write('\x1B[%d;%dH' % (row, column)) + def up(count=1): """Move the cursor up the given number of rows.""" sys.stdout.write('\x1B[%dA' % count) + def down(count=1): """Move the cursor down the given number of rows.""" sys.stdout.write('\x1B[%dB' % count) + def forward(count=1): """Move the cursor forward the given number of columns.""" sys.stdout.write('\x1B[%dC' % count) + def backward(count=1): """Move the cursor backward the given number of columns.""" sys.stdout.write('\x1B[%dD' % count) + def normal(): """Switch to normal text.""" sys.stdout.write('\x1B[0m') + def bold(): """Switch to bold text.""" sys.stdout.write('\x1B[1m') + def underlined(): """Switch to underlined text.""" sys.stdout.write('\x1B[4m') + def inverse(): """Switch to inverse text.""" sys.stdout.write('\x1B[7m') + def black(): """Change text color to black.""" # magic escape sequence. sys.stdout.write('\x1B[30m') + def red(): """Change text color to red.""" # magic escape sequence. sys.stdout.write('\x1B[31m') + def green(): """Change text color to green.""" # magic escape sequence. sys.stdout.write('\x1B[32m') + def yellow(): """Change text color to yellow.""" # magic escape sequence. sys.stdout.write('\x1B[33m') + def blue(): """Change text color to blue.""" # magic escape sequence. sys.stdout.write('\x1B[34m') + def magenta(): """Change text color to magenta.""" # magic escape sequence. sys.stdout.write('\x1B[35m') + def cyan(): """Change text color to cyan.""" # magic escape sequence. sys.stdout.write('\x1B[36m') + def white(): """Change text color to white.""" # magic escape sequence. sys.stdout.write('\x1B[37m') + def hide_cursor(): """Hide the cursor.""" sys.stdout.write('\x1B[?25l') + def show_cursor(): """Show the cursor.""" sys.stdout.write('\x1B[?25h') + def reset(): """Clear screen and reset text color.""" clear() diff --git a/library/pippy/game.py b/library/pippy/game.py index 09dcd74..f047a6f 100644 --- a/library/pippy/game.py +++ b/library/pippy/game.py @@ -16,6 +16,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + def pause(): """Display a "Paused" screen and suspend.""" from gettext import gettext as _ @@ -25,19 +26,19 @@ def pause(): old_screen = screen.copy() # save this for later. # dim the screen and display the 'paused' message in the center. - BLACK = (0,0,0) - WHITE = (255,255,255) + BLACK = (0, 0, 0) + WHITE = (255, 255, 255) dimmed = screen.copy() dimmed.set_alpha(128) screen.fill(BLACK) - screen.blit(dimmed, (0,0)) - font = pygame.font.Font(None, 36) # 36px high + screen.blit(dimmed, (0, 0)) + font = pygame.font.Font(None, 36) # 36px high msg = _("PAUSED") msg_surf = font.render(msg, True, BLACK, WHITE) + def center(rect, screen): - rect.center = (screen.get_width()/2, screen.get_height()/2) - - rect = pygame.Rect((0,0),msg_surf.get_size()) + rect.center = (screen.get_width() / 2, screen.get_height() / 2) + rect = pygame.Rect((0, 0), msg_surf.get_size()) rect.inflate_ip(rect.width, rect.height) center(rect, screen) screen.fill(WHITE, rect) @@ -48,17 +49,19 @@ def pause(): # SUSPEND try: - raise RuntimeError() # XXX don't try this yet. we should use ohm. - open('/sys/power/state','w').write('mem') - except: # couldn't suspend (no permissions?) + raise RuntimeError() # XXX don't try this yet. we should use ohm. + open('/sys/power/state', 'w').write('mem') + except: # couldn't suspend (no permissions?) pygame.event.post(pygame.event.wait()) pygame.display.set_caption(caption, icon_caption) - screen.blit(old_screen, (0,0)) + screen.blit(old_screen, (0, 0)) pygame.display.flip() -_last_event_time=0 -_default_clock=None +_last_event_time = 0 +_default_clock = None + + def next_frame(max_fps=20, idle_timeout=20, clock=None, pause=pause): """Limit maximum frame rate of pygame. Returns True. @@ -76,9 +79,8 @@ def next_frame(max_fps=20, idle_timeout=20, clock=None, pause=pause): if pygame.event.peek(xrange(pygame.NOEVENT, pygame.USEREVENT)): # we're not idle anymore. _last_event_time = pygame.time.get_ticks() - elif (pygame.time.get_ticks() - _last_event_time) >= idle_timeout*1000: + elif (pygame.time.get_ticks() - _last_event_time) >= idle_timeout * 1000: # we've been idle for a long time. Pause & suspend. pause() _last_event_time = pygame.time.get_ticks() - return True diff --git a/library/pippy/sound.py b/library/pippy/sound.py index d0c78b5..c5f864d 100755 --- a/library/pippy/sound.py +++ b/library/pippy/sound.py @@ -14,7 +14,6 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - import os import sys from gettext import gettext as _ @@ -29,18 +28,21 @@ fnum = [100] """XXX: This function seems to be broken. (CSA) def quit(self): perf.Stop() - perf.Join() + perf.Join() cs.Reset() - cs = None + cs = None """ + def finddir(): for d in dirs: if os.path.isdir(d): return d + def defAdsr(attack=0.01, decay=0.1, sustain=0.8, release=0.1): - """Define an ADSR envelope. fnum = defADSR(attack = [0.01], decay = [0.1], sustain = [0.8], release = [0.1])""" + """ Define an ADSR envelope. fnum = defADSR(attack = [0.01], + decay = [0.1], sustain = [0.8], release = [0.1]) """ att = int(2048 * attack) dec = int(2048 * decay) rel = int(2048 * release) @@ -48,11 +50,15 @@ def defAdsr(attack=0.01, decay=0.1, sustain=0.8, release=0.1): sus = min(1., sustain) fnum[0] += 1 - scorelines.append("f%ld 0 2048 7 0 %ld 1. %ld %f %ld %f %ld 0\n" % (fnum[0], att, dec, sus, bal, sus, rel)) + scorelines.append("f%ld 0 2048 7 0 %ld 1. %ld %f %ld %f %ld 0\n" % + (fnum[0], att, dec, sus, bal, sus, rel)) return fnum[0] -def defLineSegments(list=[0,10,1,10,0,10,1,10,0]): - """Define a breakpoints envelope. list=[0,10,1,10,0,10,1,10,0]. list begin with the start value of the function and is follow by any pair values (duration, value). The number of elements in the list should odd.""" + +def defLineSegments(list=[0, 10, 1, 10, 0, 10, 1, 10, 0]): + """ Define a breakpoints envelope. list begin with the start + value of the function and is follow by any pair values (duration, + value). The number of elements in the list should be odd. """ totalLength = 0 newlist = [] @@ -61,44 +67,79 @@ def defLineSegments(list=[0,10,1,10,0,10,1,10,0]): totalLength += list[i] for i in range(len(list)): - if (i % 2) == 0: newlist.append(list[i]) - else: newlist.append(int(2048 * (list[i] / float(totalLength)))) + if (i % 2) == 0: + newlist.append(list[i]) + else: + newlist.append(int(2048 * (list[i] / float(totalLength)))) fnum[0] += 1 - scorelines.append("f" + str(fnum[0]) + " 0 2048 -7 " + " ".join([str(n) for n in newlist]) + '\n') + scorelines.append("f" + str(fnum[0]) + " 0 2048 -7 " + + " ".join([str(n) for n in newlist]) + '\n') return fnum[0] -def defComplexWave(list=[1,0,0,.3,0,.2,0,0,.1]): - """Define a complex waveform to be read with 'playComplex' function. list=[1,0,0,.3,0,.2,0,0,.1] -is a list of amplitude for succesive harmonics of a waveform""" + +def defComplexWave(list=[1, 0, 0, .3, 0, .2, 0, 0, .1]): + """ Define a complex waveform to be read with 'playComplex' + function. list=[1, 0, 0, .3, 0, .2, 0, 0, .1] is a list of + amplitude for succesive harmonics of a waveform """ fnum[0] += 1 - scorelines.append("f" + str(fnum[0]) + " 0 2048 10 " + " ".join([str(n) for n in list]) + '\n') + scorelines.append("f" + str(fnum[0]) + " 0 2048 10 " + + " ".join([str(n) for n in list]) + '\n') return fnum[0] -def playSine( pitch=1000, amplitude=5000, duration=1, starttime=0, pitch_envelope='default', amplitude_envelope='default'): - """Play a sine wave (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], pitch_envelope=['default'], amplitude_envelope=['default'])""" - _play(pitch, amplitude, duration, starttime, pitch_envelope, amplitude_envelope, 1) - -def playSquare( pitch=1000, amplitude=5000, duration=1, starttime=0, pitch_envelope='default', amplitude_envelope='default'): - """Play a square wave (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], pitch_envelope=['default'], amplitude_envelope=['default'])""" - _play(pitch, amplitude, duration, starttime, pitch_envelope, amplitude_envelope, 2) -def playSawtooth( pitch=1000, amplitude=5000, duration=1, starttime=0, pitch_envelope='default', amplitude_envelope='default'): - """Play a sawtooth wave (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], pitch_envelope=['default'], amplitude_envelope=['default'])""" - _play(pitch, amplitude, duration, starttime, pitch_envelope, amplitude_envelope, 3) +def playSine(pitch=1000, amplitude=5000, duration=1, starttime=0, + pitch_envelope='default', amplitude_envelope='default'): + """ Play a sine wave + (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], + pitch_envelope=['default'], amplitude_envelope=['default']) """ + _play(pitch, amplitude, duration, starttime, pitch_envelope, + amplitude_envelope, 1) + + +def playSquare(pitch=1000, amplitude=5000, duration=1, starttime=0, + pitch_envelope='default', amplitude_envelope='default'): + """ Play a square wave + (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], + pitch_envelope=['default'], amplitude_envelope=['default']) """ + _play(pitch, amplitude, duration, starttime, pitch_envelope, + amplitude_envelope, 2) + + +def playSawtooth(pitch=1000, amplitude=5000, duration=1, starttime=0, + pitch_envelope='default', amplitude_envelope='default'): + """ Play a sawtooth wave (pitch = [1000], amplitude = [5000], + duration = [1], starttime = [0], pitch_envelope=['default'], + amplitude_envelope=['default']) """ + _play(pitch, amplitude, duration, starttime, pitch_envelope, + amplitude_envelope, 3) + + +def playComplex(pitch=1000, amplitude=5000, duration=1, starttime=0, + pitch_envelope='default', amplitude_envelope='default', + wave='default'): + """ Play a complex wave + (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], + pitch_envelope = ['default'], amplitude_envelope, wave = ['default'] ) """ + if wave == 'default': + wavetable = 10 + else: + wavetable = wave + _play(pitch, amplitude, duration, starttime, pitch_envelope, + amplitude_envelope, wavetable) -def playComplex( pitch=1000, amplitude=5000, duration=1, starttime=0, pitch_envelope='default', amplitude_envelope='default', wave='default'): - """Play a complex wave (pitch = [1000], amplitude = [5000], duration = [1], starttime = [0], pitch_envelope = ['default'], amplitude_envelope, wave = ['default'] )""" - if wave == 'default': wavetable = 10 - else: wavetable = wave - _play(pitch, amplitude, duration, starttime, pitch_envelope, amplitude_envelope, wavetable) -def _play( pitch, amplitude, duration, starttime, pitch_envelope, amplitude_envelope, instrument): - if pitch_envelope == 'default': pitenv = 99 - else: pitenv = pitch_envelope +def _play(pitch, amplitude, duration, starttime, pitch_envelope, + amplitude_envelope, instrument): + if pitch_envelope == 'default': + pitenv = 99 + else: + pitenv = pitch_envelope - if amplitude_envelope == 'default': ampenv = 100 - else: ampenv = amplitude_envelope + if amplitude_envelope == 'default': + ampenv = 100 + else: + ampenv = amplitude_envelope if not 1 in instrlist: orchlines.append("instr 1\n") @@ -109,27 +150,54 @@ def _play( pitch, amplitude, duration, starttime, pitch_envelope, amplitude_enve orchlines.append("endin\n\n") instrlist.append(1) - scorelines.append("i1 %s %s %s %s %s %s %s\n" % (str(starttime), str(duration), str(pitch), str(amplitude), str(pitenv), str(ampenv), str(instrument))) - -def playFrequencyModulation( pitch=500, amplitude=5000, duration=2, starttime=0, carrier=1, modulator=.5, index=5, pitch_envelope='default', amplitude_envelope='default', carrier_envelope='default', modulator_envelope='default', index_envelope='default', wave='default'): - """Play a frequency modulation synthesis sound (pitch = [100], amplitude = [5000], duration = [2], starttime = [0], carrier = [1], modulator = [.5], index = [5], pitch_envelope = ['default'], amplitude_envelope = ['default'], carrier_envelope = ['default'], modulator_envelope = ['default'], index_envelope = ['default'], wave = ['default'] )""" - if pitch_envelope == 'default': pitenv = 99 - else: pitenv = pitch_envelope + scorelines.append("i1 %s %s %s %s %s %s %s\n" % + (str(starttime), str(duration), str(pitch), + str(amplitude), str(pitenv), str(ampenv), + str(instrument))) + + +def playFrequencyModulation(pitch=500, amplitude=5000, duration=2, starttime=0, + carrier=1, modulator=.5, index=5, + pitch_envelope='default', + amplitude_envelope='default', + carrier_envelope='default', + modulator_envelope='default', + index_envelope='default', wave='default'): + """ Play a frequency modulation synthesis sound (pitch = [100], + amplitude = [5000], duration = [2], starttime = [0], carrier = + [1], modulator = [.5], index = [5], pitch_envelope = ['default'], + amplitude_envelope = ['default'], carrier_envelope = ['default'], + modulator_envelope = ['default'], index_envelope = ['default'], + wave = ['default'] ) """ + if pitch_envelope == 'default': + pitenv = 99 + else: + pitenv = pitch_envelope - if amplitude_envelope == 'default': ampenv = 100 - else: ampenv = amplitude_envelope + if amplitude_envelope == 'default': + ampenv = 100 + else: + ampenv = amplitude_envelope - if carrier_envelope == 'default': carenv = 99 - else: carenv = carrier_envelope + if carrier_envelope == 'default': + carenv = 99 + else: + carenv = carrier_envelope - if modulator_envelope == 'default': modenv = 99 - else: modenv = modulator_envelope + if modulator_envelope == 'default': + modenv = 99 + else: + modenv = modulator_envelope - if index_envelope == 'default': indenv = 99 - else: indenv = index_envelope + if index_envelope == 'default': + indenv = 99 + else: + indenv = index_envelope - if wave == 'default': wavetable = 1 - else: wavetable = wave + if wave == 'default': + wavetable = 1 + else: + wavetable = wave if not 7 in instrlist: orchlines.append("instr 7\n") @@ -138,20 +206,33 @@ def playFrequencyModulation( pitch=500, amplitude=5000, duration=2, starttime=0, orchlines.append("kcarenv oscil 1, 1/p3, p12\n") orchlines.append("kmodenv oscil 1, 1/p3, p13\n") orchlines.append("kindenv oscil 1, 1/p3, p14\n") - orchlines.append("asig foscil p5*kenv, p4*kpitenv, p6*kcarenv, p7*kmodenv, p8*kindenv, p9\n") + orchlines.append("asig foscil p5*kenv, p4*kpitenv, p6*kcarenv, " + "p7*kmodenv, p8*kindenv, p9\n") orchlines.append("out asig\n") orchlines.append("endin\n\n") instrlist.append(7) - scorelines.append("i7 %s %s %s %s %s %s %s %s %s %s %s %s %s\n" % (str(starttime), str(duration), str(pitch), str(amplitude), str(carrier), str(modulator), str(index), str(wavetable), str(pitenv), str(ampenv), str(carenv), str(modenv), str(indenv))) + scorelines.append("i7 %s %s %s %s %s %s %s %s %s %s %s %s %s\n" % + (str(starttime), str(duration), str(pitch), + str(amplitude), str(carrier), str(modulator), + str(index), str(wavetable), str(pitenv), str(ampenv), + str(carenv), str(modenv), str(indenv))) -def playPluck( pitch=100, amplitude=5000, duration=2, starttime=0, pitch_envelope='default', amplitude_envelope='default'): - """Play a string physical modeling sound (pitch = [100], amplitude = [5000], duration = [2], starttime = [0], pitch_envelope = ['default'], amplitude_envelope )""" - if pitch_envelope == 'default': pitenv = 99 - else: pitenv = pitch_envelope - if amplitude_envelope == 'default': ampenv = 100 - else: ampenv = amplitude_envelope +def playPluck(pitch=100, amplitude=5000, duration=2, starttime=0, + pitch_envelope='default', amplitude_envelope='default'): + """ Play a string physical modeling sound (pitch = [100], + amplitude = [5000], duration = [2], starttime = [0], + pitch_envelope = ['default'], amplitude_envelope ) """ + if pitch_envelope == 'default': + pitenv = 99 + else: + pitenv = pitch_envelope + + if amplitude_envelope == 'default': + ampenv = 100 + else: + ampenv = amplitude_envelope if not 8 in instrlist: orchlines.append("instr 8\n") @@ -163,35 +244,51 @@ def playPluck( pitch=100, amplitude=5000, duration=2, starttime=0, pitch_envelop orchlines.append("endin\n\n") instrlist.append(8) - scorelines.append("i8 %s %s %s %s %s %s\n" % (str(starttime), str(duration), str(pitch), str(amplitude), str(pitenv), str(ampenv))) + scorelines.append("i8 %s %s %s %s %s %s\n" % + (str(starttime), str(duration), str(pitch), + str(amplitude), str(pitenv), str(ampenv))) + -def playWave(sound='horse', pitch=1, amplitude=1, loop=False, duration=1, starttime=0, pitch_envelope='default', amplitude_envelope='default'): - """Play a wave file (sound = ['horse'], pitch = [1], amplitude = [1], loop = [False], duration = [1], starttime = [0], pitch_envelope=['default'], amplitude_envelope=['default'])""" +def playWave(sound='horse', pitch=1, amplitude=1, loop=False, duration=1, + starttime=0, pitch_envelope='default', + amplitude_envelope='default'): + """ Play a wave file (sound = ['horse'], pitch = [1], amplitude = + [1], loop = [False], duration = [1], starttime = [0], + pitch_envelope=['default'], amplitude_envelope=['default']) """ if '/' in sound: fullname = sound else: fullname = finddir() + str(sound) - if loop == False: lp = 0 - else: lp = 1 + if loop == False: + lp = 0 + else: + lp = 1 - if pitch_envelope == 'default': pitenv = 99 - else: pitenv = pitch_envelope + if pitch_envelope == 'default': + pitenv = 99 + else: + pitenv = pitch_envelope - if amplitude_envelope == 'default': ampenv = 100 - else: ampenv = amplitude_envelope + if amplitude_envelope == 'default': + ampenv = 100 + else: + ampenv = amplitude_envelope if not 9 in instrlist: - orchlines.append("instr 9\n") + orchlines.append("instr 9\n") orchlines.append("kpitenv oscil 1, 1/p3, p8\n") orchlines.append("aenv oscil 1, 1/p3, p9\n") - orchlines.append("asig diskin p4, p5*kpitenv, 0, p7\n") + orchlines.append("asig diskin p4, p5*kpitenv, 0, p7\n") orchlines.append("out asig*p6*aenv\n") orchlines.append("endin\n\n") instrlist.append(9) - scorelines.append('i9 %f %f "%s" %s %s %s %s %s\n' % (float(starttime), float(duration), fullname, str(pitch), str(amplitude), str(lp), str(pitenv), str(ampenv))) - + scorelines.append('i9 %f %f "%s" %s %s %s %s %s\n' % + (float(starttime), float(duration), fullname, str(pitch), + str(amplitude), str(lp), str(pitenv), str(ampenv))) + + def getSoundList(): list = finddir() if list == None: @@ -199,14 +296,16 @@ def getSoundList(): sys.exit(0) return sorted(os.listdir(list)) -temp_path=None +temp_path = None + + def audioOut(file=None): - """Compile a .csd file and start csound to run it. If a string is given as argument, it write a wave file on disk instead of sending sound to hp. (file = [None])""" + """ Compile a .csd file and start csound to run it. If a string is + given as argument, it write a wave file on disk instead of sending + sound to hp. (file = [None]) """ global temp_path - import os if temp_path is None: from sugar import env - import os.path temp_path = env.get_profile_path() + '/pippy' if not os.path.isdir(temp_path): os.mkdir(temp_path) @@ -240,5 +339,5 @@ def audioOut(file=None): csd.write("\n\n") csd.write("\n") csd.close() - + os.system('csound ' + path + '/temp.csd >/dev/null 2>/dev/null') -- cgit v0.9.1