Saturday, May 30, 2009

Play MP3 files

// Play MP3 files

public class Player
{
private string _command;
private bool isOpen;
[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand,StringBuilder strReturn,int iReturnLength, IntPtr hwndCallback);

public Player()
{

}
public void Close()
{
_command = "close MediaFile";
mciSendString(_command, null, 0, IntPtr.Zero);
isOpen=false;
}

public void Open(string sFileName)
{
_command = "open \"" + sFileName + "\" type mpegvideo alias MediaFile";
mciSendString(_command, null, 0, IntPtr.Zero);
isOpen = true;
}

public void Play(bool loop)
{
if(isOpen)
{
_command = "play MediaFile";
if (loop)
_command += " REPEAT";
mciSendString(_command, null, 0, IntPtr.Zero);
}
}
}

Play wav files

// Play wav files

System.Media.SoundPlayer player = new SoundPlayer();
player.SoundLocation = "c:\\test.wav";
player.LoadAsync();
player.PlayLooping(); //asynchronous (loop)playing in new thread
Thread.Sleep(5000);
player.Stop();

Beep

// Beep

[DllImport("kernel32.dll")]
public static extern bool Beep(int freq, int duration);

static void Main(string[] args)
{
Beep(1000, 50);
}