diff --git a/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc b/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc index de0f587..2d899ad 100644 --- a/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc +++ b/content/common/gpu/media/gpu_jpeg_decode_accelerator.cc @@ -20,7 +20,7 @@ #include "media/filters/jpeg_parser.h" #include "ui/gfx/geometry/size.h" -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || defined(OS_LINUX) #if defined(ARCH_CPU_X86_FAMILY) #include "content/common/gpu/media/vaapi_jpeg_decode_accelerator.h" #endif @@ -402,7 +402,7 @@ scoped_ptr GpuJpegDecodeAccelerator::CreateV4L2JDA( const scoped_refptr& io_task_runner) { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create( V4L2Device::kJpegDecoder); if (device) @@ -416,7 +416,7 @@ scoped_ptr GpuJpegDecodeAccelerator::CreateVaapiJDA( const scoped_refptr& io_task_runner) { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) decoder.reset(new VaapiJpegDecodeAccelerator(io_task_runner)); #endif return decoder.Pass(); diff --git a/content/common/gpu/media/gpu_video_decode_accelerator.cc b/content/common/gpu/media/gpu_video_decode_accelerator.cc index ed4d179..446d3b9 100644 --- a/content/common/gpu/media/gpu_video_decode_accelerator.cc +++ b/content/common/gpu/media/gpu_video_decode_accelerator.cc @@ -33,7 +33,7 @@ #include "content/common/gpu/media/dxva_video_decode_accelerator.h" #elif defined(OS_MACOSX) #include "content/common/gpu/media/vt_video_decode_accelerator.h" -#elif defined(OS_CHROMEOS) +#elif defined(OS_CHROMEOS) || defined(OS_LINUX) #if defined(USE_V4L2_CODEC) #include "content/common/gpu/media/v4l2_device.h" #include "content/common/gpu/media/v4l2_slice_video_decode_accelerator.h" @@ -164,7 +164,7 @@ GpuVideoDecodeAccelerator::GetSupportedProfiles() { // can be initialized by corresponding VDA successfully. #if defined(OS_WIN) profiles = DXVAVideoDecodeAccelerator::GetSupportedProfiles(); -#elif defined(OS_CHROMEOS) +#elif defined(OS_CHROMEOS) || defined(OS_LINUX) media::VideoDecodeAccelerator::SupportedProfiles vda_profiles; #if defined(USE_V4L2_CODEC) vda_profiles = V4L2VideoDecodeAccelerator::GetSupportedProfiles(); @@ -389,7 +389,7 @@ GpuVideoDecodeAccelerator::CreateDXVAVDA() { scoped_ptr GpuVideoDecodeAccelerator::CreateV4L2VDA() { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create(V4L2Device::kDecoder); if (device.get()) { decoder.reset(new V4L2VideoDecodeAccelerator( @@ -407,7 +407,7 @@ GpuVideoDecodeAccelerator::CreateV4L2VDA() { scoped_ptr GpuVideoDecodeAccelerator::CreateV4L2SliceVDA() { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create(V4L2Device::kDecoder); if (device.get()) { decoder.reset(new V4L2SliceVideoDecodeAccelerator( @@ -438,7 +438,7 @@ void GpuVideoDecodeAccelerator::BindImage(uint32 client_texture_id, scoped_ptr GpuVideoDecodeAccelerator::CreateVaapiVDA() { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) decoder.reset(new VaapiVideoDecodeAccelerator( make_context_current_, base::Bind(&GpuVideoDecodeAccelerator::BindImage, base::Unretained(this)))); diff --git a/content/common/gpu/media/gpu_video_encode_accelerator.cc b/content/common/gpu/media/gpu_video_encode_accelerator.cc index ef14060..d6fcf77 100644 --- a/content/common/gpu/media/gpu_video_encode_accelerator.cc +++ b/content/common/gpu/media/gpu_video_encode_accelerator.cc @@ -20,7 +20,7 @@ #include "media/base/limits.h" #include "media/base/video_frame.h" -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || defined(OS_LINUX) #if defined(USE_V4L2_CODEC) #include "content/common/gpu/media/v4l2_video_encode_accelerator.h" #endif @@ -197,7 +197,7 @@ GpuVideoEncodeAccelerator::CreateVEAFps() { scoped_ptr GpuVideoEncodeAccelerator::CreateV4L2VEA() { scoped_ptr encoder; -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create(V4L2Device::kEncoder); if (device) encoder.reset(new V4L2VideoEncodeAccelerator(device)); @@ -209,7 +209,7 @@ GpuVideoEncodeAccelerator::CreateV4L2VEA() { scoped_ptr GpuVideoEncodeAccelerator::CreateVaapiVEA() { scoped_ptr encoder; -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); if (!cmd_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode)) encoder.reset(new VaapiVideoEncodeAccelerator()); diff --git a/content/common/gpu/media/jpeg_decode_accelerator_unittest.cc b/content/common/gpu/media/jpeg_decode_accelerator_unittest.cc index fa640b1..09293ef 100644 --- a/content/common/gpu/media/jpeg_decode_accelerator_unittest.cc +++ b/content/common/gpu/media/jpeg_decode_accelerator_unittest.cc @@ -23,7 +23,7 @@ #include "third_party/libyuv/include/libyuv.h" #include "ui/gfx/codec/jpeg_codec.h" -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || defined(OS_LINUX) #if defined(USE_V4L2_CODEC) #include "content/common/gpu/media/v4l2_device.h" #include "content/common/gpu/media/v4l2_jpeg_decode_accelerator.h" @@ -129,10 +129,10 @@ JpegClient::~JpegClient() { } void JpegClient::CreateJpegDecoder() { -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) decoder_.reset( new VaapiJpegDecodeAccelerator(base::ThreadTaskRunnerHandle::Get())); -#elif defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#elif (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create(V4L2Device::kJpegDecoder); if (!device.get()) { @@ -568,7 +568,7 @@ int main(int argc, char** argv) { continue; LOG(FATAL) << "Unexpected switch: " << it->first << ":" << it->second; } -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) content::VaapiWrapper::PreSandboxInitialization(); #endif diff --git a/content/common/gpu/media/video_decode_accelerator_unittest.cc b/content/common/gpu/media/video_decode_accelerator_unittest.cc index 9a8b774..f759dbd 100644 --- a/content/common/gpu/media/video_decode_accelerator_unittest.cc +++ b/content/common/gpu/media/video_decode_accelerator_unittest.cc @@ -58,7 +58,7 @@ #if defined(OS_WIN) #include "base/win/windows_version.h" #include "content/common/gpu/media/dxva_video_decode_accelerator.h" -#elif defined(OS_CHROMEOS) +#elif defined(OS_CHROMEOS) || defined(OS_LINUX) #if defined(USE_V4L2_CODEC) #include "content/common/gpu/media/v4l2_device.h" #include "content/common/gpu/media/v4l2_slice_video_decode_accelerator.h" @@ -532,7 +532,7 @@ GLRenderingVDAClient::CreateDXVAVDA() { scoped_ptr GLRenderingVDAClient::CreateV4L2VDA() { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create(V4L2Device::kDecoder); if (device.get()) { base::WeakPtr weak_client = AsWeakPtr(); @@ -549,7 +549,7 @@ GLRenderingVDAClient::CreateV4L2VDA() { scoped_ptr GLRenderingVDAClient::CreateV4L2SliceVDA() { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC) scoped_refptr device = V4L2Device::Create(V4L2Device::kDecoder); if (device.get()) { base::WeakPtr weak_client = AsWeakPtr(); @@ -566,7 +566,7 @@ GLRenderingVDAClient::CreateV4L2SliceVDA() { scoped_ptr GLRenderingVDAClient::CreateVaapiVDA() { scoped_ptr decoder; -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) decoder.reset(new VaapiVideoDecodeAccelerator( base::Bind(&DoNothingReturnTrue), base::Bind(&GLRenderingVDAClient::BindImage, base::Unretained(this)))); @@ -1650,7 +1650,7 @@ int main(int argc, char **argv) { ui::OzonePlatform::InitializeForUI(); #endif -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) content::VaapiWrapper::PreSandboxInitialization(); #endif diff --git a/content/common/gpu/media/video_encode_accelerator_unittest.cc b/content/common/gpu/media/video_encode_accelerator_unittest.cc index 1775614..a33b4e5 100644 --- a/content/common/gpu/media/video_encode_accelerator_unittest.cc +++ b/content/common/gpu/media/video_encode_accelerator_unittest.cc @@ -40,7 +40,7 @@ #include "media/video/video_encode_accelerator.h" #include "testing/gtest/include/gtest/gtest.h" -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || defined(OS_LINUX) #if defined(ARCH_CPU_ARMEL) || (defined(USE_OZONE) && defined(USE_V4L2_CODEC)) #include "content/common/gpu/media/v4l2_video_encode_accelerator.h" #endif @@ -1044,7 +1044,7 @@ scoped_ptr VEAClient::CreateFakeVEA() { scoped_ptr VEAClient::CreateV4L2VEA() { scoped_ptr encoder; -#if defined(OS_CHROMEOS) && (defined(ARCH_CPU_ARMEL) || \ +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && (defined(ARCH_CPU_ARMEL) || \ (defined(USE_OZONE) && defined(USE_V4L2_CODEC))) scoped_refptr device = V4L2Device::Create(V4L2Device::kEncoder); if (device) @@ -1055,7 +1055,7 @@ scoped_ptr VEAClient::CreateV4L2VEA() { scoped_ptr VEAClient::CreateVaapiVEA() { scoped_ptr encoder; -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) encoder.reset(new VaapiVideoEncodeAccelerator()); #endif return encoder.Pass(); @@ -1761,7 +1761,7 @@ int main(int argc, char** argv) { LOG(FATAL) << "--measure_latency requires --run_at_fps enabled to work."; } -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) +#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY) content::VaapiWrapper::PreSandboxInitialization(); #endif diff --git a/content/content_common.gypi b/content/content_common.gypi index f9236da..ad1654d 100644 --- a/content/content_common.gypi +++ b/content/content_common.gypi @@ -821,7 +821,7 @@ 'public/common/webrtc_ip_handling_policy.h', ], }], - ['use_v4lplugin==1 and chromeos==1', { + ['use_v4lplugin==1 and (chromeos==1 or desktop_linux==1)', { 'defines': [ 'USE_LIBV4L2' ], @@ -865,7 +865,7 @@ }, ], }], - ['chromeos==1', { + ['(chromeos==1 or desktop_linux==1)', { 'sources': [ 'common/gpu/media/accelerated_video_decoder.h', 'common/gpu/media/h264_decoder.cc', @@ -882,7 +882,7 @@ 'common/gpu/media/vp9_picture.h', ], }], - ['chromeos==1 and use_v4l2_codec==1', { + ['(chromeos==1 or desktop_linux==1) and use_v4l2_codec==1', { 'direct_dependent_settings': { 'defines': [ 'USE_V4L2_CODEC' @@ -915,13 +915,13 @@ '<(DEPTH)/third_party/khronos', ], }], - ['target_arch == "arm" and chromeos == 1', { + ['target_arch == "arm" and (chromeos == 1 or desktop_linux == 1)', { 'sources': [ 'common/gpu/media/tegra_v4l2_device.cc', 'common/gpu/media/tegra_v4l2_device.h', ], }], - ['target_arch != "arm" and chromeos == 1', { + ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', { 'dependencies': [ '../media/media.gyp:media', '../third_party/libyuv/libyuv.gyp:libyuv', diff --git a/content/content_gpu.gypi b/content/content_gpu.gypi index 5516ed4..ff2f410 100644 --- a/content/content_gpu.gypi +++ b/content/content_gpu.gypi @@ -38,7 +38,7 @@ ], }, }], - ['target_arch!="arm" and chromeos == 1', { + ['target_arch!="arm" and (chromeos == 1 or desktop_linux == 1)', { 'include_dirs': [ '<(DEPTH)/third_party/libva', ], diff --git a/content/content_tests.gypi b/content/content_tests.gypi index 929915b..dc7b77e 100644 --- a/content/content_tests.gypi +++ b/content/content_tests.gypi @@ -1652,7 +1652,7 @@ }, ], }], - ['chromeos==1 or OS=="win" or OS=="android"', { + ['(chromeos==1 or desktop_linux==1) or OS=="win" or OS=="android"', { 'targets': [ { 'target_name': 'video_decode_accelerator_unittest', @@ -1721,7 +1721,7 @@ '../ui/gfx/x/gfx_x11.gyp:gfx_x11', ], }], - ['use_ozone==1 and chromeos==1', { + ['use_ozone==1 and (chromeos==1 or desktop_linux == 1)', { 'dependencies': [ '../ui/display/display.gyp:display', # Used by rendering_helper.cc '../ui/ozone/ozone.gyp:ozone', # Used by rendering_helper.cc @@ -1733,7 +1733,7 @@ }, ] }], - ['chromeos==1 and target_arch != "arm"', { + ['(chromeos==1 or desktop_linux==1) and target_arch != "arm"', { 'targets': [ { 'target_name': 'vaapi_jpeg_decoder_unittest', @@ -1765,7 +1765,7 @@ } ] }], - ['chromeos==1', { + ['chromeos==1 or desktop_linux==1', { 'targets': [ { 'target_name': 'video_encode_accelerator_unittest', diff --git a/content/public/common/content_switches.cc b/content/public/common/content_switches.cc index c449382..05ce87a 100644 --- a/content/public/common/content_switches.cc +++ b/content/public/common/content_switches.cc @@ -931,7 +931,9 @@ const char kDisableWebAudio[] = "disable-webaudio"; #if defined(OS_CHROMEOS) // Disables panel fitting (used for mirror mode). const char kDisablePanelFitting[] = "disable-panel-fitting"; +#endif +#if defined(OS_CHROMEOS) || defined(OS_LINUX) // Disables VA-API accelerated video encode. const char kDisableVaapiAcceleratedVideoEncode[] = "disable-vaapi-accelerated-video-encode"; diff --git a/content/public/common/content_switches.h b/content/public/common/content_switches.h index 9bd5dbd..2341f47 100644 --- a/content/public/common/content_switches.h +++ b/content/public/common/content_switches.h @@ -275,6 +275,9 @@ CONTENT_EXPORT extern const char kDisableWebAudio[]; #if defined(OS_CHROMEOS) CONTENT_EXPORT extern const char kDisablePanelFitting[]; +#endif + +#if defined(OS_CHROMEOS) || defined(OS_LINUX) CONTENT_EXPORT extern const char kDisableVaapiAcceleratedVideoEncode[]; #endif diff --git a/media/media.gyp b/media/media.gyp index b56a23b..b643096 100644 --- a/media/media.gyp +++ b/media/media.gyp @@ -764,7 +764,7 @@ ], }], # For VaapiVideoEncodeAccelerator. - ['target_arch != "arm" and chromeos == 1', { + ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', { 'sources': [ 'filters/h264_bitstream_buffer.cc', 'filters/h264_bitstream_buffer.h', @@ -1398,7 +1398,7 @@ 'cdm/cdm_adapter_unittest.cc', ], }], - ['target_arch != "arm" and chromeos == 1 and use_x11 == 1', { + ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1) and use_x11 == 1', { 'sources': [ 'filters/h264_bitstream_buffer_unittest.cc', ],