Bueno no se como solucionar tu problema pero te puedo dar una idea de lo que hice para obtener la salida de un comando que yo mismo lanzo desde python, mira a ver si puedes sacar algo de ahí:

command =   ''.join([
            'mencoder ',
'-oac mp3lame -lameopts abr:br=96 -ovc xvid -xvidencopts bitrate=704 -vf scale=580:480,harddup -ofps 30000/1001 ',
            input_file,
            ' -o ',
            output_file
            ])

handle = subprocess.Popen(command,shell=True, stderr=subprocess.PIPE, stdin=subprocess.PIPE,stdout=subprocess.PIPE)

percent = 0
while handle.poll()==None:
  v1,v2,v3=select.select([handle.stderr,handle.stdout],[],[],0)

  if len(v1)>0:
    for element in v1:
      readed=element.readline(300)
      if (element==handle.stderr):
    percent = -1
      else:
#Pos: 8.9s 269f ( 3%) 183.37fps Trem: 0min 14mb A-V:0.047 [353:96]
    if(re.match(".*Pos:.*", readed)):
      percent = re.findall("[\d]+%",readed)
      percent = percent[0]
      percent = re.findall("[\d]+",percent)
      percent = percent[0]
      print percent



--
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que está limpio.

______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

Responder a