Avatar billede mbm2016 Nybegynder
08. maj 2011 - 13:20 Der er 1 løsning

C# - Afspil lyd fra Stream

Hej eksperter,

jeg vil gerne kunne afspille musik fra en Stream i C#,
jeg har søgt på google og fudnet et lovende API: NAudio,

til det har jeg også fundet et kode eksempel, dog er problemet ved eksemplet at den ikke kan afspille før hele streamen er hentet ned, ville gerne have en slags buffer funktion, hvor den henter lidt lyd, afpsiller, henter lidt lyd..... osv.


public static void PlayMp3FromUrl(string url)
    {
        using (Stream ms = new MemoryStream())
        {
            using (Stream stream = WebRequest.Create(url)
                .GetResponse().GetResponseStream())
            {
                byte[] buffer = new byte[32768];
                int read;
                while ((read = stream.Read(buffer, 0, buffer.Length)) > 0)
                {
                    ms.Write(buffer, 0, read);
                }
            }

            ms.Position = 0;
            using (WaveStream blockAlignedStream =
                new BlockAlignReductionStream(
                    WaveFormatConversionStream.CreatePcmStream(
                        new Mp3FileReader(ms))))
            {
                using (WaveOut waveOut = new WaveOut(WaveCallbackInfo.FunctionCallback()))
                {
                    waveOut.Init(blockAlignedStream);
                    waveOut.Play();                       
                    while (waveOut.PlaybackState == PlaybackState.Playing )                       
                    {
                        System.Threading.Thread.Sleep(100);
                    }
                }
            }
        }
    }


På forhånd mange tak
Magnus
Avatar billede mbm2016 Nybegynder
25. december 2011 - 21:43 #1
Jeg lukker .)D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester