📅  最后修改于: 2020-11-18 10:01:13             🧑  作者: Mango
WPF应用程序使用MediaElement支持视频和音频。它允许您将音频和视频集成到应用程序中。 MediaElement类的工作方式与Image类类似。您只需将其指向媒体并对其进行渲染。主要区别在于它将是运动图像,但是如果将其指向仅包含音频而不包含视频的文件(例如MP3),它将播放该文件而不会在屏幕上显示任何内容。
WPF根据机器配置支持所有类型的视频/音频格式。如果媒体文件播放媒体播放器,则它也将在同一台计算机上的WPF中工作。
让我们举一个例子来了解如何在您的应用程序中集成多媒体。
创建一个名为WPFMultimedia的新WPF项目。
以下XAML代码创建一个media元素和三个按钮,并使用一些属性对其进行初始化。
这是C#中不同按钮的Click事件实现。
using System;
using System.Windows;
namespace WPFMultimedia {
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
myMedia.Volume = 100;
myMedia.Play();
}
void mediaPlay(Object sender, EventArgs e) {
myMedia.Play();
}
void mediaPause(Object sender, EventArgs e) {
myMedia.Pause();
}
void mediaMute(Object sender, EventArgs e) {
if (myMedia.Volume == 100) {
myMedia.Volume = 0;
muteButt.Content = "Listen";
}
else {
myMedia.Volume = 100;
muteButt.Content = "Mute";
}
}
}
}
当您编译并执行上述代码时,将产生以下窗口。您可以使用三个按钮播放视频并控制其播放。
使用按钮可以暂停,静音和播放视频。
WPF具有将文本转换为语音的功能。此API包含在System.Speech命名空间中。 SpeechSynthesizer类将文本转换为语音。
让我们看一个简单的例子。
创建一个名为WPFTextToSpeech的新WPF项目。
我们将需要添加System.Speech程序集作为引用,以使SpeechSynthesizer类正常工作。
右键单击参考,然后选择添加参考。
“参考管理器”对话框将打开。现在选中System.Speech复选框
单击确定按钮。您可以在参考中看到System.Speech程序集。
现在,将一个按钮和一个文本框从工具箱拖动到设计窗口中。
以下XAML代码创建一个按钮和一个文本框,并使用一些属性对其进行初始化。
这是C#中的简单实现,它将文本框内的Text转换为语音。
using System.Speech.Synthesis;
using System.Windows;
namespace WPFTextToSpeech {
///
/// Interaction logic for MainWindow.xaml
///
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
}
private void button_Click(object sender, RoutedEventArgs e) {
if (textBox.Text != "") {
SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer();
speechSynthesizer.Speak(textBox.Text);
}
else {
MessageBox.Show("Write some thing in the textbox!");
}
}
}
}
当您编译并执行上述代码时,将产生以下窗口。现在,在文本框中键入Hello World并单击“讲话”按钮。
它将产生声音“ Hello World”。如果您在文本框中未输入任何内容,则它将闪烁以下消息。
我们建议您执行以上示例。