Ich bin auf der Suche nach einer Silverlight-Anwendung zu entwickeln, die einen Datenstrom (nicht ein Audio-Stream als solche) von einem Web-Server nehmen wird.
Der Datenstrom wird dann so manipuliert, dass ein bestimmtes Audioformat entsteht (z. B. G.711 a-Law), das dann in PCM umgewandelt wird, so dass zusätzliche Effekte (wie z. B. die Anhebung der Lautstärke) angewendet werden können.
Bis zu diesem Punkt geht es mir gut. Ich habe meine Daten, konvertiert die G.711 in PCM, aber mein Problem ist in der Lage, diese PCM-Audio an die Soundkarte ausgeben.
Ich basiere eine Lösung auf einige C#-Code für eine .Net-Anwendung bestimmt, aber in Silverlight gibt es ein Problem mit dem Versuch, eine Kopie eines Delegaten (Funktionszeiger), die das Thema einer separaten Frage sein wird, sobald ich ein einfaches Code-Beispiel produziert habe.
Also, die Frage ist... Wie kann ich das PCM-Audio, das ich in einer Datenstruktur (derzeit ein Array) in meinem Silverlight gehalten habe, an den Benutzer ausgeben? (Bitte sagen Sie nicht, schreiben Sie die Byte-Werte in ein Textfeld)
Wenn es sich um eine MP3- oder WMA-Datei handeln würde, würde ich sie mit einem MediaElement abspielen, aber ich möchte sie nicht in eine Datei umwandeln müssen, da dies die Anwendung dynamischer Effekte auf das Audio beeinträchtigen würde.
Ich habe ein paar Beiträge von Leuten gesehen, die sagen, dass Low-Level-Audio-Unterstützung in Silverlight schlecht/nicht vorhanden ist, also bin ich offen für alle Vorschläge/Ideen, die Leute haben könnten.