diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-01-29 16:35:13 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-02-01 15:33:35 +0000 |
commit | c8c2d1901aec01e934adf561a9fdf0cc776cdef8 (patch) | |
tree | 9157c3d9815e5870799e070b113813bec53e0535 /chromium/media/capture/video/win | |
parent | abefd5095b41dac94ca451d784ab6e27372e981a (diff) | |
download | qtwebengine-chromium-c8c2d1901aec01e934adf561a9fdf0cc776cdef8.tar.gz |
BASELINE: Update Chromium to 64.0.3282.139
Change-Id: I1cae68fe9c94ff7608b26b8382fc19862cdb293a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/media/capture/video/win')
7 files changed, 66 insertions, 67 deletions
diff --git a/chromium/media/capture/video/win/filter_base_win.h b/chromium/media/capture/video/win/filter_base_win.h index 57329d42696..5a3ecb0ce5e 100644 --- a/chromium/media/capture/video/win/filter_base_win.h +++ b/chromium/media/capture/video/win/filter_base_win.h @@ -12,10 +12,10 @@ #define NO_DSHOW_STRSAFE #include <dshow.h> #include <stddef.h> +#include <wrl/client.h> #include "base/macros.h" #include "base/memory/ref_counted.h" -#include "base/win/scoped_comptr.h" namespace media { @@ -66,7 +66,7 @@ class FilterBase : public IBaseFilter, public base::RefCounted<FilterBase> { private: FILTER_STATE state_; - base::win::ScopedComPtr<IFilterGraph> owning_graph_; + Microsoft::WRL::ComPtr<IFilterGraph> owning_graph_; DISALLOW_COPY_AND_ASSIGN(FilterBase); }; diff --git a/chromium/media/capture/video/win/pin_base_win.h b/chromium/media/capture/video/win/pin_base_win.h index 43cfc49955d..692e4664ba3 100644 --- a/chromium/media/capture/video/win/pin_base_win.h +++ b/chromium/media/capture/video/win/pin_base_win.h @@ -11,9 +11,9 @@ // Avoid including strsafe.h via dshow as it will cause build warnings. #define NO_DSHOW_STRSAFE #include <dshow.h> +#include <wrl/client.h> #include "base/memory/ref_counted.h" -#include "base/win/scoped_comptr.h" namespace media { @@ -100,7 +100,7 @@ class PinBase : public IPin, private: AM_MEDIA_TYPE current_media_type_; - base::win::ScopedComPtr<IPin> connected_pin_; + Microsoft::WRL::ComPtr<IPin> connected_pin_; // owner_ is the filter owning this pin. We don't reference count it since // that would create a circular reference count. IBaseFilter* owner_; diff --git a/chromium/media/capture/video/win/video_capture_device_factory_win.cc b/chromium/media/capture/video/win/video_capture_device_factory_win.cc index 0dcb425df9a..fec2ed9b27f 100644 --- a/chromium/media/capture/video/win/video_capture_device_factory_win.cc +++ b/chromium/media/capture/video/win/video_capture_device_factory_win.cc @@ -8,6 +8,7 @@ #include <mferror.h> #include <objbase.h> #include <stddef.h> +#include <wrl/client.h> #include "base/command_line.h" #include "base/macros.h" @@ -22,11 +23,11 @@ #include "media/capture/video/win/video_capture_device_mf_win.h" #include "media/capture/video/win/video_capture_device_win.h" -using base::win::ScopedCoMem; -using base::win::ScopedComPtr; -using base::win::ScopedVariant; using Descriptor = media::VideoCaptureDeviceDescriptor; using Descriptors = media::VideoCaptureDeviceDescriptors; +using Microsoft::WRL::ComPtr; +using base::win::ScopedCoMem; +using base::win::ScopedVariant; namespace media { @@ -99,7 +100,7 @@ static bool PrepareVideoCaptureAttributesMediaFoundation( static bool CreateVideoCaptureDeviceMediaFoundation(const char* sym_link, IMFMediaSource** source) { - ScopedComPtr<IMFAttributes> attributes; + ComPtr<IMFAttributes> attributes; if (!PrepareVideoCaptureAttributesMediaFoundation(attributes.GetAddressOf(), 2)) return false; @@ -112,7 +113,7 @@ static bool CreateVideoCaptureDeviceMediaFoundation(const char* sym_link, static bool EnumerateVideoDevicesMediaFoundation(IMFActivate*** devices, UINT32* count) { - ScopedComPtr<IMFAttributes> attributes; + ComPtr<IMFAttributes> attributes; if (!PrepareVideoCaptureAttributesMediaFoundation(attributes.GetAddressOf(), 1)) return false; @@ -159,13 +160,13 @@ static void GetDeviceDescriptorsDirectShow(Descriptors* device_descriptors) { DCHECK(device_descriptors); DVLOG(1) << __func__; - ScopedComPtr<ICreateDevEnum> dev_enum; + ComPtr<ICreateDevEnum> dev_enum; HRESULT hr = ::CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC, IID_PPV_ARGS(&dev_enum)); if (FAILED(hr)) return; - ScopedComPtr<IEnumMoniker> enum_moniker; + ComPtr<IEnumMoniker> enum_moniker; hr = dev_enum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, enum_moniker.GetAddressOf(), 0); // CreateClassEnumerator returns S_FALSE on some Windows OS @@ -174,10 +175,10 @@ static void GetDeviceDescriptorsDirectShow(Descriptors* device_descriptors) { return; // Enumerate all video capture devices. - for (ScopedComPtr<IMoniker> moniker; + for (ComPtr<IMoniker> moniker; enum_moniker->Next(1, moniker.GetAddressOf(), NULL) == S_OK; moniker.Reset()) { - ScopedComPtr<IPropertyBag> prop_bag; + ComPtr<IPropertyBag> prop_bag; hr = moniker->BindToStorage(0, 0, IID_PPV_ARGS(&prop_bag)); if (FAILED(hr)) continue; @@ -268,13 +269,13 @@ static void GetDeviceSupportedFormatsMediaFoundation( VideoCaptureFormats* formats) { DVLOG(1) << "GetDeviceSupportedFormatsMediaFoundation for " << descriptor.display_name; - ScopedComPtr<IMFMediaSource> source; + ComPtr<IMFMediaSource> source; if (!CreateVideoCaptureDeviceMediaFoundation(descriptor.device_id.c_str(), source.GetAddressOf())) { return; } - base::win::ScopedComPtr<IMFSourceReader> reader; + ComPtr<IMFSourceReader> reader; HRESULT hr = MFCreateSourceReaderFromMediaSource(source.Get(), NULL, reader.GetAddressOf()); if (FAILED(hr)) { @@ -284,7 +285,7 @@ static void GetDeviceSupportedFormatsMediaFoundation( } DWORD stream_index = 0; - ScopedComPtr<IMFMediaType> type; + ComPtr<IMFMediaType> type; while (SUCCEEDED(reader->GetNativeMediaType(kFirstVideoStream, stream_index, type.GetAddressOf()))) { UINT32 width, height; @@ -350,7 +351,7 @@ std::unique_ptr<VideoCaptureDevice> VideoCaptureDeviceFactoryWin::CreateDevice( DCHECK(PlatformSupportsMediaFoundation()); device.reset(new VideoCaptureDeviceMFWin(device_descriptor)); DVLOG(1) << " MediaFoundation Device: " << device_descriptor.display_name; - ScopedComPtr<IMFMediaSource> source; + ComPtr<IMFMediaSource> source; if (!CreateVideoCaptureDeviceMediaFoundation( device_descriptor.device_id.c_str(), source.GetAddressOf())) { return std::unique_ptr<VideoCaptureDevice>(); diff --git a/chromium/media/capture/video/win/video_capture_device_mf_win.cc b/chromium/media/capture/video/win/video_capture_device_mf_win.cc index b4a4719faf2..73a144b36d6 100644 --- a/chromium/media/capture/video/win/video_capture_device_mf_win.cc +++ b/chromium/media/capture/video/win/video_capture_device_mf_win.cc @@ -21,7 +21,6 @@ #include "media/capture/video/win/sink_filter_win.h" using base::win::ScopedCoMem; -using base::win::ScopedComPtr; namespace media { @@ -60,7 +59,7 @@ static bool FillFormat(IMFMediaType* type, VideoCaptureFormat* format) { HRESULT FillCapabilities(IMFSourceReader* source, CapabilityList* capabilities) { DWORD stream_index = 0; - ScopedComPtr<IMFMediaType> type; + Microsoft::WRL::ComPtr<IMFMediaType> type; HRESULT hr; while (SUCCEEDED(hr = source->GetNativeMediaType( kFirstVideoStream, stream_index, type.GetAddressOf()))) { @@ -122,7 +121,7 @@ class MFReaderCallback final sample->GetBufferCount(&count); for (DWORD i = 0; i < count; ++i) { - ScopedComPtr<IMFMediaBuffer> buffer; + Microsoft::WRL::ComPtr<IMFMediaBuffer> buffer; sample->GetBufferByIndex(i, buffer.GetAddressOf()); if (buffer.Get()) { DWORD length = 0, max_length = 0; @@ -197,11 +196,11 @@ VideoCaptureDeviceMFWin::~VideoCaptureDeviceMFWin() { } bool VideoCaptureDeviceMFWin::Init( - const base::win::ScopedComPtr<IMFMediaSource>& source) { + const Microsoft::WRL::ComPtr<IMFMediaSource>& source) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK(!reader_.Get()); - ScopedComPtr<IMFAttributes> attributes; + Microsoft::WRL::ComPtr<IMFAttributes> attributes; MFCreateAttributes(attributes.GetAddressOf(), 1); DCHECK(attributes.Get()); @@ -229,7 +228,7 @@ void VideoCaptureDeviceMFWin::AllocateAndStart( if (SUCCEEDED(hr)) { const CapabilityWin found_capability = GetBestMatchedCapability(params.requested_format, capabilities); - ScopedComPtr<IMFMediaType> type; + Microsoft::WRL::ComPtr<IMFMediaType> type; hr = reader_->GetNativeMediaType(kFirstVideoStream, found_capability.stream_index, type.GetAddressOf()); diff --git a/chromium/media/capture/video/win/video_capture_device_mf_win.h b/chromium/media/capture/video/win/video_capture_device_mf_win.h index 06fcdb311ee..93534f9dfb4 100644 --- a/chromium/media/capture/video/win/video_capture_device_mf_win.h +++ b/chromium/media/capture/video/win/video_capture_device_mf_win.h @@ -12,13 +12,13 @@ #include <mfidl.h> #include <mfreadwrite.h> #include <stdint.h> +#include <wrl/client.h> #include <vector> #include "base/macros.h" #include "base/sequence_checker.h" #include "base/synchronization/lock.h" -#include "base/win/scoped_comptr.h" #include "media/capture/capture_export.h" #include "media/capture/video/video_capture_device.h" @@ -44,7 +44,7 @@ class CAPTURE_EXPORT VideoCaptureDeviceMFWin : public VideoCaptureDevice { ~VideoCaptureDeviceMFWin() override; // Opens the device driver for this device. - bool Init(const base::win::ScopedComPtr<IMFMediaSource>& source); + bool Init(const Microsoft::WRL::ComPtr<IMFMediaSource>& source); // VideoCaptureDevice implementation. void AllocateAndStart( @@ -63,12 +63,12 @@ class CAPTURE_EXPORT VideoCaptureDeviceMFWin : public VideoCaptureDevice { void OnError(const base::Location& from_here, HRESULT hr); VideoCaptureDeviceDescriptor descriptor_; - base::win::ScopedComPtr<IMFActivate> device_; + Microsoft::WRL::ComPtr<IMFActivate> device_; scoped_refptr<MFReaderCallback> callback_; base::Lock lock_; // Used to guard the below variables. std::unique_ptr<VideoCaptureDevice::Client> client_; - base::win::ScopedComPtr<IMFSourceReader> reader_; + Microsoft::WRL::ComPtr<IMFSourceReader> reader_; VideoCaptureFormat capture_format_; bool capture_; diff --git a/chromium/media/capture/video/win/video_capture_device_win.cc b/chromium/media/capture/video/win/video_capture_device_win.cc index f0c76738a1b..e1e9ac72d22 100644 --- a/chromium/media/capture/video/win/video_capture_device_win.cc +++ b/chromium/media/capture/video/win/video_capture_device_win.cc @@ -19,8 +19,8 @@ #include "media/base/timestamp_constants.h" #include "media/capture/video/blob_utils.h" +using Microsoft::WRL::ComPtr; using base::win::ScopedCoMem; -using base::win::ScopedComPtr; using base::win::ScopedVariant; namespace media { @@ -40,7 +40,7 @@ namespace media { bool PinMatchesCategory(IPin* pin, REFGUID category) { DCHECK(pin); bool found = false; - ScopedComPtr<IKsPropertySet> ks_property; + ComPtr<IKsPropertySet> ks_property; HRESULT hr = pin->QueryInterface(IID_PPV_ARGS(&ks_property)); if (SUCCEEDED(hr)) { GUID pin_category; @@ -106,7 +106,7 @@ void VideoCaptureDeviceWin::GetDeviceCapabilityList( const std::string& device_id, bool query_detailed_frame_rates, CapabilityList* out_capability_list) { - base::win::ScopedComPtr<IBaseFilter> capture_filter; + ComPtr<IBaseFilter> capture_filter; HRESULT hr = VideoCaptureDeviceWin::GetDeviceFilter( device_id, capture_filter.GetAddressOf()); if (!capture_filter.Get()) { @@ -115,9 +115,8 @@ void VideoCaptureDeviceWin::GetDeviceCapabilityList( return; } - base::win::ScopedComPtr<IPin> output_capture_pin( - VideoCaptureDeviceWin::GetPin(capture_filter.Get(), PINDIR_OUTPUT, - PIN_CATEGORY_CAPTURE, GUID_NULL)); + ComPtr<IPin> output_capture_pin(VideoCaptureDeviceWin::GetPin( + capture_filter.Get(), PINDIR_OUTPUT, PIN_CATEGORY_CAPTURE, GUID_NULL)); if (!output_capture_pin.Get()) { DLOG(ERROR) << "Failed to get capture output pin"; return; @@ -129,11 +128,11 @@ void VideoCaptureDeviceWin::GetDeviceCapabilityList( // static void VideoCaptureDeviceWin::GetPinCapabilityList( - base::win::ScopedComPtr<IBaseFilter> capture_filter, - base::win::ScopedComPtr<IPin> output_capture_pin, + ComPtr<IBaseFilter> capture_filter, + ComPtr<IPin> output_capture_pin, bool query_detailed_frame_rates, CapabilityList* out_capability_list) { - ScopedComPtr<IAMStreamConfig> stream_config; + ComPtr<IAMStreamConfig> stream_config; HRESULT hr = output_capture_pin.CopyTo(stream_config.GetAddressOf()); if (FAILED(hr)) { DLOG(ERROR) << "Failed to get IAMStreamConfig interface from " @@ -143,7 +142,7 @@ void VideoCaptureDeviceWin::GetPinCapabilityList( } // Get interface used for getting the frame rate. - ScopedComPtr<IAMVideoControl> video_control; + ComPtr<IAMVideoControl> video_control; hr = capture_filter.CopyTo(video_control.GetAddressOf()); int count = 0, size = 0; @@ -224,13 +223,13 @@ HRESULT VideoCaptureDeviceWin::GetDeviceFilter(const std::string& device_id, IBaseFilter** filter) { DCHECK(filter); - ScopedComPtr<ICreateDevEnum> dev_enum; + ComPtr<ICreateDevEnum> dev_enum; HRESULT hr = ::CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC, IID_PPV_ARGS(&dev_enum)); if (FAILED(hr)) return hr; - ScopedComPtr<IEnumMoniker> enum_moniker; + ComPtr<IEnumMoniker> enum_moniker; hr = dev_enum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, enum_moniker.GetAddressOf(), 0); // CreateClassEnumerator returns S_FALSE on some Windows OS @@ -238,11 +237,11 @@ HRESULT VideoCaptureDeviceWin::GetDeviceFilter(const std::string& device_id, if (hr != S_OK) return hr; - ScopedComPtr<IBaseFilter> capture_filter; - for (ScopedComPtr<IMoniker> moniker; + ComPtr<IBaseFilter> capture_filter; + for (ComPtr<IMoniker> moniker; enum_moniker->Next(1, moniker.GetAddressOf(), NULL) == S_OK; moniker.Reset()) { - ScopedComPtr<IPropertyBag> prop_bag; + ComPtr<IPropertyBag> prop_bag; hr = moniker->BindToStorage(0, 0, IID_PPV_ARGS(&prop_bag)); if (FAILED(hr)) continue; @@ -281,12 +280,12 @@ HRESULT VideoCaptureDeviceWin::GetDeviceFilter(const std::string& device_id, // Finds an IPin on an IBaseFilter given the direction, Category and/or Major // Type. If either |category| or |major_type| are GUID_NULL, they are ignored. // static -ScopedComPtr<IPin> VideoCaptureDeviceWin::GetPin(IBaseFilter* filter, - PIN_DIRECTION pin_dir, - REFGUID category, - REFGUID major_type) { - ScopedComPtr<IPin> pin; - ScopedComPtr<IEnumPins> pin_enum; +ComPtr<IPin> VideoCaptureDeviceWin::GetPin(IBaseFilter* filter, + PIN_DIRECTION pin_dir, + REFGUID category, + REFGUID major_type) { + ComPtr<IPin> pin; + ComPtr<IEnumPins> pin_enum; HRESULT hr = filter->EnumPins(pin_enum.GetAddressOf()); if (pin_enum.Get() == NULL) return pin; @@ -472,7 +471,7 @@ bool VideoCaptureDeviceWin::Init() { // require certain filters upstream from the WDM Video Capture filter, such as // a TV Tuner filter or an Analog Video Crossbar filter. We try using the more // prevalent MEDIATYPE_Interleaved first. - base::win::ScopedComPtr<IAMStreamConfig> stream_config; + ComPtr<IAMStreamConfig> stream_config; hr = capture_graph_builder_->FindInterface( &PIN_CATEGORY_CAPTURE, &MEDIATYPE_Interleaved, capture_filter_.Get(), @@ -506,7 +505,7 @@ void VideoCaptureDeviceWin::AllocateAndStart( std::min(params.requested_format.frame_rate, found_capability.supported_format.frame_rate); - ScopedComPtr<IAMStreamConfig> stream_config; + ComPtr<IAMStreamConfig> stream_config; HRESULT hr = output_capture_pin_.CopyTo(stream_config.GetAddressOf()); if (FAILED(hr)) { SetErrorState(FROM_HERE, "Can't get the Capture format settings", hr); @@ -795,7 +794,7 @@ void VideoCaptureDeviceWin::SetPhotoOptions( } bool VideoCaptureDeviceWin::InitializeVideoAndCameraControls() { - base::win::ScopedComPtr<IKsTopologyInfo> info; + ComPtr<IKsTopologyInfo> info; HRESULT hr = capture_filter_.CopyTo(info.GetAddressOf()); if (FAILED(hr)) { SetErrorState(FROM_HERE, "Failed to obtain the topology info.", hr); @@ -876,7 +875,7 @@ void VideoCaptureDeviceWin::SetAntiFlickerInCaptureFilter( power_line_frequency != media::PowerLineFrequency::FREQUENCY_60HZ) { return; } - ScopedComPtr<IKsPropertySet> ks_propset; + ComPtr<IKsPropertySet> ks_propset; DWORD type_support = 0; HRESULT hr; if (SUCCEEDED(hr = capture_filter_.CopyTo(ks_propset.GetAddressOf())) && diff --git a/chromium/media/capture/video/win/video_capture_device_win.h b/chromium/media/capture/video/win/video_capture_device_win.h index 77ca33ccfd4..33166090691 100644 --- a/chromium/media/capture/video/win/video_capture_device_win.h +++ b/chromium/media/capture/video/win/video_capture_device_win.h @@ -13,6 +13,7 @@ #include <dshow.h> #include <stdint.h> #include <vidcap.h> +#include <wrl/client.h> #include <map> #include <string> @@ -20,7 +21,6 @@ #include "base/containers/queue.h" #include "base/macros.h" #include "base/threading/thread_checker.h" -#include "base/win/scoped_comptr.h" #include "media/capture/video/video_capture_device.h" #include "media/capture/video/win/capability_list_win.h" #include "media/capture/video/win/sink_filter_win.h" @@ -61,16 +61,16 @@ class VideoCaptureDeviceWin : public VideoCaptureDevice, bool query_detailed_frame_rates, CapabilityList* out_capability_list); static void GetPinCapabilityList( - base::win::ScopedComPtr<IBaseFilter> capture_filter, - base::win::ScopedComPtr<IPin> output_capture_pin, + Microsoft::WRL::ComPtr<IBaseFilter> capture_filter, + Microsoft::WRL::ComPtr<IPin> output_capture_pin, bool query_detailed_frame_rates, CapabilityList* out_capability_list); static HRESULT GetDeviceFilter(const std::string& device_id, IBaseFilter** filter); - static base::win::ScopedComPtr<IPin> GetPin(IBaseFilter* filter, - PIN_DIRECTION pin_dir, - REFGUID category, - REFGUID major_type); + static Microsoft::WRL::ComPtr<IPin> GetPin(IBaseFilter* filter, + PIN_DIRECTION pin_dir, + REFGUID category, + REFGUID major_type); static VideoPixelFormat TranslateMediaSubtypeToPixelFormat( const GUID& sub_type); @@ -116,14 +116,14 @@ class VideoCaptureDeviceWin : public VideoCaptureDevice, InternalState state_; std::unique_ptr<VideoCaptureDevice::Client> client_; - base::win::ScopedComPtr<IBaseFilter> capture_filter_; + Microsoft::WRL::ComPtr<IBaseFilter> capture_filter_; - base::win::ScopedComPtr<IGraphBuilder> graph_builder_; - base::win::ScopedComPtr<ICaptureGraphBuilder2> capture_graph_builder_; + Microsoft::WRL::ComPtr<IGraphBuilder> graph_builder_; + Microsoft::WRL::ComPtr<ICaptureGraphBuilder2> capture_graph_builder_; - base::win::ScopedComPtr<IMediaControl> media_control_; - base::win::ScopedComPtr<IPin> input_sink_pin_; - base::win::ScopedComPtr<IPin> output_capture_pin_; + Microsoft::WRL::ComPtr<IMediaControl> media_control_; + Microsoft::WRL::ComPtr<IPin> input_sink_pin_; + Microsoft::WRL::ComPtr<IPin> output_capture_pin_; scoped_refptr<SinkFilter> sink_filter_; @@ -132,8 +132,8 @@ class VideoCaptureDeviceWin : public VideoCaptureDevice, VideoCaptureFormat capture_format_; - base::win::ScopedComPtr<ICameraControl> camera_control_; - base::win::ScopedComPtr<IVideoProcAmp> video_control_; + Microsoft::WRL::ComPtr<ICameraControl> camera_control_; + Microsoft::WRL::ComPtr<IVideoProcAmp> video_control_; // These flags keep the manual/auto mode between cycles of SetPhotoOptions(). bool white_balance_mode_manual_; bool exposure_mode_manual_; |