Playing sounds on Console - C#

后端 未结 3 1751
我在风中等你
我在风中等你 2021-01-03 11:09

I\'m writing a Console application on C# and I want to play a sound when I display texts continuously. This is what I\'ve done :

static SoundPlayer typewrite         


        
相关标签:
3条回答
  • 2021-01-03 11:24

    Here's something that might help you out (please note that this code is for a winforms app, but you should be able to convert to a console app. Just study the code to see how it works) You'll basically be adding the .wav file as a 'resource' to your program. Then, your program can access the .wav file and play it:

    enter image description here

    using System.Reflection;
    using System.IO;
    using System.Resources;
    using System.Media;
    using System.Diagnostics;
    
    
    
    namespace Yournamespace
    {
        public partial class Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();
            }
    
            private void Form2_Load(object sender, EventArgs e)
            {
                Assembly assembly;
                Stream soundStream;
                SoundPlayer sp;
                assembly = Assembly.GetExecutingAssembly();
                sp = new SoundPlayer(assembly.GetManifestResourceStream
                    ("Yournamespace.Dreamer.wav"));
                sp.Play();  
            } 
        }
    }
    
    0 讨论(0)
  • 2021-01-03 11:29

    Figured out the problem : I just needed to set the SoundLocation property of the SoundPlayer instance :

    SoundPlayer typewriter = new SoundPlayer();
    typewriter.SoundLocation = Environment.CurrentDirectory + "/typewriter.wav";
    
    0 讨论(0)
  • 2021-01-03 11:29

    If for example you have your sounds in the folder "Assets" then subfolder "SoundClips" do it like this.

    var soundLocation = Environment.CurrentDirectory + @"\Assets\SoundClips\";
    
    SoundPlayer player = new SoundPlayer
    {
        SoundLocation = soundLocation + "typewriter.wav",
    };
    

    Make sure you have the file properties set to:

    build action - Content

    copy to output directory - Copy if newer

    0 讨论(0)
提交回复
热议问题