Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(980)

Unified Diff: media/gpu/dxva_video_decode_accelerator_win.cc

Issue 2590723002: [dxvavda] Save information about outstanding buffers in hang minidumps. (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/gpu/dxva_video_decode_accelerator_win.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/gpu/dxva_video_decode_accelerator_win.cc
diff --git a/media/gpu/dxva_video_decode_accelerator_win.cc b/media/gpu/dxva_video_decode_accelerator_win.cc
index 5f104496f320afe1a718f00c0457bf805de23ab9..9e7c7b630c3f0501c0ae1e6fe602246b41a46cc0 100644
--- a/media/gpu/dxva_video_decode_accelerator_win.cc
+++ b/media/gpu/dxva_video_decode_accelerator_win.cc
@@ -1995,11 +1995,20 @@ void DXVAVideoDecodeAccelerator::StopDecoderThread() {
uint64_t last_process_output_time = g_last_process_output_time;
LARGE_INTEGER perf_frequency;
::QueryPerformanceFrequency(&perf_frequency);
+ uint32_t output_array_size = output_array_size_;
+ size_t sample_count;
+ {
+ base::AutoLock lock(decoder_lock_);
+ sample_count = pending_output_samples_.size();
+ }
+
base::debug::Alias(&last_exception_code);
base::debug::Alias(&last_unhandled_error);
base::debug::Alias(&last_exception_time);
base::debug::Alias(&last_process_output_time);
base::debug::Alias(&perf_frequency.QuadPart);
+ base::debug::Alias(&output_array_size);
+ base::debug::Alias(&sample_count);
decoder_thread_.Stop();
}
@@ -2838,6 +2847,7 @@ bool DXVAVideoDecodeAccelerator::GetVideoFrameDimensions(IMFSample* sample,
d3d11_texture->GetDesc(&d3d11_texture_desc);
*width = d3d11_texture_desc.Width;
*height = d3d11_texture_desc.Height;
+ output_array_size_ = d3d11_texture_desc.ArraySize;
} else {
base::win::ScopedComPtr<IDirect3DSurface9> surface;
hr = MFGetService(output_buffer.get(), MR_BUFFER_SERVICE,
« no previous file with comments | « media/gpu/dxva_video_decode_accelerator_win.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698