myCSharp.de - DIE C# und .NET Community (https://www.mycsharp.de/wbb2/index.php)
- Entwicklung (https://www.mycsharp.de/wbb2/board.php?boardid=3)
-- Grundlagen von C# (https://www.mycsharp.de/wbb2/board.php?boardid=88)
--- Wie kann ich einen Musikserver/client in C# erstellen, bei dem ich vom Client auch abspielen kann? (https://www.mycsharp.de/wbb2/thread.php?threadid=121701)


Geschrieben von BierDav am 20.03.2019 um 18:18:
  Wie kann ich einen Musikserver/client in C# erstellen, bei dem ich vom Client auch abspielen kann?
Hallo,
ich möchte gern einen Musikserver machen bei dem ich auf der Client Seite einen Stream bekomme und den auch abspielen kann. Aber ich hab noch keine Ahnung wie das funktionieren soll. vielleicht kann mir wer helfen einen so einen Server bzw. Client zu machen?

Allgemeine Infos:
-muss nur MP3 unterstützen
-soll verschlüsselt sein
-evtl. Benutzer

Wäre sehr nett wenn mir hierbei jemand helfen würde. Danke schon im voraus. großes Grinsen

LG BierDav


Geschrieben von HexEdit am 20.03.2019 um 20:24:
 
Die mp3 datei (wenn nicht zu groß) senden dh bytes auslesen und

C#-Code:
byte[] musikDateiByteArray = File.ReadAllBytes("blub");//am besten ├╝ber FileStream auslesen
Stream.Write(musikDateiByteArray);

wenn zu groß vl(ka ob das so geht hab's nicht ausprobiert) einfach alle bytes der Musikdatei einlesen
währendessen aber gleich per Stream senden
dh

C#-Code:
while(fileStream.HasNextByte()) //***BEISPIEL
{
byte next = fileStream.Next();
stream.WriteByte(next);
}

und dann ClientSide die empfangenen bytes anfangen abzuspielen *Wenn das geht*

Mit der Verschlüsselung (AES) wär das per Stream so möglich

C#-Code:
class AesStream
    {
        public CryptoStream decryptStreamRead;
        public CryptoStream encryptStreamWrite;

        private NetworkStream _baseStream;
        private byte[] _key;

        public AesStream(NetworkStream stream, byte[] key)
        {
            _baseStream = stream;
            _key = key;
            Rijndael aes = this.GenerateAES(key);

            ICryptoTransform encryptor = aes.CreateEncryptor();
            ICryptoTransform decryptor = aes.CreateDecryptor();

            encryptStreamWrite = new CryptoStream(_baseStream, encryptor, CryptoStreamMode.Write);
            decryptStreamRead = new CryptoStream(_baseStream, decryptor, CryptoStreamMode.Read);
        }

        private Rijndael GenerateAES(byte[] key)
        {
            return new RijndaelManaged
            {
                Mode = CipherMode.CFB,
                Padding = PaddingMode.None,
                KeySize = 128,
                FeedbackSize = 8,
                Key = key,
                IV = key
            };
        }

        public byte[] GetKey()
        {
            return _key;
        }
    }


Geschrieben von MrSparkle am 24.03.2019 um 14:10:
 
Du fragst hier einfach so nach der Umsetzung von Client-Server-Technologien, Streaming, MP3-Player, Benutzerverwaltung und Verschlüsselung. So funktioniert aber ein Forum nicht, wer soll dir denn da helfen können? Versuch doch erstmal, dich wenigstens grundlegend zu jedem dieser Themen zu belesen.
Siehe dazu auch:  [Hinweis] Wie poste ich richtig?


Geschrieben von Stefan.Haegele am 25.03.2019 um 14:07:
 
Es ist in meinen Augen ein Fehler sich zu komplexe Themen zum Erlernen von Grundlagen zu suchen. ch denke es ist einfacher, wenn du dir erst einmal die Grundlagen aneignest bevor du dich an solch einem Projekt versuchst.


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 17.11.2019 06:07