By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
440,675 Members | 2,255 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 440,675 IT Pros & Developers. It's quick & easy.

Confusion with os.popen os.spawnl and dvbstream

P: n/a
Hi everyone,

Appologies if this is the wrong forum for this post.

I am a little confused by the code below and any help would be much

import os,signal,time,sys

class Tzap:
tzap_exe = '/usr/local/bin/tzap'

def __init__(self, channel_string): = channel_string

def SetChannel(self):
print "Tzap.SetChannel()"
self.channelpid = os.spawnlp(os.P_NOWAIT, self.tzap_exe,
os.kill(self.channelpid, signal.SIGKILL)
print "End Tzap.SetChannel()"

class Record:
dvbstream_exe = '/usr/local/bin/dvbstream'

def __init__(self, minutes_to_record):
self.duration = minutes_to_record

def Record(self):
commandline = ' -ps 600 601 -o > /Media/Movies/BBC.mpg'
print self.dvbstream_exe, commandline

# These are the confusing lines....

#self.dvbstream_pid = os.popen3(self.dvbstream_exe +
self.dvbstream_pid = os.spawnl(os.P_NOWAIT,
self.dvbstream_exe, self.dvbstream_exe, commandline)

time.sleep(self.duration * 60)

os.kill(self.dvbstream_pid, signal.SIGKILL)
print "start tzap"
tzap = Tzap('BBC ONE')
print "stop tzap"
print "start record"
recorder = Record(1)

using the popen3 function I get an mpg stream recording in BBC.mpg but
using spawnl I get the following

/usr/local/bin/dvbstream -ps 600 601 -o > /Media/Movies/BBC.mpg
dvbstream v0.5 - (C) Dave Chapman 2001-2004
Released under the GPL.
Latest version available from
Streaming 0 streams

and no data in the file. I guess this is something to do with the
different environment in each case, but I don't know where to start
debugging it. Any pointers would be much appreciated.


Jul 18 '05 #1
Share this question for a faster answer!
Share on Google+

This discussion thread is closed

Replies have been disabled for this discussion.