title: Equivalent of os.system without a console window?
body: <p>I have a line that I can use it with <code>os.system</code> like;</p>
  
  <pre><code>os.system("ffmpeg -i file.smh -acodec libmp3lame file.mp3")
  </code></pre>
  
  <p>Where <code>ffmpeg</code> is an exe file. But It creates a console window on the screen. Normally I hide the console window by the following:</p>
  
  <pre><code>import win32console,win32gui
  
  win = win32console.GetConsoleWindow()
  win32gui.ShowWindow(win,1)
  </code></pre>
  
  <p>I tried this but it didn't work. <code>os.system</code> still shows me the console window. So I have two options:</p>
  
  <ul>
  <li>I need a way to hide the console window if I use <code>os.system</code>.</li>
  <li>Or I need a <code>subprocess</code> equivalent of <code>os.system</code>.</li>
  </ul>
  
  <p>I tried to use <code>subprocess.Popen(["ffmpeg.exe -i file.smh -acodec libmp3lame file.mp3"])</code>, but it can't find ffmpeg.exe. </p>
  
  <p>How can I fix this?</p>