在Windows 10上,对MediaComposition.GetThumbnailAsync()的调用似乎会极大地泄漏内存。也许我遗漏了一些明显的东西,有人可以对此加以说明吗?
复制:
<Button Click="Button_Click" Content="Click me" />
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")); } }
最佳答案
已获得Microsoft的确认,他们可以复制,这是一个错误。从15年11月20日开始在最新的WIN 10版本中修复