본문 바로가기
C# /SmartClient

AxWMPLib 를 이용한 간단한 Wav,Mp3 재생기 입니다.

by Hwoarang757 2014. 7. 8.

실력자분들에게 죄송하지만 형편없는 예제이지만 올려봅니다.

 

AxWMPLib 를 이용한 간단한 Wav,Mp3 재생기 입니다.

 

기존 MediaPlayerClass (Windows Media Player COM ) 을 참조하였을때 Dispose 등 재생 중지 문제가 있어

 

직접 ActiveX로 제공되는 AxWMPLib 를 이용하여 간단한 재생기를 만들어보았습니다.

 

 

 

 

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Drawing;

using System.Data;

using System.Text;

using System.Windows.Forms;


namespace SmartClient_AudioPlayer

{

public partial class AxMediaSoundPlayer : UserControl

{

public AxMediaSoundPlayer()

{

InitializeComponent();

}


private void AxMediaSoundPlayer_Load(object sender, EventArgs e)

{

lblRate.Text = "";

}


public void StartAudioPlay(string _filePath)

{

axWindowsMediaPlayer.URL = _filePath;

//볼륨

axWindowsMediaPlayer.settings.volume = 100;

}


public void StopAudioPlay()

{

axWindowsMediaPlayer.close();

axWindowsMediaPlayer.Dispose();

this.Dispose(true);

}


private void tbRate_ValueChanged(object sender, EventArgs e)

{

SetRateValue();

}


public void SetRateValue()

{

switch (tbRate.Value)

{

case 1: lblRate.Text = "1 배속";

axWindowsMediaPlayer.settings.rate = 1;

break;

case 2: lblRate.Text = "1.1 배속";

axWindowsMediaPlayer.settings.rate = 1.1;

break;

case 3: lblRate.Text = "1.2 배속";

axWindowsMediaPlayer.settings.rate = 1.2;

break;

case 4: lblRate.Text = "1.3 배속";

axWindowsMediaPlayer.settings.rate = 1.3;

break;

case 5: lblRate.Text = "1.4 배속";

axWindowsMediaPlayer.settings.rate = 1.4;;

break;

case 6: lblRate.Text = "1.5 배속";

axWindowsMediaPlayer.settings.rate = 1.5;

break;

case 7: lblRate.Text = "2 배속";

axWindowsMediaPlayer.settings.rate = 2;

break;

case 8: lblRate.Text = "3 배속";

axWindowsMediaPlayer.settings.rate = 3;

break;

case 9: lblRate.Text = "4 배속";

axWindowsMediaPlayer.settings.rate = 4;

break;

case 10: lblRate.Text = "5 배속";

axWindowsMediaPlayer.settings.rate = 5;

break;

}

}

}

}