MediaComposition.GetThumbnailAsync() 内存泄漏?
Memory leak in MediaComposition.GetThumbnailAsync()?
调用 MediaComposition.GetThumbnailAsync() 似乎在 Windows 10 上非常显着地泄漏内存。从我在模拟器上看到的情况来看,Windows Phone 似乎没问题.也许我遗漏了一些明显的东西,任何人都可以对此有所了解吗?
转载:
- 创建空白 c# 通用 Windows 项目。
- 将按钮添加到 MainPage.xaml,如:
<Button Click="Button_Click" Content="Click me" />
- 将处理程序添加到 MainPage.xaml.cs,如:
private MediaComposition _comp = null;
private async void Button_Click(object sender, RoutedEventArgs e) {
if (_comp == null) {
var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/test.mp4", UriKind.Absolute));
var clip = await MediaClip.CreateFromFileAsync(file);
_comp = new MediaComposition();
_comp.Clips.Add(clip);
}
using (ImageStream thumb = await _comp.GetThumbnailAsync(TimeSpan.FromSeconds(1), 0, 0, VideoFramePrecision.NearestFrame)) {
Debug.WriteLine(GC.GetTotalMemory(true).ToString("N0"));
}
}
- 根据 VS 的建议添加必需的 using 语句。
- 将一些简短的 .mp4 添加到您的资产文件夹并将其命名为 test.mp4
- 运行 在 x86 中并单击按钮几次。在 Process Explorer 或内置 VS 诊断中观察内存使用量的增加。大约 800MB 时崩溃。
已从 Microsoft 确认他们可以重现,这是一个错误。现已在 2015 年 11 月 20 日的最新 WIN 10 版本中修复
调用 MediaComposition.GetThumbnailAsync() 似乎在 Windows 10 上非常显着地泄漏内存。从我在模拟器上看到的情况来看,Windows Phone 似乎没问题.也许我遗漏了一些明显的东西,任何人都可以对此有所了解吗?
转载:
- 创建空白 c# 通用 Windows 项目。
- 将按钮添加到 MainPage.xaml,如:
<Button Click="Button_Click" Content="Click me" />
- 将处理程序添加到 MainPage.xaml.cs,如:
private MediaComposition _comp = null;
private async void Button_Click(object sender, RoutedEventArgs e) {
if (_comp == null) {
var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/test.mp4", UriKind.Absolute));
var clip = await MediaClip.CreateFromFileAsync(file);
_comp = new MediaComposition();
_comp.Clips.Add(clip);
}
using (ImageStream thumb = await _comp.GetThumbnailAsync(TimeSpan.FromSeconds(1), 0, 0, VideoFramePrecision.NearestFrame)) {
Debug.WriteLine(GC.GetTotalMemory(true).ToString("N0"));
}
}
- 根据 VS 的建议添加必需的 using 语句。
- 将一些简短的 .mp4 添加到您的资产文件夹并将其命名为 test.mp4
- 运行 在 x86 中并单击按钮几次。在 Process Explorer 或内置 VS 诊断中观察内存使用量的增加。大约 800MB 时崩溃。
已从 Microsoft 确认他们可以重现,这是一个错误。现已在 2015 年 11 月 20 日的最新 WIN 10 版本中修复