На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

Воспроизведение mp3 на C#: пример и плеер

Для большинства проектов, которые я делаю, уже есть готовые решения в сети. Точнее, не совсем готовые, а как бы кубиками, пазлами, частями конструктора – мне надо просто их собрать все вместе. Это, например, относится и к проекту по созданию встроенного в программу на C# mp3 плеера – все элементы готовы, надо только грамотно скомпоновать и запустить.

Итак, для одного проекта потребовалось воспроизведение аудиозаписей. Ну что ж, так как никаких дополнительных требований заказчик не выдвигал, то идем по самому простому пути: подключаем Interop.WMPLib (wmp.dll) – стандартный плеер, который есть в любой версии Windows. Работать с ним до смешного просто. Инициализируем:

static int PlayPause = 0;
WMPLib.WindowsMediaPlayer pl = new WMPLib.WindowsMediaPlayer();
Далее, в кнопки обработчика вставляем что-то типа этого:

     if (PlayPause == 0)
            {
       PlayPause = 1;
                    timer1.Start();
                }


    else if (PlayPause == 1)
            {
                pl.controls.pause();
                PlayPause = 2;
                timer1.Stop();
            }

            else if (PlayPause == 2)
            {

                pl.controls.play();
                PlayPause = 1;
                timer1.Start();
            }
Здесь переменная PlayPause хранит состояние проигрывателя. 0 – стоп, 1 – играет, 2 – пауза. Теперь код таймера:

        private void timer1_Tick(object sender, EventArgs e)
        {
            double dlina = pl.currentMedia.duration;
            trackBar1.Maximum = (int)dlina;

            double tekPosition = pl.controls.currentPosition;
            trackBar1.Value = (int)tekPosition;
        }
Не забывает также при загрузке формы установить интервал для таймера:

        private void Form1_Load(object sender, EventArgs e)
        {
            timer1.Interval = 1000; //Таймер для плеера
}
Что мы сделали? Теперь, по нажатию кнопок у нас будет запускаться/останавливаться музыка, а также на ползунке изменяться положение. Но что если нам самим захочется управлять позицией проигрывания? Это просто:

      private void trackBar1_Scroll(object sender, EventArgs e)
        {
            pl.controls.currentPosition = trackBar1.Value;
        }
Теперь у нас имеется практически полноценный аудиоплеер в разрабатываемой программе:



Если вам требуется создать программу на заказ, то вы можете обратиться ко мне. Я пишу на C#, C++, Java. Занимаюсь как учебными программами, так и разрабатываю полноценные приложения, которые используются в реальной работе. Пишите на почту up777up@yandex.ru или сразу в скайп up777up2, вконтакте. Я с удовольствием вам помогу за разумные деньги – мои расценки выгодно отличаются от других программистов, а опыта и различных наработок немало.




тегизаметки, си шарп, mp3, visual studio





Простая галерея js - три строчки кода без jQuery
Микс 1, Утро 1


© upread.ru 2013-2018
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос или оставить комментарий. Оставьте сообщение, и я отвечу на него в ближайшее время. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru