C# ta mp3 çalmak

ilk olarak using e
using System.IO;
using System.Runtime.InteropServices;

ekliyoruz. daha sonra class'ın içerisinde aşağıdaki tanımaları yapıyorsunuz.
[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand, StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);
public string Pcommand;
public bool isOpen;

bir buton ve bir adet openFileDialog ekliyorsunuz. Butonun adını Dosya Aç yada Dosya Seç yapabilirsiniz. Butonun Click Event'ına
openFileDialog1.Filter = "Media File(*.mpg,*.dat,*.avi,*.wmv,*.wav,*.mp3)|*.wav;*.mp3;*.mpg;*.dat;*.avi;*.wmv";
openFileDialog1.ShowDialog();
if (openFileDialog1.FileName != "")
textBox1.Text = openFileDialog1.FileName;

yazıyoruz. Bir button daha ekleyip text özelliğine play yada çal yazıyoruz click eventına
Pcommand = "open \"" + textBox1.Text + "\" type mpegvideo alias MediaFile";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
isOpen = true;
Play(true);

yazıyoruz. durdur butonuna aşağıdaki kodları
Pcommand = "close MediaFile";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
isOpen = false;

Çıkış butonuna da aşağıdaki kodları yazıyorsunuz.
Application.Exit();

en son aşağıdaki metotu da ekleyince mp3lerimizi çalabiliriz.
public void Play(bool loop)
{
if (isOpen)
{
Pcommand = "play MediaFile";
if (loop)
Pcommand += " REPEAT";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
}
}

Aşağıda çalışan örneğin tam kodları var.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Runtime.InteropServices;
namespace WindowsFormsApplication99
{
public partial class Form1 : Form
{
[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand, StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);
public string Pcommand;
public bool isOpen;
public Form1()
{
InitializeComponent();
}
private void DosyaAc_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "Media File(*.mpg,*.dat,*.avi,*.wmv,*.wav,*.mp3)|*.wav;*.mp3;*.mpg;*.dat;*.avi;*.wmv";
openFileDialog1.ShowDialog();
if (openFileDialog1.FileName != "")
textBox1.Text = openFileDialog1.FileName;
}
private void DosyaCal_Click(object sender, EventArgs e)
{
Pcommand = "open \"" + textBox1.Text + "\" type mpegvideo alias MediaFile";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
isOpen = true;
Play(true);
}
private void Durdur_Click(object sender, EventArgs e)
{
Pcommand = "close MediaFile";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
isOpen = false;
}
private void Cikis_Click(object sender, EventArgs e)
{
Application.Exit();
}
public void Play(bool loop)
{
if (isOpen)
{
Pcommand = "play MediaFile";
if (loop)
Pcommand += " REPEAT";
mciSendString(Pcommand, null, 0, IntPtr.Zero);
}
}
}
}

© 2018, Csharp Kitabı. Tüm Hakları Saklıdır.