def query_sound(): import subprocess command = get_sound_command()+["_sound_query"] _add_debug_args(command) kwargs = exec_kwargs() env = exec_env() env.update(get_sound_wrapper_env()) log("query_sound() command=%s, env=%s, kwargs=%s", command, env, kwargs) proc = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=None, env=env, **kwargs) out, err = proc.communicate(None) log("query_sound() process returned %s", proc.returncode) log("query_sound() out=%s, err=%s", out, err) if proc.returncode!=0: return typedict() d = typedict() for x in out.decode("utf8").splitlines(): kv = x.split("=", 1) if len(kv)==2: #ie: kv = ["decoders", "mp3,vorbis"] k,v = kv #fugly warning: all the other values are lists.. but this one is not: if k!=b"python.bits": v = [x.encode() for x in v.split(",")] #d["decoders"] = ["mp3", "vorbis"] d[k.encode()] = v log("query_sound()=%s", d) return d
def query_sound(): import subprocess command = get_sound_command() + ["_sound_query"] _add_debug_args(command) kwargs = exec_kwargs() env = exec_env() env.update(get_sound_wrapper_env()) log("query_sound() command=%s, env=%s, kwargs=%s", command, env, kwargs) proc = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, env=env, **kwargs) out, err = proc.communicate(None) log("query_sound() process returned %s", proc.returncode) log("query_sound() out=%s, err=%s", out, err) if proc.returncode != 0: return typedict() d = typedict() for x in out.splitlines(): kv = x.split(b"=", 1) if len(kv) == 2: #ie: kv = ["decoders", "mp3,vorbis"] k, v = kv #fugly warning: all the other values are lists.. but this one is not: if k != b"python.bits": v = [bytestostr(x) for x in v.split(b",")] #d["decoders"] = ["mp3", "vorbis"] d[bytestostr(k)] = v log("query_sound()=%s", d) return d
def query_sound(): import subprocess command = get_sound_command()+["_sound_query"] _add_debug_args(command) kwargs = exec_kwargs() env = exec_env() env.update(get_sound_wrapper_env()) log("query_sound() command=%s, env=%s, kwargs=%s", command, env, kwargs) proc = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=None, env=env, **kwargs) out, err = proc.communicate(None) log("query_sound() process returned %s", proc.returncode) log("query_sound() out=%s, err=%s", out, err) if proc.returncode!=0: return typedict() d = typedict() for x in out.decode("utf8").splitlines(): kv = x.split("=", 1) if len(kv)==2: #ie: kv = ["decoders", "mp3,vorbis"] d[kv[0].encode()] = [x.encode() for x in kv[1].split(",")] #d["decoders"] = ["mp3", "vorbis"] log("query_sound()=%s", d) return d