def METHOD_NAME(s1, **kargs):
    """
    Same than voip_play, but will play
    both incoming and outcoming packets.
    The sound will surely suffer distortion.
    Only supports sniffing.
    .. seealso:: voip_play
    to play only incoming packets.
    """
    proc = subprocess.Popen(sox_base[0] + ["-c", "2"] + sox_base[1],
                            stdin=subprocess.PIPE, stdout=subprocess.PIPE)
    dsp, rd = proc.stdin, proc.stdout
    global x1, x2
    x1 = ""
    x2 = ""
    def play(pkt):
        global x1, x2
        if not pkt:
            return
        if not pkt.haslayer(UDP) or not pkt.haslayer(IP):
            return
        ip = pkt.getlayer(IP)
        if s1 in [ip.src, ip.dst]:
            if ip.dst == s1:
                x1 += pkt.getlayer(conf.raw_layer).load[12:]
            else:
                x2 += pkt.getlayer(conf.raw_layer).load[12:]
            x1, x2, r = _merge_sound_bytes(x1, x2)
            dsp.write(r)
    try:
        sniff(store=0, prn=play, **kargs)
    finally:
        try:
            dsp.close()
            rd.close()
        except Exception:
            pass