mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
chromium: update to 53.0.2785.92
This commit is contained in:
parent
087b6688e7
commit
4bdaa3c977
@ -1,3 +1,6 @@
|
|||||||
|
8.0.104
|
||||||
|
- Update to 53.0.2785.92
|
||||||
|
|
||||||
8.0.103
|
8.0.103
|
||||||
- add xdotool
|
- add xdotool
|
||||||
|
|
||||||
|
@ -19,8 +19,8 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
PKG_NAME="chromium"
|
PKG_NAME="chromium"
|
||||||
PKG_VERSION="50.0.2661.75"
|
PKG_VERSION="53.0.2785.92"
|
||||||
PKG_REV="103"
|
PKG_REV="104"
|
||||||
PKG_ARCH="x86_64"
|
PKG_ARCH="x86_64"
|
||||||
PKG_LICENSE="Mixed"
|
PKG_LICENSE="Mixed"
|
||||||
PKG_SITE="http://www.chromium.org/Home"
|
PKG_SITE="http://www.chromium.org/Home"
|
||||||
@ -29,7 +29,7 @@ PKG_DEPENDS_TARGET="toolchain pciutils dbus libXcomposite libXcursor libXtst als
|
|||||||
PKG_PRIORITY="optional"
|
PKG_PRIORITY="optional"
|
||||||
PKG_SECTION="browser"
|
PKG_SECTION="browser"
|
||||||
PKG_SHORTDESC="Chromium Browser: the open-source web browser from Google"
|
PKG_SHORTDESC="Chromium Browser: the open-source web browser from Google"
|
||||||
PKG_LONGDESC="Chromium Browser: the open-source web browser from Google"
|
PKG_LONGDESC="Chromium Browser ($PKG_VERSION): the open-source web browser from Google"
|
||||||
PKG_AUTORECONF="no"
|
PKG_AUTORECONF="no"
|
||||||
|
|
||||||
PKG_IS_ADDON="yes"
|
PKG_IS_ADDON="yes"
|
||||||
@ -45,6 +45,8 @@ pre_make_target() {
|
|||||||
|
|
||||||
# https://groups.google.com/a/chromium.org/d/topic/chromium-packagers/9JX1N2nf4PU/discussion
|
# https://groups.google.com/a/chromium.org/d/topic/chromium-packagers/9JX1N2nf4PU/discussion
|
||||||
touch chrome/test/data/webui/i18n_process_css_test.html
|
touch chrome/test/data/webui/i18n_process_css_test.html
|
||||||
|
|
||||||
|
sed -i -e 's/@WIDEVINE_VERSION@/Pinkie Pie/' third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||||
}
|
}
|
||||||
|
|
||||||
make_target() {
|
make_target() {
|
||||||
|
@ -1,46 +1,3 @@
|
|||||||
diff -upr chromium-48.0.2564.82.orig/chrome/common/chrome_content_client.cc chromium-48.0.2564.82/chrome/common/chrome_content_client.cc
|
|
||||||
--- chromium-48.0.2564.82.orig/chrome/common/chrome_content_client.cc 2016-01-20 22:01:20.000000000 +0200
|
|
||||||
+++ chromium-48.0.2564.82/chrome/common/chrome_content_client.cc 2016-01-21 20:02:02.788936626 +0200
|
|
||||||
@@ -158,7 +158,12 @@ void ComputeBuiltInPlugins(std::vector<c
|
|
||||||
#if defined(WIDEVINE_CDM_AVAILABLE) && defined(ENABLE_PEPPER_CDMS) && \
|
|
||||||
!defined(WIDEVINE_CDM_IS_COMPONENT)
|
|
||||||
static bool skip_widevine_cdm_file_check = false;
|
|
||||||
- if (PathService::Get(chrome::FILE_WIDEVINE_CDM_ADAPTER, &path)) {
|
|
||||||
+ bool widevine_cdm_present =
|
|
||||||
+ skip_widevine_cdm_file_check ||
|
|
||||||
+ (PathService::Get(chrome::FILE_WIDEVINE_CDM, &path) &&
|
|
||||||
+ base::PathExists(path));
|
|
||||||
+ if (widevine_cdm_present &&
|
|
||||||
+ PathService::Get(chrome::FILE_WIDEVINE_CDM_ADAPTER, &path)) {
|
|
||||||
if (skip_widevine_cdm_file_check || base::PathExists(path)) {
|
|
||||||
content::PepperPluginInfo widevine_cdm;
|
|
||||||
widevine_cdm.is_out_of_process = true;
|
|
||||||
diff -upr chromium-48.0.2564.82.orig/chrome/common/chrome_paths.cc chromium-48.0.2564.82/chrome/common/chrome_paths.cc
|
|
||||||
--- chromium-48.0.2564.82.orig/chrome/common/chrome_paths.cc 2016-01-20 22:01:20.000000000 +0200
|
|
||||||
+++ chromium-48.0.2564.82/chrome/common/chrome_paths.cc 2016-01-21 19:18:51.287978456 +0200
|
|
||||||
@@ -375,6 +375,11 @@ bool PathProvider(int key, base::FilePat
|
|
||||||
return false;
|
|
||||||
cur = cur.AppendASCII(kWidevineCdmAdapterFileName);
|
|
||||||
break;
|
|
||||||
+ case chrome::FILE_WIDEVINE_CDM:
|
|
||||||
+ if (!GetInternalPluginsDirectory(&cur))
|
|
||||||
+ return false;
|
|
||||||
+ cur = cur.AppendASCII(kWidevineCdmFileName);
|
|
||||||
+ break;
|
|
||||||
#endif // defined(WIDEVINE_CDM_AVAILABLE) && defined(ENABLE_PEPPER_CDMS)
|
|
||||||
case chrome::FILE_RESOURCES_PACK:
|
|
||||||
#if defined(OS_MACOSX) && !defined(OS_IOS)
|
|
||||||
diff -upr chromium-48.0.2564.82.orig/chrome/common/chrome_paths.h chromium-48.0.2564.82/chrome/common/chrome_paths.h
|
|
||||||
--- chromium-48.0.2564.82.orig/chrome/common/chrome_paths.h 2016-01-14 03:49:22.000000000 +0200
|
|
||||||
+++ chromium-48.0.2564.82/chrome/common/chrome_paths.h 2016-01-21 19:18:51.287978456 +0200
|
|
||||||
@@ -99,6 +99,7 @@ enum {
|
|
||||||
DIR_COMPONENT_WIDEVINE_CDM, // Directory that contains component-updated
|
|
||||||
// Widevine CDM files.
|
|
||||||
FILE_WIDEVINE_CDM_ADAPTER, // Full path to the Widevine CDM adapter file.
|
|
||||||
+ FILE_WIDEVINE_CDM, // Full path to the Widevine CDM file.
|
|
||||||
FILE_RESOURCES_PACK, // Full path to the .pak file containing
|
|
||||||
// binary data (e.g., html files and images
|
|
||||||
// used by internal pages).
|
|
||||||
diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||||
--- chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-14 01:05:17.000000000 +0200
|
--- chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-14 01:05:17.000000000 +0200
|
||||||
+++ chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-21 19:18:51.287978456 +0200
|
+++ chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-21 19:18:51.287978456 +0200
|
||||||
@ -48,6 +5,6 @@ diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_
|
|||||||
|
|
||||||
#define WIDEVINE_CDM_AVAILABLE
|
#define WIDEVINE_CDM_AVAILABLE
|
||||||
|
|
||||||
+#define WIDEVINE_CDM_VERSION_STRING "Pinkie Pie"
|
+#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@"
|
||||||
+
|
+
|
||||||
#endif // WIDEVINE_CDM_VERSION_H_
|
#endif // WIDEVINE_CDM_VERSION_H_
|
||||||
|
@ -0,0 +1,15 @@
|
|||||||
|
diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp
|
||||||
|
--- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400
|
||||||
|
+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400
|
||||||
|
@@ -41,6 +41,11 @@
|
||||||
|
#include <errno.h>
|
||||||
|
#include <sys/mman.h>
|
||||||
|
|
||||||
|
+#if OS(LINUX) && defined(MADV_FREE)
|
||||||
|
+// Added in Linux 4.5, but it breaks the sandbox.
|
||||||
|
+#undef MADV_FREE
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#ifndef MADV_FREE
|
||||||
|
#define MADV_FREE MADV_DONTNEED
|
||||||
|
#endif
|
@ -1,89 +1,34 @@
|
|||||||
Description: Enables using VA-API hardware acceleration in Linux. The patch for bpf_gpu_policy_linux.cc initially came from https://codereview.chromium.org/15955009/diff/92001/content/common/sandbox_linux/bpf_gpu_policy_linux.cc.
|
From 0cc8e208feef2c49b8f2344005e97684b5e84012 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Knut Andre Tidemann <Knut.Andre.Tidemann@jotron.com>
|
||||||
|
Date: Mon, 29 Aug 2016 20:57:27 +0200
|
||||||
|
Subject: [PATCH] Enable VAAPI on Linux.
|
||||||
|
|
||||||
Index: dev.wily/content/common/gpu/media/gpu_video_decode_accelerator.cc
|
---
|
||||||
===================================================================
|
content/content_gpu.gypi | 2 +-
|
||||||
--- dev.wily.orig/content/common/gpu/media/gpu_video_decode_accelerator.cc
|
content/public/common/content_switches.cc | 2 ++
|
||||||
+++ dev.wily/content/common/gpu/media/gpu_video_decode_accelerator.cc
|
content/public/common/content_switches.h | 3 +++
|
||||||
@@ -34,7 +34,7 @@
|
gpu/command_buffer/service/gpu_preferences.h | 2 +-
|
||||||
#include "content/common/gpu/media/dxva_video_decode_accelerator_win.h"
|
gpu/config/software_rendering_list_json.cc | 11 -----------
|
||||||
#elif defined(OS_MACOSX)
|
media/gpu/BUILD.gn | 10 +++++-----
|
||||||
#include "content/common/gpu/media/vt_video_decode_accelerator_mac.h"
|
media/gpu/gpu_video_decode_accelerator_factory_impl.cc | 12 ++++++------
|
||||||
-#elif defined(OS_CHROMEOS)
|
media/gpu/gpu_video_decode_accelerator_factory_impl.h | 4 ++--
|
||||||
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
media/gpu/ipc/service/BUILD.gn | 2 +-
|
||||||
#if defined(USE_V4L2_CODEC)
|
media/gpu/ipc/service/gpu_jpeg_decode_accelerator.cc | 6 +++---
|
||||||
#include "content/common/gpu/media/v4l2_device.h"
|
media/gpu/ipc/service/gpu_video_decode_accelerator.cc | 4 ++--
|
||||||
#include "content/common/gpu/media/v4l2_slice_video_decode_accelerator.h"
|
media/gpu/ipc/service/gpu_video_encode_accelerator.cc | 10 +++++-----
|
||||||
@@ -164,7 +164,7 @@
|
media/gpu/ipc/service/gpu_video_encode_accelerator.h | 4 ++--
|
||||||
#if defined(OS_WIN)
|
media/gpu/jpeg_decode_accelerator_unittest.cc | 8 ++++----
|
||||||
capabilities.supported_profiles =
|
media/gpu/video_decode_accelerator_unittest.cc | 4 ++--
|
||||||
DXVAVideoDecodeAccelerator::GetSupportedProfiles();
|
media/gpu/video_encode_accelerator_unittest.cc | 10 +++++-----
|
||||||
-#elif defined(OS_CHROMEOS)
|
media/media.gyp | 12 ++++++------
|
||||||
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
media/media_gpu.gypi | 8 ++++----
|
||||||
media::VideoDecodeAccelerator::SupportedProfiles vda_profiles;
|
18 files changed, 54 insertions(+), 60 deletions(-)
|
||||||
#if defined(USE_V4L2_CODEC)
|
|
||||||
vda_profiles = V4L2VideoDecodeAccelerator::GetSupportedProfiles();
|
diff --git a/content/content_gpu.gypi b/content/content_gpu.gypi
|
||||||
@@ -251,6 +251,8 @@ void GpuVideoDecodeAccelerator::Initiali
|
index f2a21d9..f9df0e6 100644
|
||||||
}
|
--- a/content/content_gpu.gypi
|
||||||
#endif
|
+++ b/content/content_gpu.gypi
|
||||||
|
@@ -49,7 +49,7 @@
|
||||||
+ VLOG(1) << "Initializing GPU video decode accelerator.";
|
|
||||||
+
|
|
||||||
// Array of Create..VDA() function pointers, maybe applicable to the current
|
|
||||||
// platform. This list is ordered by priority of use and it should be the
|
|
||||||
// same as the order of querying supported profiles of VDAs.
|
|
||||||
@@ -361,11 +361,14 @@
|
|
||||||
&GpuVideoDecodeAccelerator::CreateAndroidVDA};
|
|
||||||
|
|
||||||
for (const auto& create_vda_function : create_vda_fps) {
|
|
||||||
+ VLOG(1) << "Testing create_vda_function.";
|
|
||||||
video_decode_accelerator_ = (this->*create_vda_function)();
|
|
||||||
if (!video_decode_accelerator_ ||
|
|
||||||
!video_decode_accelerator_->Initialize(config, this))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
+ VLOG(1) << "Initialization successful.";
|
|
||||||
+
|
|
||||||
if (video_decode_accelerator_->CanDecodeOnIOThread()) {
|
|
||||||
filter_ = new MessageFilter(this, host_route_id_);
|
|
||||||
stub_->channel()->AddFilter(filter_.get());
|
|
||||||
@@ -346,7 +351,9 @@ void GpuVideoDecodeAccelerator::BindImag
|
|
||||||
scoped_ptr<media::VideoDecodeAccelerator>
|
|
||||||
GpuVideoDecodeAccelerator::CreateVaapiVDA() {
|
|
||||||
scoped_ptr<media::VideoDecodeAccelerator> decoder;
|
|
||||||
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
|
||||||
+ VLOG(1) << "About to create new VAAPI video decode accelerator.";
|
|
||||||
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
|
||||||
+ VLOG(1) << "Creating new VAAPI video decode accelerator.";
|
|
||||||
decoder.reset(new VaapiVideoDecodeAccelerator(
|
|
||||||
make_context_current_, base::Bind(&GpuVideoDecodeAccelerator::BindImage,
|
|
||||||
base::Unretained(this))));
|
|
||||||
Index: dev.wily/content/content_common.gypi
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/content_common.gypi
|
|
||||||
+++ dev.wily/content/content_common.gypi
|
|
||||||
@@ -856,7 +856,7 @@
|
|
||||||
},
|
|
||||||
],
|
|
||||||
}],
|
|
||||||
- ['chromeos==1', {
|
|
||||||
+ ['chromeos==1 or desktop_linux==1', {
|
|
||||||
'sources': [
|
|
||||||
'common/gpu/media/accelerated_video_decoder.h',
|
|
||||||
'common/gpu/media/h264_decoder.cc',
|
|
||||||
@@ -908,7 +908,7 @@
|
|
||||||
'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',
|
|
||||||
Index: dev.wily/content/content_gpu.gypi
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/content_gpu.gypi
|
|
||||||
+++ dev.wily/content/content_gpu.gypi
|
|
||||||
@@ -36,7 +36,7 @@
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
}],
|
}],
|
||||||
@ -92,24 +37,11 @@ Index: dev.wily/content/content_gpu.gypi
|
|||||||
'include_dirs': [
|
'include_dirs': [
|
||||||
'<(DEPTH)/third_party/libva',
|
'<(DEPTH)/third_party/libva',
|
||||||
],
|
],
|
||||||
Index: dev.wily/content/content_tests.gypi
|
diff --git a/content/public/common/content_switches.cc b/content/public/common/content_switches.cc
|
||||||
===================================================================
|
index 244e371..48cdffb 100644
|
||||||
--- dev.wily.orig/content/content_tests.gypi
|
--- a/content/public/common/content_switches.cc
|
||||||
+++ dev.wily/content/content_tests.gypi
|
+++ b/content/public/common/content_switches.cc
|
||||||
@@ -1719,7 +1719,7 @@
|
@@ -970,7 +970,9 @@ const char kDisableAudioSupportForDesktopShare[] =
|
||||||
},
|
|
||||||
]
|
|
||||||
}],
|
|
||||||
- ['chromeos==1 and target_arch != "arm"', {
|
|
||||||
+ ['(chromeos==1 or desktop_linux==1) and target_arch != "arm"', {
|
|
||||||
'targets': [
|
|
||||||
{
|
|
||||||
'target_name': 'vaapi_jpeg_decoder_unittest',
|
|
||||||
Index: dev.wily/content/public/common/content_switches.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/public/common/content_switches.cc
|
|
||||||
+++ dev.wily/content/public/common/content_switches.cc
|
|
||||||
@@ -926,7 +926,9 @@ const char kDisableWebAudio[]
|
|
||||||
#if defined(OS_CHROMEOS)
|
#if defined(OS_CHROMEOS)
|
||||||
// Disables panel fitting (used for mirror mode).
|
// Disables panel fitting (used for mirror mode).
|
||||||
const char kDisablePanelFitting[] = "disable-panel-fitting";
|
const char kDisablePanelFitting[] = "disable-panel-fitting";
|
||||||
@ -119,46 +51,38 @@ Index: dev.wily/content/public/common/content_switches.cc
|
|||||||
// Disables VA-API accelerated video encode.
|
// Disables VA-API accelerated video encode.
|
||||||
const char kDisableVaapiAcceleratedVideoEncode[] =
|
const char kDisableVaapiAcceleratedVideoEncode[] =
|
||||||
"disable-vaapi-accelerated-video-encode";
|
"disable-vaapi-accelerated-video-encode";
|
||||||
Index: dev.wily/content/public/common/content_switches.h
|
diff --git a/content/public/common/content_switches.h b/content/public/common/content_switches.h
|
||||||
===================================================================
|
index be5cc9e..9585fb6 100644
|
||||||
--- dev.wily.orig/content/public/common/content_switches.h
|
--- a/content/public/common/content_switches.h
|
||||||
+++ dev.wily/content/public/common/content_switches.h
|
+++ b/content/public/common/content_switches.h
|
||||||
@@ -272,6 +272,8 @@ CONTENT_EXPORT extern const char kDisabl
|
@@ -278,6 +278,9 @@ CONTENT_EXPORT extern const char kEnableOSKOverscroll[];
|
||||||
|
|
||||||
#if defined(OS_CHROMEOS)
|
#if defined(OS_CHROMEOS)
|
||||||
CONTENT_EXPORT extern const char kDisablePanelFitting[];
|
CONTENT_EXPORT extern const char kDisablePanelFitting[];
|
||||||
+#endif
|
+#endif
|
||||||
|
+
|
||||||
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
CONTENT_EXPORT extern const char kDisableVaapiAcceleratedVideoEncode[];
|
CONTENT_EXPORT extern const char kDisableVaapiAcceleratedVideoEncode[];
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Index: dev.wily/media/media.gyp
|
diff --git a/gpu/command_buffer/service/gpu_preferences.h b/gpu/command_buffer/service/gpu_preferences.h
|
||||||
===================================================================
|
index 6fe15b0..ee31d3e 100644
|
||||||
--- dev.wily.orig/media/media.gyp
|
--- a/gpu/command_buffer/service/gpu_preferences.h
|
||||||
+++ dev.wily/media/media.gyp
|
+++ b/gpu/command_buffer/service/gpu_preferences.h
|
||||||
@@ -756,7 +756,7 @@
|
@@ -37,7 +37,7 @@ struct GPU_EXPORT GpuPreferences {
|
||||||
],
|
// Disables hardware acceleration of video decode, where available.
|
||||||
}],
|
bool disable_accelerated_video_decode = false;
|
||||||
# For VaapiVideoEncodeAccelerator.
|
|
||||||
- ['target_arch != "arm" and chromeos == 1', {
|
-#if defined(OS_CHROMEOS)
|
||||||
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
|
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
'sources': [
|
// Disables VA-API accelerated video encode.
|
||||||
'filters/h264_bitstream_buffer.cc',
|
bool disable_vaapi_accelerated_video_encode = false;
|
||||||
'filters/h264_bitstream_buffer.h',
|
#endif
|
||||||
@@ -1359,7 +1359,7 @@
|
diff --git a/gpu/config/software_rendering_list_json.cc b/gpu/config/software_rendering_list_json.cc
|
||||||
'player_android',
|
index 9adc5f0..abf7bc5 100644
|
||||||
],
|
--- a/gpu/config/software_rendering_list_json.cc
|
||||||
}],
|
+++ b/gpu/config/software_rendering_list_json.cc
|
||||||
- ['target_arch != "arm" and chromeos == 1 and use_x11 == 1', {
|
@@ -431,17 +431,6 @@
|
||||||
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1) and use_x11 == 1', {
|
|
||||||
'sources': [
|
|
||||||
'filters/h264_bitstream_buffer_unittest.cc',
|
|
||||||
],
|
|
||||||
Index: dev.wily/gpu/config/software_rendering_list_json.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/gpu/config/software_rendering_list_json.cc
|
|
||||||
+++ dev.wily/gpu/config/software_rendering_list_json.cc
|
|
||||||
@@ -481,17 +481,6 @@ const char kSoftwareRenderingListJson[]
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -173,318 +97,458 @@ Index: dev.wily/gpu/config/software_rendering_list_json.cc
|
|||||||
- ]
|
- ]
|
||||||
- },
|
- },
|
||||||
- {
|
- {
|
||||||
"id": 49,
|
"id": 50,
|
||||||
"description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
|
"description": "Disable VMware software renderer on older Mesa",
|
||||||
"cr_bugs": [140175],
|
"cr_bugs": [145531, 332596, 571899],
|
||||||
@@ -1042,6 +1042,11 @@
|
diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
|
||||||
},
|
index ba02e8a..c31bae2 100644
|
||||||
{
|
--- a/media/gpu/BUILD.gn
|
||||||
"os": {
|
+++ b/media/gpu/BUILD.gn
|
||||||
+ "type": "linux"
|
@@ -12,7 +12,7 @@ if (is_mac) {
|
||||||
+ }
|
import("//build/config/mac/mac_sdk.gni")
|
||||||
+ },
|
|
||||||
+ {
|
|
||||||
+ "os": {
|
|
||||||
"type": "android"
|
|
||||||
},
|
|
||||||
"gl_renderer": ".*Google.*"
|
|
||||||
Index: dev.wily/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
|
|
||||||
+++ dev.wily/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
|
|
||||||
@@ -21,6 +21,8 @@
|
|
||||||
#include "base/logging.h"
|
|
||||||
#include "base/memory/scoped_ptr.h"
|
|
||||||
#include "build/build_config.h"
|
|
||||||
+// Auto-generated for dlopen libva libraries
|
|
||||||
+#include "content/common/gpu/media/va_stubs.h"
|
|
||||||
#include "content/common/sandbox_linux/sandbox_bpf_base_policy_linux.h"
|
|
||||||
#include "content/common/sandbox_linux/sandbox_seccomp_bpf_linux.h"
|
|
||||||
#include "content/common/set_process_title.h"
|
|
||||||
@@ -31,6 +33,8 @@
|
|
||||||
#include "sandbox/linux/syscall_broker/broker_file_permission.h"
|
|
||||||
#include "sandbox/linux/syscall_broker/broker_process.h"
|
|
||||||
#include "sandbox/linux/system_headers/linux_syscalls.h"
|
|
||||||
+#include "third_party/libva/va/va.h"
|
|
||||||
+#include "third_party/libva/va/va_x11.h"
|
|
||||||
|
|
||||||
using sandbox::arch_seccomp_data;
|
|
||||||
using sandbox::bpf_dsl::Allow;
|
|
||||||
@@ -40,6 +44,11 @@ using sandbox::syscall_broker::BrokerFil
|
|
||||||
using sandbox::syscall_broker::BrokerProcess;
|
|
||||||
using sandbox::SyscallSets;
|
|
||||||
|
|
||||||
+using content_common_gpu_media::kModuleVa;
|
|
||||||
+using content_common_gpu_media::kModuleVa_x11;
|
|
||||||
+using content_common_gpu_media::InitializeStubs;
|
|
||||||
+using content_common_gpu_media::StubPathMap;
|
|
||||||
+
|
|
||||||
namespace content {
|
|
||||||
|
|
||||||
namespace {
|
|
||||||
@@ -94,7 +103,7 @@ inline bool UseLibV4L2() {
|
|
||||||
|
|
||||||
bool IsAcceleratedVaapiVideoEncodeEnabled() {
|
|
||||||
bool accelerated_encode_enabled = false;
|
|
||||||
-#if defined(OS_CHROMEOS)
|
|
||||||
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
|
||||||
const base::CommandLine& command_line =
|
|
||||||
*base::CommandLine::ForCurrentProcess();
|
|
||||||
accelerated_encode_enabled =
|
|
||||||
@@ -299,27 +299,41 @@
|
|
||||||
// inside the sandbox, so preload them now.
|
|
||||||
if (IsAcceleratedVaapiVideoEncodeEnabled() ||
|
|
||||||
IsAcceleratedVideoDecodeEnabled()) {
|
|
||||||
- const char* I965DrvVideoPath = NULL;
|
|
||||||
- const char* I965HybridDrvVideoPath = NULL;
|
|
||||||
+ VLOG(1) << "Attempting to enable hardware video acceleration.";
|
|
||||||
+ StubPathMap paths;
|
|
||||||
+ paths[kModuleVa].push_back("libva.so.1");
|
|
||||||
+ paths[kModuleVa_x11].push_back("libva-x11.so.1");
|
|
||||||
+ if (!InitializeStubs(paths)) {
|
|
||||||
+ VLOG(1) << "Failed to initialize stubs";
|
|
||||||
+ return false;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- if (IsArchitectureX86_64()) {
|
|
||||||
- I965DrvVideoPath = "/usr/lib64/va/drivers/i965_drv_video.so";
|
|
||||||
- I965HybridDrvVideoPath = "/usr/lib64/va/drivers/hybrid_drv_video.so";
|
|
||||||
- } else if (IsArchitectureI386()) {
|
|
||||||
- I965DrvVideoPath = "/usr/lib/va/drivers/i965_drv_video.so";
|
|
||||||
+ // libva drivers won't get loaded even above two libraries get dlopened.
|
|
||||||
+ // Thus, libva calls will fail after post sandbox stage.
|
|
||||||
+ //
|
|
||||||
+ // To get the va driver loaded before sandboxing, upstream simply dlopen
|
|
||||||
+ // the hard-coded va driver path because ChromeOS is the only platform
|
|
||||||
+ // that Google want to support libva.
|
|
||||||
+ //
|
|
||||||
+ // While generic linux distros ship va driver as anywhere they want.
|
|
||||||
+ // Fortunately, the va driver will be loadded when vaInitialize() get
|
|
||||||
+ // called.
|
|
||||||
+ // So the following code is to call vaInitialize() before sandboxing.
|
|
||||||
+ Display* x_display = XOpenDisplay(NULL);
|
|
||||||
+ VADisplay va_display = vaGetDisplay(x_display);
|
|
||||||
+ if (!vaDisplayIsValid(va_display)) {
|
|
||||||
+ VLOG(1) << "Failed to call vaGetDisplay()";
|
|
||||||
+ return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
- dlopen(I965DrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
|
||||||
- if (I965HybridDrvVideoPath)
|
|
||||||
- dlopen(I965HybridDrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
|
||||||
- dlopen("libva.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
|
||||||
-#if defined(USE_OZONE)
|
|
||||||
- dlopen("libva-drm.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
|
||||||
-#elif defined(USE_X11)
|
|
||||||
- dlopen("libva-x11.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
|
||||||
-#endif
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
+ int major_version, minor_version;
|
|
||||||
+ if (vaInitialize(va_display, &major_version, &minor_version)
|
|
||||||
+ != VA_STATUS_SUCCESS) {
|
|
||||||
+ VLOG(1) << "Failed to call vaInitialize()";
|
|
||||||
+ return false;
|
|
||||||
+ }
|
|
||||||
+ } // end of IsAcceleratedVaapiVideoEncodeEnabled() || IsAcceleratedVideoDecodeEnabled()
|
|
||||||
+ } // end of IsArchitectureX86_64() || IsArchitectureI386()
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
Index: dev.wily/chrome/browser/about_flags.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/chrome/browser/about_flags.cc
|
|
||||||
+++ dev.wily/chrome/browser/about_flags.cc
|
|
||||||
@@ -854,7 +854,7 @@
|
|
||||||
"disable-accelerated-video-decode",
|
|
||||||
IDS_FLAGS_ACCELERATED_VIDEO_DECODE_NAME,
|
|
||||||
IDS_FLAGS_ACCELERATED_VIDEO_DECODE_DESCRIPTION,
|
|
||||||
- kOsMac | kOsWin | kOsCrOS,
|
|
||||||
+ kOsAll,
|
|
||||||
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
|
|
||||||
},
|
|
||||||
#if defined(USE_ASH)
|
|
||||||
Index: dev.wily/content/common/gpu/media/vaapi_wrapper.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/common/gpu/media/vaapi_wrapper.cc
|
|
||||||
+++ dev.wily/content/common/gpu/media/vaapi_wrapper.cc
|
|
||||||
@@ -146,7 +146,7 @@ scoped_ptr<VaapiWrapper> VaapiWrapper::C
|
|
||||||
VAProfile va_profile,
|
|
||||||
const base::Closure& report_error_to_uma_cb) {
|
|
||||||
if (!profile_infos_.Get().IsProfileSupported(mode, va_profile)) {
|
|
||||||
- DVLOG(1) << "Unsupported va_profile: " << va_profile;
|
|
||||||
+ VLOG(1) << "Unsupported va_profile: " << va_profile;
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -305,15 +305,17 @@ VaapiWrapper::GetSupportedProfileInfosFo
|
-if (is_chromeos && current_cpu != "arm") {
|
||||||
bool VaapiWrapper::VaInitialize(const base::Closure& report_error_to_uma_cb) {
|
+if ((is_chromeos || is_linux) && current_cpu != "arm") {
|
||||||
static bool vaapi_functions_initialized = PostSandboxInitialization();
|
action("libva_generate_stubs") {
|
||||||
if (!vaapi_functions_initialized) {
|
extra_header = "va_stub_header.fragment"
|
||||||
- bool running_on_chromeos = false;
|
|
||||||
-#if defined(OS_CHROMEOS)
|
@@ -54,7 +54,7 @@ if (is_chromeos && current_cpu != "arm") {
|
||||||
+ bool error_level_logging = false;
|
|
||||||
+#if defined(OS_LINUX)
|
|
||||||
+ error_level_logging = true;
|
|
||||||
+#elif defined(OS_CHROMEOS)
|
|
||||||
// When chrome runs on linux with chromeos=1, do not log error message
|
|
||||||
// without VAAPI libraries.
|
|
||||||
- running_on_chromeos = base::SysInfo::IsRunningOnChromeOS();
|
|
||||||
+ error_level_logging = base::SysInfo::IsRunningOnChromeOS();
|
|
||||||
#endif
|
|
||||||
static const char kErrorMsg[] = "Failed to initialize VAAPI libs";
|
|
||||||
- if (running_on_chromeos)
|
|
||||||
- LOG(ERROR) << kErrorMsg;
|
|
||||||
+ if (error_level_logging)
|
|
||||||
+ VLOG(1) << kErrorMsg;
|
|
||||||
else
|
|
||||||
DVLOG(1) << kErrorMsg;
|
|
||||||
return false;
|
|
||||||
@@ -384,7 +386,7 @@ bool VaapiWrapper::IsEntrypointSupported
|
|
||||||
if (std::find(supported_entrypoints.begin(),
|
|
||||||
supported_entrypoints.end(),
|
|
||||||
entrypoint) == supported_entrypoints.end()) {
|
|
||||||
- DVLOG(1) << "Unsupported entrypoint";
|
|
||||||
+ VLOG(1) << "Unsupported entrypoint";
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
return true;
|
}
|
||||||
@@ -408,8 +410,8 @@ bool VaapiWrapper::AreAttribsSupported_L
|
|
||||||
if (attribs[i].type != required_attribs[i].type ||
|
-if (is_chromeos && use_v4lplugin) {
|
||||||
(attribs[i].value & required_attribs[i].value) !=
|
+if ((is_chromeos || is_linux) && use_v4lplugin) {
|
||||||
required_attribs[i].value) {
|
action("libv4l2_generate_stubs") {
|
||||||
- DVLOG(1) << "Unsupported value " << required_attribs[i].value
|
extra_header = "v4l2_stub_header.fragment"
|
||||||
- << " for attribute type " << required_attribs[i].type;
|
|
||||||
+ VLOG(1) << "Unsupported value " << required_attribs[i].value
|
@@ -229,7 +229,7 @@ component("gpu") {
|
||||||
+ << " for attribute type " << required_attribs[i].type;
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -427,46 +427,7 @@
|
|
||||||
VAEntrypoint entrypoint,
|
- if (is_chromeos) {
|
||||||
std::vector<VAConfigAttrib>& required_attribs,
|
+ if (is_chromeos || is_linux) {
|
||||||
gfx::Size* resolution) {
|
sources += [
|
||||||
- va_lock_->AssertAcquired();
|
"accelerated_video_decoder.h",
|
||||||
- VAConfigID va_config_id;
|
"h264_decoder.cc",
|
||||||
- VAStatus va_res = vaCreateConfig(
|
@@ -356,7 +356,7 @@ component("gpu") {
|
||||||
- va_display_,
|
}
|
||||||
- va_profile,
|
}
|
||||||
- entrypoint,
|
|
||||||
- &required_attribs[0],
|
-if (is_win || is_android || is_chromeos) {
|
||||||
- required_attribs.size(),
|
+if (is_win || is_android || is_chromeos || is_linux) {
|
||||||
- &va_config_id);
|
test("video_decode_accelerator_unittest") {
|
||||||
- VA_SUCCESS_OR_RETURN(va_res, "vaCreateConfig failed", false);
|
sources = [
|
||||||
-
|
"video_accelerator_unittest_helpers.h",
|
||||||
- // Calls vaQuerySurfaceAttributes twice. The first time is to get the number
|
@@ -425,7 +425,7 @@ if (is_win || is_android || is_chromeos) {
|
||||||
- // of attributes to prepare the space and the second time is to get all
|
}
|
||||||
- // attributes.
|
}
|
||||||
- unsigned int num_attribs;
|
|
||||||
- va_res = vaQuerySurfaceAttributes(
|
-if (is_chromeos || is_mac) {
|
||||||
- va_display_, va_config_id, nullptr, &num_attribs);
|
+if (is_chromeos || is_linux || is_mac) {
|
||||||
- VA_SUCCESS_OR_RETURN(va_res, "vaQuerySurfaceAttributes failed", false);
|
test("video_encode_accelerator_unittest") {
|
||||||
- if (!num_attribs)
|
deps = [
|
||||||
- return false;
|
"//base",
|
||||||
-
|
diff --git a/media/gpu/gpu_video_decode_accelerator_factory_impl.cc b/media/gpu/gpu_video_decode_accelerator_factory_impl.cc
|
||||||
- std::vector<VASurfaceAttrib> attrib_list(
|
index 0a1a883..add2a8e 100644
|
||||||
- base::checked_cast<size_t>(num_attribs));
|
--- a/media/gpu/gpu_video_decode_accelerator_factory_impl.cc
|
||||||
-
|
+++ b/media/gpu/gpu_video_decode_accelerator_factory_impl.cc
|
||||||
- va_res = vaQuerySurfaceAttributes(
|
@@ -14,7 +14,7 @@
|
||||||
- va_display_, va_config_id, &attrib_list[0], &num_attribs);
|
#include "media/gpu/dxva_video_decode_accelerator_win.h"
|
||||||
- VA_SUCCESS_OR_RETURN(va_res, "vaQuerySurfaceAttributes failed", false);
|
#elif defined(OS_MACOSX)
|
||||||
-
|
#include "media/gpu/vt_video_decode_accelerator_mac.h"
|
||||||
- resolution->SetSize(0, 0);
|
-#elif defined(OS_CHROMEOS)
|
||||||
- for (const auto& attrib : attrib_list) {
|
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
- if (attrib.type == VASurfaceAttribMaxWidth)
|
#if defined(USE_V4L2_CODEC)
|
||||||
- resolution->set_width(attrib.value.value.i);
|
#include "media/gpu/v4l2_device.h"
|
||||||
- else if (attrib.type == VASurfaceAttribMaxHeight)
|
#include "media/gpu/v4l2_slice_video_decode_accelerator.h"
|
||||||
- resolution->set_height(attrib.value.value.i);
|
@@ -79,7 +79,7 @@
|
||||||
- }
|
#if defined(OS_WIN)
|
||||||
- if (resolution->IsEmpty()) {
|
capabilities.supported_profiles =
|
||||||
- LOG(ERROR) << "Codec resolution " << resolution->ToString()
|
DXVAVideoDecodeAccelerator::GetSupportedProfiles();
|
||||||
- << " cannot be zero.";
|
-#elif defined(OS_CHROMEOS)
|
||||||
- return false;
|
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
- }
|
VideoDecodeAccelerator::SupportedProfiles vda_profiles;
|
||||||
+ resolution->SetSize(1920, 1088);
|
#if defined(USE_V4L2_CODEC)
|
||||||
|
vda_profiles = V4L2VideoDecodeAccelerator::GetSupportedProfiles();
|
||||||
|
@@ -126,11 +126,11 @@ GpuVideoDecodeAcceleratorFactoryImpl::CreateVDA(
|
||||||
|
#if defined(OS_WIN)
|
||||||
|
&GpuVideoDecodeAcceleratorFactoryImpl::CreateDXVAVDA,
|
||||||
|
#endif
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
&GpuVideoDecodeAcceleratorFactoryImpl::CreateV4L2VDA,
|
||||||
|
&GpuVideoDecodeAcceleratorFactoryImpl::CreateV4L2SVDA,
|
||||||
|
#endif
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
&GpuVideoDecodeAcceleratorFactoryImpl::CreateVaapiVDA,
|
||||||
|
#endif
|
||||||
|
#if defined(OS_MACOSX)
|
||||||
|
@@ -169,7 +169,7 @@
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
std::unique_ptr<VideoDecodeAccelerator>
|
||||||
|
GpuVideoDecodeAcceleratorFactoryImpl::CreateV4L2VDA(
|
||||||
|
const gpu::GpuDriverBugWorkarounds& workarounds,
|
||||||
|
@@ -199,7 +199,7 @@
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
std::unique_ptr<VideoDecodeAccelerator>
|
||||||
|
GpuVideoDecodeAcceleratorFactoryImpl::CreateVaapiVDA(
|
||||||
|
const gpu::GpuDriverBugWorkarounds& workarounds,
|
||||||
|
diff --git a/media/gpu/gpu_video_decode_accelerator_factory_impl.h b/media/gpu/gpu_video_decode_accelerator_factory_impl.h
|
||||||
|
index a005a1c..5974972 100644
|
||||||
|
--- a/media/gpu/gpu_video_decode_accelerator_factory_impl.h
|
||||||
|
+++ b/media/gpu/gpu_video_decode_accelerator_factory_impl.h
|
||||||
|
@@ -93,7 +93,7 @@
|
||||||
|
const gpu::GpuDriverBugWorkarounds& workarounds,
|
||||||
|
const gpu::GpuPreferences& gpu_preferences) const;
|
||||||
|
#endif
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
std::unique_ptr<VideoDecodeAccelerator> CreateV4L2VDA(
|
||||||
|
const gpu::GpuDriverBugWorkarounds& workarounds,
|
||||||
|
const gpu::GpuPreferences& gpu_preferences) const;
|
||||||
|
@@ -101,7 +101,7 @@
|
||||||
|
const gpu::GpuDriverBugWorkarounds& workarounds,
|
||||||
|
const gpu::GpuPreferences& gpu_preferences) const;
|
||||||
|
#endif
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
std::unique_ptr<VideoDecodeAccelerator> CreateVaapiVDA(
|
||||||
|
const gpu::GpuDriverBugWorkarounds& workarounds,
|
||||||
|
const gpu::GpuPreferences& gpu_preferences) const;
|
||||||
|
diff --git a/media/gpu/ipc/service/BUILD.gn b/media/gpu/ipc/service/BUILD.gn
|
||||||
|
index 16d6922..78a4b94 100644
|
||||||
|
--- a/media/gpu/ipc/service/BUILD.gn
|
||||||
|
+++ b/media/gpu/ipc/service/BUILD.gn
|
||||||
|
@@ -37,7 +37,7 @@ source_set("service") {
|
||||||
|
"//third_party/mesa:mesa_headers",
|
||||||
|
]
|
||||||
|
|
||||||
|
- if (is_chromeos && current_cpu != "arm") {
|
||||||
|
+ if ((is_chromeos || is_linux) && current_cpu != "arm") {
|
||||||
|
configs += [ "//third_party/libva:libva_config" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/media/gpu/ipc/service/gpu_jpeg_decode_accelerator.cc b/media/gpu/ipc/service/gpu_jpeg_decode_accelerator.cc
|
||||||
|
index bffc7fb..09dd0ef 100644
|
||||||
|
--- a/media/gpu/ipc/service/gpu_jpeg_decode_accelerator.cc
|
||||||
|
+++ b/media/gpu/ipc/service/gpu_jpeg_decode_accelerator.cc
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
#include "media/gpu/ipc/common/media_messages.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 "media/gpu/vaapi_jpeg_decode_accelerator.h"
|
||||||
|
#endif
|
||||||
|
@@ -381,7 +381,7 @@
|
||||||
|
std::unique_ptr<JpegDecodeAccelerator> GpuJpegDecodeAccelerator::CreateV4L2JDA(
|
||||||
|
const scoped_refptr<base::SingleThreadTaskRunner>& io_task_runner) {
|
||||||
|
std::unique_ptr<JpegDecodeAccelerator> decoder;
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
scoped_refptr<V4L2Device> device =
|
||||||
|
V4L2Device::Create(V4L2Device::kJpegDecoder);
|
||||||
|
if (device)
|
||||||
|
@@ -394,7 +394,7 @@
|
||||||
|
std::unique_ptr<JpegDecodeAccelerator> GpuJpegDecodeAccelerator::CreateVaapiJDA(
|
||||||
|
const scoped_refptr<base::SingleThreadTaskRunner>& io_task_runner) {
|
||||||
|
std::unique_ptr<JpegDecodeAccelerator> 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;
|
||||||
|
diff --git a/media/gpu/ipc/service/gpu_video_decode_accelerator.cc b/media/gpu/ipc/service/gpu_video_decode_accelerator.cc
|
||||||
|
index 44f8a12..014a752 100644
|
||||||
|
--- a/media/gpu/ipc/service/gpu_video_decode_accelerator.cc
|
||||||
|
+++ b/media/gpu/ipc/service/gpu_video_decode_accelerator.cc
|
||||||
|
@@ -58,7 +58,7 @@ static bool MakeDecoderContextCurrent(
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Index: dev.wily/content/common/gpu/media/vaapi_video_decode_accelerator.cc
|
-#if (defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)) || defined(OS_MACOSX)
|
||||||
===================================================================
|
+#if ((defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)) || defined(OS_MACOSX)
|
||||||
--- dev.wily.orig/content/common/gpu/media/vaapi_video_decode_accelerator.cc
|
static bool BindImage(const base::WeakPtr<gpu::GpuCommandBufferStub>& stub,
|
||||||
+++ dev.wily/content/common/gpu/media/vaapi_video_decode_accelerator.cc
|
uint32_t client_texture_id,
|
||||||
@@ -269,17 +269,17 @@ bool VaapiVideoDecodeAccelerator::Initia
|
uint32_t texture_target,
|
||||||
|
@@ -170,7 +170,7 @@ GpuVideoDecodeAccelerator::GpuVideoDecodeAccelerator(
|
||||||
base::AutoLock auto_lock(lock_);
|
get_gl_context_cb_ = base::Bind(&GetGLContext, stub_->AsWeakPtr());
|
||||||
DCHECK_EQ(state_, kUninitialized);
|
make_context_current_cb_ =
|
||||||
- DVLOG(2) << "Initializing VAVDA, profile: " << profile;
|
base::Bind(&MakeDecoderContextCurrent, stub_->AsWeakPtr());
|
||||||
+ VLOG(1) << "Initializing VAVDA, profile: " << profile;
|
-#if (defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)) || defined(OS_MACOSX)
|
||||||
|
+#if ((defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)) || defined(OS_MACOSX)
|
||||||
#if defined(USE_X11)
|
bind_image_cb_ = base::Bind(&BindImage, stub_->AsWeakPtr());
|
||||||
if (gfx::GetGLImplementation() != gfx::kGLImplementationDesktopGL) {
|
|
||||||
- DVLOG(1) << "HW video decode acceleration not available without "
|
|
||||||
+ VLOG(1) << "HW video decode acceleration not available without "
|
|
||||||
"DesktopGL (GLX).";
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
#elif defined(USE_OZONE)
|
|
||||||
if (gfx::GetGLImplementation() != gfx::kGLImplementationEGLGLES2) {
|
|
||||||
- DVLOG(1) << "HW video decode acceleration not available without "
|
|
||||||
+ VLOG(1) << "HW video decode acceleration not available without "
|
|
||||||
<< "EGLGLES2.";
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
@@ -289,7 +289,7 @@ bool VaapiVideoDecodeAccelerator::Initia
|
|
||||||
VaapiWrapper::kDecode, profile, base::Bind(&ReportToUMA, VAAPI_ERROR));
|
|
||||||
|
|
||||||
if (!vaapi_wrapper_.get()) {
|
|
||||||
- DVLOG(1) << "Failed initializing VAAPI for profile " << profile;
|
|
||||||
+ VLOG(1) << "Failed initializing VAAPI for profile " << profile;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -302,7 +302,7 @@ bool VaapiVideoDecodeAccelerator::Initia
|
|
||||||
vp8_accelerator_.reset(new VaapiVP8Accelerator(this, vaapi_wrapper_.get()));
|
|
||||||
decoder_.reset(new VP8Decoder(vp8_accelerator_.get()));
|
|
||||||
} else {
|
|
||||||
- DLOG(ERROR) << "Unsupported profile " << profile;
|
|
||||||
+ VLOG(1) << "Unsupported profile " << profile;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
Index: dev.wily/content/gpu/gpu_main.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/gpu/gpu_main.cc
|
|
||||||
+++ dev.wily/content/gpu/gpu_main.cc
|
|
||||||
@@ -66,7 +66,7 @@
|
|
||||||
#include "content/common/sandbox_mac.h"
|
|
||||||
#endif
|
#endif
|
||||||
|
get_gles2_decoder_cb_ = base::Bind(&GetGLES2Decoder, stub_->AsWeakPtr());
|
||||||
|
diff --git a/media/gpu/ipc/service/gpu_video_encode_accelerator.cc b/media/gpu/ipc/service/gpu_video_encode_accelerator.cc
|
||||||
|
index 62a8539..6367661 100644
|
||||||
|
--- a/media/gpu/ipc/service/gpu_video_encode_accelerator.cc
|
||||||
|
+++ b/media/gpu/ipc/service/gpu_video_encode_accelerator.cc
|
||||||
|
@@ -24,7 +24,7 @@
|
||||||
|
#include "media/gpu/gpu_video_accelerator_util.h"
|
||||||
|
#include "media/gpu/ipc/common/media_messages.h"
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS)
|
||||||
|
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
#if defined(USE_V4L2_CODEC)
|
||||||
|
#include "media/gpu/v4l2_video_encode_accelerator.h"
|
||||||
|
#endif
|
||||||
|
@@ -196,10 +196,10 @@ std::vector<GpuVideoEncodeAccelerator::CreateVEAFp>
|
||||||
|
GpuVideoEncodeAccelerator::CreateVEAFps(
|
||||||
|
const gpu::GpuPreferences& gpu_preferences) {
|
||||||
|
std::vector<GpuVideoEncodeAccelerator::CreateVEAFp> create_vea_fps;
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
create_vea_fps.push_back(&GpuVideoEncodeAccelerator::CreateV4L2VEA);
|
||||||
|
#endif
|
||||||
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
#include "content/common/gpu/media/vaapi_wrapper.h"
|
if (!gpu_preferences.disable_vaapi_accelerated_video_encode)
|
||||||
|
create_vea_fps.push_back(&GpuVideoEncodeAccelerator::CreateVaapiVEA);
|
||||||
#endif
|
#endif
|
||||||
|
@@ -213,7 +213,7 @@ GpuVideoEncodeAccelerator::CreateVEAFps(
|
||||||
@@ -227,7 +227,7 @@ int GpuMain(const MainFunctionParams& pa
|
return create_vea_fps;
|
||||||
GetGpuInfoFromCommandLine(gpu_info, command_line);
|
|
||||||
gpu_info.in_process_gpu = false;
|
|
||||||
|
|
||||||
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
|
||||||
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
|
||||||
VaapiWrapper::PreSandboxInitialization();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Index: dev.wily/content/common/gpu/client/command_buffer_proxy_impl.cc
|
|
||||||
===================================================================
|
|
||||||
--- dev.wily.orig/content/common/gpu/client/command_buffer_proxy_impl.cc
|
|
||||||
+++ dev.wily/content/common/gpu/client/command_buffer_proxy_impl.cc
|
|
||||||
@@ -561,8 +561,10 @@ bool CommandBufferProxyImpl::ProduceFron
|
|
||||||
|
|
||||||
scoped_ptr<media::VideoDecodeAccelerator>
|
|
||||||
CommandBufferProxyImpl::CreateVideoDecoder() {
|
|
||||||
+ TRACE_EVENT0("gpu", "CommandBufferProxyImpl::CreateVideoDecoder");
|
|
||||||
if (!channel_)
|
|
||||||
return scoped_ptr<media::VideoDecodeAccelerator>();
|
|
||||||
+ VLOG(1) << "About to create GpuVideoDecodeAcceleratorHost.";
|
|
||||||
return scoped_ptr<media::VideoDecodeAccelerator>(
|
|
||||||
new GpuVideoDecodeAcceleratorHost(channel_, this));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
// static
|
||||||
|
std::unique_ptr<media::VideoEncodeAccelerator>
|
||||||
|
GpuVideoEncodeAccelerator::CreateV4L2VEA() {
|
||||||
|
@@ -225,7 +225,7 @@ GpuVideoEncodeAccelerator::CreateV4L2VEA() {
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
// static
|
||||||
|
std::unique_ptr<media::VideoEncodeAccelerator>
|
||||||
|
GpuVideoEncodeAccelerator::CreateVaapiVEA() {
|
||||||
|
diff --git a/media/gpu/ipc/service/gpu_video_encode_accelerator.h b/media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
||||||
|
index cfe44d2..29da8b8 100644
|
||||||
|
--- a/media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
||||||
|
+++ b/media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
||||||
|
@@ -80,10 +80,10 @@
|
||||||
|
// platform.
|
||||||
|
static std::vector<CreateVEAFp> CreateVEAFps(
|
||||||
|
const gpu::GpuPreferences& gpu_preferences);
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(USE_V4L2_CODEC)
|
||||||
|
static std::unique_ptr<VideoEncodeAccelerator> CreateV4L2VEA();
|
||||||
|
#endif
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
static std::unique_ptr<VideoEncodeAccelerator> CreateVaapiVEA();
|
||||||
|
#endif
|
||||||
|
#if defined(OS_ANDROID) && defined(ENABLE_WEBRTC)
|
||||||
|
diff --git a/media/gpu/jpeg_decode_accelerator_unittest.cc b/media/gpu/jpeg_decode_accelerator_unittest.cc
|
||||||
|
index 5c68851..796ca54 100644
|
||||||
|
--- a/media/gpu/jpeg_decode_accelerator_unittest.cc
|
||||||
|
+++ b/media/gpu/jpeg_decode_accelerator_unittest.cc
|
||||||
|
@@ -31,7 +31,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 "media/gpu/v4l2_device.h"
|
||||||
|
#include "media/gpu/v4l2_jpeg_decode_accelerator.h"
|
||||||
|
@@ -135,10 +135,10 @@ JpegClient::JpegClient(const std::vector<TestImageFile*>& test_image_files,
|
||||||
|
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<V4L2Device> device =
|
||||||
|
V4L2Device::Create(V4L2Device::kJpegDecoder);
|
||||||
|
if (!device.get()) {
|
||||||
|
@@ -575,7 +575,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)
|
||||||
|
media::VaapiWrapper::PreSandboxInitialization();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
diff --git a/media/gpu/video_decode_accelerator_unittest.cc b/media/gpu/video_decode_accelerator_unittest.cc
|
||||||
|
index f9f2711..936cd6d 100644
|
||||||
|
--- a/media/gpu/video_decode_accelerator_unittest.cc
|
||||||
|
+++ b/media/gpu/video_decode_accelerator_unittest.cc
|
||||||
|
@@ -61,7 +61,7 @@
|
||||||
|
#if defined(OS_WIN)
|
||||||
|
#include "base/win/windows_version.h"
|
||||||
|
#include "media/gpu/dxva_video_decode_accelerator_win.h"
|
||||||
|
-#elif defined(OS_CHROMEOS)
|
||||||
|
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
#if defined(USE_V4L2_CODEC)
|
||||||
|
#include "media/gpu/v4l2_device.h"
|
||||||
|
#include "media/gpu/v4l2_slice_video_decode_accelerator.h"
|
||||||
|
@@ -1732,7 +1732,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)
|
||||||
|
media::VaapiWrapper::PreSandboxInitialization();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
diff --git a/media/gpu/video_encode_accelerator_unittest.cc b/media/gpu/video_encode_accelerator_unittest.cc
|
||||||
|
index b8b4dd9..07ddff5 100644
|
||||||
|
--- a/media/gpu/video_encode_accelerator_unittest.cc
|
||||||
|
+++ b/media/gpu/video_encode_accelerator_unittest.cc
|
||||||
|
@@ -48,7 +48,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 "media/gpu/v4l2_video_encode_accelerator.h"
|
||||||
|
#endif
|
||||||
|
@@ -1063,8 +1063,8 @@
|
||||||
|
|
||||||
|
std::unique_ptr<VideoEncodeAccelerator> VEAClient::CreateV4L2VEA() {
|
||||||
|
std::unique_ptr<VideoEncodeAccelerator> encoder;
|
||||||
|
-#if defined(OS_CHROMEOS) && (defined(ARCH_CPU_ARMEL) || \
|
||||||
|
- (defined(USE_OZONE) && defined(USE_V4L2_CODEC)))
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && (defined(ARCH_CPU_ARMEL) || \
|
||||||
|
+ (defined(USE_OZONE) && defined(USE_V4L2_CODEC)))
|
||||||
|
scoped_refptr<V4L2Device> device = V4L2Device::Create(V4L2Device::kEncoder);
|
||||||
|
if (device)
|
||||||
|
encoder.reset(new V4L2VideoEncodeAccelerator(device));
|
||||||
|
@@ -1074,7 +1074,7 @@
|
||||||
|
|
||||||
|
std::unique_ptr<VideoEncodeAccelerator> VEAClient::CreateVaapiVEA() {
|
||||||
|
std::unique_ptr<VideoEncodeAccelerator> 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;
|
||||||
|
@@ -1812,7 +1812,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)
|
||||||
|
media::VaapiWrapper::PreSandboxInitialization();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
diff --git a/media/media.gyp b/media/media.gyp
|
||||||
|
index a8a370e..9a92e5f 100644
|
||||||
|
--- a/media/media.gyp
|
||||||
|
+++ b/media/media.gyp
|
||||||
|
@@ -752,7 +752,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',
|
||||||
|
@@ -1330,7 +1330,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',
|
||||||
|
],
|
||||||
|
@@ -2098,7 +2098,7 @@
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
- ['chromeos==1', {
|
||||||
|
+ ['chromeos==1 or desktop_linux==1', {
|
||||||
|
'targets': [
|
||||||
|
{
|
||||||
|
'target_name': 'jpeg_decode_accelerator_unittest',
|
||||||
|
@@ -2125,7 +2125,7 @@
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}],
|
||||||
|
- ['chromeos==1 or OS=="mac"', {
|
||||||
|
+ ['chromeos==1 or desktop_linux==1 or OS=="mac"', {
|
||||||
|
'targets': [
|
||||||
|
{
|
||||||
|
'target_name': 'video_encode_accelerator_unittest',
|
||||||
|
@@ -2171,7 +2171,7 @@
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}],
|
||||||
|
- ['chromeos==1 or OS=="win" or OS=="android"', {
|
||||||
|
+ ['chromeos==1 or desktop_linux==1 or OS=="win" or OS=="android"', {
|
||||||
|
'targets': [
|
||||||
|
{
|
||||||
|
# GN: //media/gpu:video_decode_accelerator_unittest
|
||||||
|
@@ -2264,7 +2264,7 @@
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
|
||||||
|
- ['chromeos==1 and target_arch != "arm"', {
|
||||||
|
+ ['(chromeos==1 or desktop_linux==1) and target_arch != "arm"', {
|
||||||
|
'targets': [
|
||||||
|
{
|
||||||
|
'target_name': 'vaapi_jpeg_decoder_unittest',
|
||||||
|
diff --git a/media/media_gpu.gypi b/media/media_gpu.gypi
|
||||||
|
index 70c1398..810ac32 100644
|
||||||
|
--- a/media/media_gpu.gypi
|
||||||
|
+++ b/media/media_gpu.gypi
|
||||||
|
@@ -125,7 +125,7 @@
|
||||||
|
'gpu/android_video_encode_accelerator.h',
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
- ['use_v4lplugin==1 and chromeos==1', {
|
||||||
|
+ ['use_v4lplugin==1 and (chromeos==1 or desktop_linux==1)', {
|
||||||
|
'direct_dependent_settings': {
|
||||||
|
'defines': [
|
||||||
|
'USE_LIBV4L2'
|
||||||
|
@@ -174,7 +174,7 @@
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
- ['chromeos==1', {
|
||||||
|
+ ['chromeos==1 or desktop_linux==1', {
|
||||||
|
'sources': [
|
||||||
|
'gpu/accelerated_video_decoder.h',
|
||||||
|
'gpu/h264_decoder.cc',
|
||||||
|
@@ -191,7 +191,7 @@
|
||||||
|
'gpu/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'
|
||||||
|
@@ -230,7 +230,7 @@
|
||||||
|
'gpu/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',
|
||||||
|
--
|
||||||
|
2.9.3
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user