C# Sprachübertragung mit Remoting?

DerRobert

Grünschnabel
Hallo all Ihr Wisser ;)

ich schreibe gerade an einer kleinen Applikation und ich brauche eine Möglichkeit einen Live-Stream von Sprache zu ermöglichen. Also am Server soll jemand in ein Mikro sprechen können und die Clients sollen das möglichst zeitnah hören können (Echtzeit muss nicht sein, nur so maximal 10 sekunden verzögerung wäre toll - hängt ja auch von der bandbreite ab).
Nun steh ich die ganze Zeit da und habe mir schon DirectSound angeschaut und überlegt, ob ich das mit Remoting verbinden kann... oder Voice-Over-IP in C# implementieren... alles nicht wirklich der Stein der Weisen, da z.B. bei VoIP kaum freie APIs zu finden sind.

Und deswegen dachte ich, ich frage mal hier, ob jemand eine Idee hat, wie das am besten zu lösen sei?

Ich will jetzt um Gottes willen keine fertigen Source Codes o.ä. , ich erhoffe mir eigentlich mehr ein paar konkrete Ideen wie das zu realisieren ist und evtl. ein paar Links o.ä., die mich in die richtige Richtung schubsen.

Evtl. hat ja jemand sowas schonmal gemacht, das wäre natürlich am besten :)

Also, ich hoffe Ihr könnt mir da ein wenig auf die Sprünge helfen :)

Mit Grüßen und Hoffnung
DerRobert
 
Zuletzt bearbeitet:
Ich weiß nicht ob es dir hilft, aber ich habe hier zb ein SDK für VoIP gefunden.

DirectSound mit Remoting zu verbinden wäre glaube ich keine gute Lösung, weil dies eigentlich eine Entfremdung des Zwecks von Remoting wäre...
Aber beim DirectX SDK gibt es noch DirectPlay, welches Netzwerkfunktionalität bereitstellt und es ist glaube ich sogar Dokumentation und ein Beispiel für eine Sprachübertragung dabei..
 
Naja, ich hab jetzt nicht wirklich drüber nachgedacht, aber im Grunde sollt es ja so ablaufen:

Du sprichst in das Mikro und solltest daher über die Soundkarte einen Datenstream auslesen können (eben das von dir gesagte). Diesen Stream kannst du ja 1:1 an deine Clients weitergeben. Jetzt müsstest du eigentlich nur noch diesen Datenstream an die dortige Soundkarte weitergeben.

Klingt recht easy, sollte auch nicht allzu schwer zu programmieren sein. Ein Problem wird jedoch sein, dass die Daten schnell genug über die Leitung gehen. Hier solltest du dir vielleicht Gedanken machen, da ein wenig zu komprimieren. Allerdings solltest du das dann testen, denn du willst ja nicht, dass dir der Server in die Knie geht :-)

Du hast hier - denk ich - zwei Milestones vor dir:
1. Daten von der Soundkarte empfangen
2. Daten am Client empfangen

Wenn diese beiden Punkte funktionieren, sollte das kein allzugroßes Problem mehr sein. Im übrigen versuche ich mich hier bei der gleichen Aufgabe bzw. hoffe dass ich dies bald in Angriff nehmen werde, vielleicht kann ich dir dann ja besser helfen.
 
Zurück