Starting and stopping a background process
Paul Hampton
phampton at eso.org
Thu Jul 3 05:58:51 EDT 2003
Hi all
I'm new to python so please be gentle :)
I'm trying to write a module for my media playing PC which will record
input directly from the soundcard using LAME. At the moment I can get it
started ok and am about to try and work out the best way to stop the
process (which is threaded). I could get the process id of LAME and just
kill it, but I think this is a bit messy. Can anyone give me any
suggestions on how to make this script determine if lame is already
running and then stop it if it is, if not then start it? The following
code is run when a certain key is pressed:
class main_recording_thread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
def run(self):
self.recording_threaded()
def recording_threaded(self):
popup_string="Recording Audio Stream"
pop = PopupBox(text=popup_string)
pop.show()
time.sleep(4)
pop.destroy()
print "Recording"
time.sleep(20)
recording=1
os.system("sox -t ossdsp -w -s -r 44100 -c 2 /dev/dsp -t raw -
| /usr/local/freevo/runtime/apps/lame -x -m s - ./test.mp3")
popup_string="Audio Recording Stopped"
pop = PopupBox(text=popup_string)
pop.show()
time.sleep(4)
pop.destroy()
print "Recording Stopped"
recording=0
return []
I expect my coding is really bad as it is my second attempt ever at python.
So, what would be the best way to do this start/stop thing?
Thanks in advance
Paul
More information about the Python-list
mailing list