В .Net существует класс MediaPlayer пространстве имен System.Windows.Media. Создается объект MediaPlayer, с помощью метода Open() загружается аудиофайл, а вызовом метода Рlау() запускается асинхронное воспроизведение. Местоположение файла указывается в виде URI. К сожалению, это не синтаксис упакованных URI, так что встроить аудиофайл и воспроизвести его с использованием класса MediaPlayer не получится. Это ограничение объясняется тем, что класс MediaPlayer построен на функциональности, которая не является встроенной в Windows Form, а предоставлена отдельным, неуправляемым компонентом проигрывателя Windows Media. Так же отсутствует код обработки исключений. Методы Open() и Play() не генерируют исключения (в некоторой степени тому виной процессы асинхронной загрузки и воспроизведения). Взамен предлагается самостоятельно обрабатывать события MediaOpened и MediaFailed, чтобы определить, было ли запущено воспроизведение аудио.
Создайте проект Windows Form в Microsoft Visual Studio. Добавьте три компонента:
После нажатия на кнопку «Открыть», у вас начнется воспроизведение выбранного файла, с позиции которую вы задали, в примере это 1:50.
MediaPlayer достаточно прост, хотя обладает большими возможностями, чем SoundPlayer. Он предоставляет небольшой набор полезных методов, свойство и событий. Используя эти члены этого класса, можно построить базовый полнофункциональный медиа проигрыватель.
Создайте проект Windows Form в Microsoft Visual Studio. Добавьте три компонента:
- Label – отображение текущей позиции воспроизведения файла;
- Button – загрузка медиа файла и запуск его воспроизведения;
- Timer – для отслеживания/отображения текущей позиции воспроизведения.
//Открываем диалоговое окно для выбора медиа файла OpenFileDialog ofd = new OpenFileDialog(); //создаем фильтр для типов открываемых файлов ofd.Filter = "(*.mp3)|*.mp3"; ofd.ShowDialog(); //Инициализируем новый экземпляр класса System.Windows.Media.MediaPlayer. m = new MediaPlayer(); //Указываем файл для воспроизведения m.Open(new Uri(ofd.FileName)); m.Play(); //Устанавливаем начальную позицию воспроизведения 0:1:50 m.Position = new TimeSpan(0, 1, 50); //Запускаем таймер, отслеживания позиции воспроизведения timer1.Enabled = true;Объявляем переменную «m» инициализирующую класс MediaPlayer:
MediaPlayer m;Сделайте двойной клик левой клавишей мыши по компоненту «Timer» и перейдите в автоматически созданный метод «timer1_Tick». Добавьте в него следующий листинг:
//Отображаем текущую позицию label1.Text = "Позиция воспроизведения: "+ m.Position.ToString();Запустите ваш проект клавишей «F5». Нажмите единственную клавишу на вашей форме. У вас откроется диалоговое окно для выбора медиа файла.
После нажатия на кнопку «Открыть», у вас начнется воспроизведение выбранного файла, с позиции которую вы задали, в примере это 1:50.
MediaPlayer достаточно прост, хотя обладает большими возможностями, чем SoundPlayer. Он предоставляет небольшой набор полезных методов, свойство и событий. Используя эти члены этого класса, можно построить базовый полнофункциональный медиа проигрыватель.
Для работы вам необходимо подключить следующее пространство имен:
using System.Windows.Media;
using System.Windows.Media;
Ссылка на исходник: Rusfolder.net
Комментариев нет:
Отправить комментарий
Большая просьба, не писать в комментариях всякую ерунду не по теме!