Just replying to myself because I am extremely dumb, so maybe it will help someone along the way if the same thing happens.
I forgot to include argv[1], which is basically the same as the name of the file to be run. So: os.execl(tw_comppath, tw_comppath, "--endian=little", "--channels=2", "--sign=signed", "--bps=16", "--sample-rate=44100", "--delete-input-file", "%s"%filepath) does the trick. Thanks anyway tutors... Hugo González Monteverde wrote: > Hi all, > > I'm trying to call up flac's encoder from a Python program. I believe I > should be doing it ok, but I get completely different results when doing > it by hand and from the python script. Here's the command line: > > $/usr/bin/flac --endian=little --channels=2 --sign=signed --bps=16 > --sample-rate=44100 --delete-input-file /var/data/myfile.raw > > This works fine when done by hand, and flac encodes the file. > > Inside the script, I do a fork() and then, on the child, I do: > > > tw_comppath = "/usr/bin/flac" > filepath = "/var/data/myfile.raw" > > os.execl(tw_comppath, "--endian=little", "--channels=2", > "--sign=signed", "--bps=16", "--sample-rate=44100", > "--delete-input-file", "%s"%filepath) > > In this case, the FLAC binary complains about not getting the proper > options (endian, channels, etc), but it claims it is getting > --delete-input-file. > > What am I doing wrong? I cannot seem to pass the parameters right using > execl.... > > Thanks for your enlightening.... > > Hugo > _______________________________________________ > Tutor maillist - Tutor@python.org > http://mail.python.org/mailman/listinfo/tutor > _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor