Index: media/gpu/dxva_video_decode_accelerator_win.h |
diff --git a/media/gpu/dxva_video_decode_accelerator_win.h b/media/gpu/dxva_video_decode_accelerator_win.h |
index f59fe90bdb40bb4891eb73e5525edab444e4f823..27f209bbee861e322ad7ab0d85baeb05516420f4 100644 |
--- a/media/gpu/dxva_video_decode_accelerator_win.h |
+++ b/media/gpu/dxva_video_decode_accelerator_win.h |
@@ -5,7 +5,7 @@ |
#ifndef MEDIA_GPU_DXVA_VIDEO_DECODE_ACCELERATOR_WIN_H_ |
#define MEDIA_GPU_DXVA_VIDEO_DECODE_ACCELERATOR_WIN_H_ |
-#include <d3d11.h> |
+#include <d3d11_1.h> |
#include <d3d9.h> |
#include <initguid.h> |
#include <stdint.h> |
@@ -317,7 +317,7 @@ class MEDIA_GPU_EXPORT DXVAVideoDecodeAccelerator |
ID3D11Texture2D* dest_texture, |
base::win::ScopedComPtr<IDXGIKeyedMutex> dest_keyed_mutex, |
uint64_t keyed_mutex_value, |
- base::win::ScopedComPtr<IMFSample> video_frame, |
+ base::win::ScopedComPtr<IMFSample> input_sample, |
int picture_buffer_id, |
int input_buffer_id); |
@@ -334,12 +334,11 @@ class MEDIA_GPU_EXPORT DXVAVideoDecodeAccelerator |
// before reusing it. |
void WaitForOutputBuffer(int32_t picture_buffer_id, int count); |
- // Initializes the DX11 Video format converter media types. |
+ // Initialize the DX11 video processor. |
// Returns true on success. |
- bool InitializeDX11VideoFormatConverterMediaType( |
- int width, |
- int height, |
- const gfx::ColorSpace& color_space); |
+ bool InitializeID3D11VideoProcessor(int width, |
+ int height, |
+ const gfx::ColorSpace& color_space); |
// Returns the output video frame dimensions (width, height). |
// |sample| :- This is the output sample containing the video frame. |
@@ -377,7 +376,6 @@ class MEDIA_GPU_EXPORT DXVAVideoDecodeAccelerator |
VideoDecodeAccelerator::Client* client_; |
base::win::ScopedComPtr<IMFTransform> decoder_; |
- base::win::ScopedComPtr<IMFTransform> video_format_converter_mft_; |
base::win::ScopedComPtr<IDirect3D9Ex> d3d9_; |
base::win::ScopedComPtr<IDirect3DDevice9Ex> d3d9_device_ex_; |
@@ -391,6 +389,14 @@ class MEDIA_GPU_EXPORT DXVAVideoDecodeAccelerator |
base::win::ScopedComPtr<ID3D11DeviceContext> d3d11_device_context_; |
base::win::ScopedComPtr<ID3D11Query> d3d11_query_; |
+ base::win::ScopedComPtr<ID3D11VideoDevice> video_device_; |
+ base::win::ScopedComPtr<ID3D11VideoContext> video_context_; |
+ base::win::ScopedComPtr<ID3D11VideoProcessorEnumerator> enumerator_; |
+ base::win::ScopedComPtr<ID3D11VideoProcessor> d3d11_processor_; |
+ |
+ int processor_width_ = 0; |
+ int processor_height_ = 0; |
+ |
base::win::ScopedComPtr<IDirectXVideoProcessorService> |
video_processor_service_; |
base::win::ScopedComPtr<IDirectXVideoProcessor> processor_; |
@@ -526,10 +532,6 @@ class MEDIA_GPU_EXPORT DXVAVideoDecodeAccelerator |
// contexts. |
bool use_keyed_mutex_; |
- // Set to true if the DX11 video format converter input media types need to |
- // be initialized. Defaults to true. |
- bool dx11_video_format_converter_media_type_needs_init_; |
- |
// Color spaced used when initializing the dx11 format converter. |
gfx::ColorSpace dx11_converter_color_space_; |