【发布时间】:2022-01-26 12:02:06
【问题描述】:
目前我正在使用 MediaElement 播放 youtube 视频,但我想隐藏视频并仅保留音频播放和传输控件。
MediaElement 仅在播放 mp3 文件时显示控件,但当它是视频格式时,它也会继续显示视频。那么有没有办法让它像文件是音频格式一样工作?
如果有办法,我到处寻找,但不幸的是没有找到任何东西,所以我决定在这里问。
【问题讨论】:
标签: c# uwp mediaelement
目前我正在使用 MediaElement 播放 youtube 视频,但我想隐藏视频并仅保留音频播放和传输控件。
MediaElement 仅在播放 mp3 文件时显示控件,但当它是视频格式时,它也会继续显示视频。那么有没有办法让它像文件是音频格式一样工作?
如果有办法,我到处寻找,但不幸的是没有找到任何东西,所以我决定在这里问。
【问题讨论】:
标签: c# uwp mediaelement
如何在 Media Element UWP 中将视频作为音频播放?
恐怕没有这样的api可以只播放视频文件的音频。但我们有一个解决方法是使用MediaComposition 将视频转换为音频,然后将流设置为MediaElement,更多代码请参考以下内容。如果您确实想要 MediaElement 的本机功能,请随时使用 Windows 反馈中心应用发布您的要求。
var videoFile = await Package.Current.InstalledLocation.GetFileAsync("hello.mp4");
// Create a MediaClip from the video file and apply our video effect
MediaClip clip = await MediaClip.CreateFromFileAsync(videoFile);
// Create a MediaComposition object that will allow us to generate a stream source
MediaComposition compositor = new MediaComposition();
compositor.Clips.Add(clip);
var profile = MediaEncodingProfile.CreateMp3(AudioEncodingQuality.Medium);
var mediaStream = compositor.GenerateMediaStreamSource(profile);
MyMedia.SetMediaStreamSource(mediaStream);
【讨论】:
way仅实现音频播放,您可以在MediaElement上切换显示或隐藏图像封面