Seite 1 von 1

Mikrofon aufnahme live am Pc abspielen (Megafon)

Verfasst: Donnerstag 2. September 2021, 22:06
von Checker_2005
Hallo, ich versuche vergeblich eine art Megafon zu programmieren. Es soll wie folgt funktionieren: Ich spreche in mein Mikrofon und bekomme es sofort auf meinen Kopfhörern wiedergegeben. Mein Code sieht bisher so aus:

Code: Alles auswählen

import pyaudio
import socket
import sys

FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100
CHUNK = 1024

port = 12345

with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
    s.connect(("localhost", port))
audio = pyaudio.PyAudio()
stream = audio.open(format=FORMAT, channels=CHANNELS, rate=RATE, output=True, frames_per_buffer=CHUNK)

try:
    while True:
        data = s.recv(CHUNK)
        stream.write(data)
except KeyboardInterrupt:
    pass

print('Exit')
s.close()
stream.close()
audio.terminate()
Ich bekomme immer folgenden fehler:
ConnectionRefusedError: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
Wie kann ich das audio welches ich aufnehme auch sofort auf meinem Pc abspielen? Würde mich über Hilfe freuen :D
(Das audio soll auf meinen Pc gestreamt werden)
LG aus Baden-Würtemberg

Re: Mikrofon aufnahme live am Pc abspielen (Megafon)

Verfasst: Donnerstag 2. September 2021, 23:40
von rogerb
@Checker_2005,

auf meinem System funktioniert das so:

Code: Alles auswählen

import pyaudio

FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100
CHUNK = 1024

audio = pyaudio.PyAudio()

in_stream = audio.open(
    format=FORMAT,
    channels=CHANNELS,
    rate=RATE,
    input=True,
    frames_per_buffer=CHUNK
)

out_stream = audio.open(
    format=FORMAT,
    channels=CHANNELS,
    rate=RATE,
    output=True,
    frames_per_buffer=CHUNK
)


while True:
    data = in_stream.read(CHUNK)
    out_stream.write(data)

Re: Mikrofon aufnahme live am Pc abspielen (Megafon)

Verfasst: Freitag 3. September 2021, 07:11
von Sirius3
Offensichtlich lauscht niemand am Port 12345. Welcher Server sollte denn da laufen?

Du öffnest den Socket und schließt in gleich wieder, willst ihn aber später noch benutzen. Das geht schief.

Re: Mikrofon aufnahme live am Pc abspielen (Megafon)

Verfasst: Freitag 3. September 2021, 09:58
von Checker_2005
Danke für die schnelle Antwort. @rogerb dein Code funktioniert. Weiß jemand von auch zufällig auch wie man ein audio Signal umkehren kann (invert)?

Re: Mikrofon aufnahme live am Pc abspielen (Megafon)

Verfasst: Freitag 3. September 2021, 10:31
von __deets__
Checker_2005 hat geschrieben: Freitag 3. September 2021, 09:58 Danke für die schnelle Antwort. @rogerb dein Code funktioniert. Weiß jemand von auch zufällig auch wie man ein audio Signal umkehren kann (invert)?
Mal -1 nehmen.

Re: Mikrofon aufnahme live am Pc abspielen (Megafon)

Verfasst: Freitag 3. September 2021, 11:36
von Checker_2005
Danke 😁