diff --git a/headphones/music_encoder.py b/headphones/music_encoder.py index 2b00bfc8..e37f2d43 100644 --- a/headphones/music_encoder.py +++ b/headphones/music_encoder.py @@ -244,8 +244,15 @@ def command(encoder,musicSource,musicDest,albumPath): logger.info('Encoding %s...' % (musicSource.decode(headphones.SYS_ENCODING, 'replace'))) logger.debug(subprocess.list2cmdline(cmd)) - startupinfo = subprocess.STARTUPINFO() - startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW + # stop windows opening the cmd + startupinfo = None + if headphones.SYS_PLATFORM == "win32": + startupinfo = subprocess.STARTUPINFO() + try: + startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW + except AttributeError: + startupinfo.dwFlags |= subprocess._subprocess.STARTF_USESHOWWINDOW + p = subprocess.Popen(cmd, startupinfo=startupinfo, stdin=open(os.devnull, 'rb'), stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = p.communicate(headphones.ENCODER)