mehdi_k Ответов: 1

Воспроизведение звуков с помощью проигрывателя Windows Media Player?


Привет,

Я хочу использовать wmp, но с помощью [DllImport()].
Я не знаком с этим кодом, как я могу воспроизвести звук таким образом?

senguptaamlan

что вы на самом деле хотите сделать ??? пожалуйста, предоставьте функциональное требование....обычно DLLIMPORT-это не очень хороший способ сделать это. things...so что если есть какая-то другая возможность, то ее можно предложить

Dalek Dave

Отредактировано для удобства чтения.

1 Ответов

Рейтинг:
0

Simon P Stevens

DllImport на самом деле больше не нужен для воспроизведения звуков.

Если вам действительно нужно использовать DllImport для использования неуправляемых звуковых API, взгляните на эту статью: Воспроизведение файлов .wav с помощью C#[^(Обратите внимание, что эта статья написана с .Net 1.1, и теперь в новых версиях фреймворка есть гораздо более простые способы воспроизведения звука)

Если вы просто воспроизводите файлы .wav и вам не нужно использовать проигрыватель windows media, вы можете просто сделать это:

System.Media.SoundPlayer player = new System.Media.SoundPlayer("SourceFile.wav");
player.Play();
Если вы хотите воспроизводить другие типы носителей или на самом деле хотите воспроизводить звуки через проигрыватель windows media, вы сначала добавляете ссылку на C:\Windows\System32\wmp.dll а затем используйте этот код:
WMPLib.WindowsMediaPlayer wmp = new WMPLib.WindowsMediaPlayerClass();
wmp.URL = "SoundFile.wav";
wmp.controls.play();
Это поддерживает любой тип файлов, который поддерживает медиаплеер.

Наконец, вы могли бы использовать
Пространство имен носителей XNA framework[^]. Это поддерживает большинство распространенных форматов, но недостатком является то, что вам нужно будет ссылаться на библиотеки XNA framework:
Uri songFile = new Uri("SoundFile.mp3");
Song yourSong = Song.FromUri("YourSong", songFile );
MediaPlayer.Play(yourSong);


mehdi_k

Спасибо,но это для файлов .wav , я хочу воспроизвести любой звуковой файл.
можешь ли ты вести меня?

Simon P Stevens

Пример проигрывателя windows media будет работать с любым типом файлов, который поддерживает проигрыватель windows media. Я также обновил ответ, включив в него пример XNA media, который будет поддерживать другие форматы.