mirror of
https://github.com/void-linux/void-packages.git
synced 2025-09-29 23:25:11 +02:00
549 lines
23 KiB
Diff
549 lines
23 KiB
Diff
diff -ur chrome/browser/about_flags.cc chromium-69.0.3497.92/chrome/browser/about_flags.cc
|
|
--- chrome/browser/about_flags.cc.orig 2019-06-18 11:47:49.000000000 -0400
|
|
+++ chrome/browser/about_flags.cc 2019-07-02 12:25:40.601434149 -0400
|
|
@@ -1053,12 +1053,14 @@
|
|
{"ui-disable-partial-swap", flag_descriptions::kUiPartialSwapName,
|
|
flag_descriptions::kUiPartialSwapDescription, kOsAll,
|
|
SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
|
|
+#if defined(OS_CHROMEOS) || defined(OS_ANDROID)
|
|
{"disable-webrtc-hw-decoding", flag_descriptions::kWebrtcHwDecodingName,
|
|
flag_descriptions::kWebrtcHwDecodingDescription, kOsAndroid | kOsCrOS,
|
|
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWDecoding)},
|
|
{"disable-webrtc-hw-encoding", flag_descriptions::kWebrtcHwEncodingName,
|
|
flag_descriptions::kWebrtcHwEncodingDescription, kOsAndroid | kOsCrOS,
|
|
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWEncoding)},
|
|
+#endif
|
|
#if !defined(OS_ANDROID)
|
|
{"enable-reader-mode", flag_descriptions::kEnableReaderModeName,
|
|
flag_descriptions::kEnableReaderModeDescription, kOsDesktop,
|
|
@@ -1386,6 +1388,13 @@
|
|
flag_descriptions::kMojoImfDescription, kOsCrOS,
|
|
FEATURE_VALUE_TYPE(features::kMojoIMF)},
|
|
#endif // OS_CHROMEOS
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ {
|
|
+ "enable-accelerated-video", flag_descriptions::kAcceleratedVideoName,
|
|
+ flag_descriptions::kAcceleratedVideoDescription, kOsLinux,
|
|
+ SINGLE_VALUE_TYPE(switches::kEnableAcceleratedVideo),
|
|
+ },
|
|
+#else
|
|
{
|
|
"disable-accelerated-video-decode",
|
|
flag_descriptions::kAcceleratedVideoDecodeName,
|
|
@@ -1393,6 +1402,7 @@
|
|
kOsMac | kOsWin | kOsCrOS | kOsAndroid,
|
|
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
|
|
},
|
|
+#endif
|
|
#if defined(OS_WIN)
|
|
{"enable-hdr", flag_descriptions::kEnableHDRName,
|
|
flag_descriptions::kEnableHDRDescription, kOsWin,
|
|
@@ -1882,12 +1892,17 @@
|
|
FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
|
|
#endif // ENABLE_ISOLATED_XR_SERVICE
|
|
#endif // ENABLE_VR
|
|
-#if defined(OS_CHROMEOS)
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ {"enable-accelerated-mjpeg-decode",
|
|
+ flag_descriptions::kAcceleratedMjpegDecodeName,
|
|
+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsLinux,
|
|
+ SINGLE_VALUE_TYPE(switches::kEnableAcceleratedMjpegDecode)},
|
|
+#elif defined(OS_CHROMEOS)
|
|
{"disable-accelerated-mjpeg-decode",
|
|
flag_descriptions::kAcceleratedMjpegDecodeName,
|
|
flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
|
|
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
|
|
-#endif // OS_CHROMEOS
|
|
+#endif
|
|
{"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
|
|
flag_descriptions::kV8CacheOptionsDescription, kOsAll,
|
|
MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
|
|
Only in chrome/browser: about_flags.cc.orig
|
|
diff -ur chrome/browser/chromeos/login/chrome_restart_request.cc chromium-69.0.3497.92/chrome/browser/chromeos/login/chrome_restart_request.cc
|
|
--- chrome/browser/chromeos/login/chrome_restart_request.cc 2018-09-12 00:39:23.000000000 +0530
|
|
+++ chrome/browser/chromeos/login/chrome_restart_request.cc 2018-09-13 22:10:33.986014728 +0530
|
|
@@ -19,6 +19,7 @@
|
|
#include "base/sys_info.h"
|
|
#include "base/timer/timer.h"
|
|
#include "base/values.h"
|
|
+#include "build/build_config.h"
|
|
#include "cc/base/switches.h"
|
|
#include "chrome/browser/browser_process.h"
|
|
#include "chrome/browser/chromeos/boot_times_recorder.h"
|
|
@@ -84,9 +85,14 @@
|
|
::switches::kDisable2dCanvasImageChromium,
|
|
::switches::kDisableAccelerated2dCanvas,
|
|
::switches::kDisableAcceleratedJpegDecoding,
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ ::switches::kEnableAcceleratedMjpegDecode,
|
|
+ ::switches::kEnableAcceleratedVideo,
|
|
+#else
|
|
::switches::kDisableAcceleratedMjpegDecode,
|
|
::switches::kDisableAcceleratedVideoDecode,
|
|
::switches::kDisableAcceleratedVideoEncode,
|
|
+#endif
|
|
::switches::kDisableBlinkFeatures,
|
|
::switches::kDisableCastStreamingHWEncoding,
|
|
::switches::kDisableGpu,
|
|
@@ -160,8 +166,10 @@
|
|
::switches::kEnableWebGLImageChromium,
|
|
::switches::kEnableWebVR,
|
|
::switches::kEnableUnsafeWebGPU,
|
|
+#if (defined(OS_CHROMEOS) || defined(OS_ANDROID))
|
|
::switches::kDisableWebRtcHWDecoding,
|
|
::switches::kDisableWebRtcHWEncoding,
|
|
+#endif
|
|
::switches::kOzonePlatform,
|
|
ash::switches::kAshEnableTabletMode,
|
|
ash::switches::kAshEnableWaylandServer,
|
|
diff -ur chrome/browser/flag_descriptions.cc chromium-69.0.3497.92/chrome/browser/flag_descriptions.cc
|
|
--- chrome/browser/flag_descriptions.cc.orig 2019-06-18 11:47:50.000000000 -0400
|
|
+++ chrome/browser/flag_descriptions.cc 2019-07-02 12:27:47.137866754 -0400
|
|
@@ -14,6 +14,13 @@
|
|
"Enables the use of the GPU to perform 2d canvas rendering instead of "
|
|
"using software rendering.";
|
|
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+const char kAcceleratedVideoName[] = "Hardware-accelerated video";
|
|
+const char kAcceleratedVideoDescription[] =
|
|
+ "Hardware-accelerated video where VA-API driver is installed on the"
|
|
+ "system.";
|
|
+#endif
|
|
+
|
|
const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
|
|
const char kAcceleratedVideoDecodeDescription[] =
|
|
"Hardware-accelerated video decode where available.";
|
|
@@ -2081,6 +2088,7 @@
|
|
const char kWebrtcHybridAgcDescription[] =
|
|
"WebRTC Agc2 digital adaptation with Agc1 analog adaptation.";
|
|
|
|
+#if defined(OS_CHROMEOS) || defined(OS_ANDROID)
|
|
const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
|
|
const char kWebrtcHwDecodingDescription[] =
|
|
"Support in WebRTC for decoding video streams using platform hardware.";
|
|
@@ -2088,6 +2096,7 @@
|
|
const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
|
|
const char kWebrtcHwEncodingDescription[] =
|
|
"Support in WebRTC for encoding video streams using platform hardware.";
|
|
+#endif
|
|
|
|
const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
|
|
const char kWebrtcHwH264EncodingDescription[] =
|
|
@@ -2943,14 +2952,16 @@
|
|
|
|
// Chrome OS -------------------------------------------------------------------
|
|
|
|
-#if defined(OS_CHROMEOS)
|
|
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
|
|
|
|
const char kAcceleratedMjpegDecodeName[] =
|
|
"Hardware-accelerated mjpeg decode for captured frame";
|
|
const char kAcceleratedMjpegDecodeDescription[] =
|
|
"Enable hardware-accelerated mjpeg decode for captured frame where "
|
|
"available.";
|
|
+#endif
|
|
|
|
+#if defined(OS_CHROMEOS)
|
|
const char kAppServiceAshName[] = "App Service Ash";
|
|
const char kAppServiceAshDescription[] =
|
|
"Use the App Service to provide data to the Ash UI, such as the shelf and "
|
|
diff -ur chrome/browser/flag_descriptions.h chromium-69.0.3497.92/chrome/browser/flag_descriptions.h
|
|
--- chrome/browser/flag_descriptions.h.orig 2019-06-18 11:47:50.000000000 -0400
|
|
+++ chrome/browser/flag_descriptions.h 2019-07-02 12:29:46.200214795 -0400
|
|
@@ -43,6 +43,10 @@
|
|
extern const char kAccelerated2dCanvasName[];
|
|
extern const char kAccelerated2dCanvasDescription[];
|
|
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+extern const char kAcceleratedVideoName[];
|
|
+extern const char kAcceleratedVideoDescription[];
|
|
+#endif
|
|
extern const char kAcceleratedVideoDecodeName[];
|
|
extern const char kAcceleratedVideoDecodeDescription[];
|
|
|
|
@@ -1765,13 +1769,17 @@
|
|
|
|
#endif // defined(OS_MACOSX)
|
|
|
|
-// Chrome OS ------------------------------------------------------------------
|
|
-
|
|
-#if defined(OS_CHROMEOS)
|
|
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
|
|
|
|
extern const char kAcceleratedMjpegDecodeName[];
|
|
extern const char kAcceleratedMjpegDecodeDescription[];
|
|
|
|
+#endif
|
|
+
|
|
+// Chrome OS ------------------------------------------------------------------
|
|
+
|
|
+#if defined(OS_CHROMEOS)
|
|
+
|
|
extern const char kAppServiceAshName[];
|
|
extern const char kAppServiceAshDescription[];
|
|
|
|
diff -ur content/browser/gpu/compositor_util.cc chromium-69.0.3497.92/content/browser/gpu/compositor_util.cc
|
|
--- content/browser/gpu/compositor_util.cc 2018-09-12 00:39:41.000000000 +0530
|
|
+++ content/browser/gpu/compositor_util.cc 2018-09-13 22:10:34.072012092 +0530
|
|
@@ -149,7 +149,11 @@
|
|
{"video_decode",
|
|
SafeGetFeatureStatus(gpu_feature_info,
|
|
gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE),
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ !command_line.HasSwitch(switches::kEnableAcceleratedVideo),
|
|
+#else
|
|
command_line.HasSwitch(switches::kDisableAcceleratedVideoDecode),
|
|
+#endif
|
|
"Accelerated video decode has been disabled, either via blacklist, "
|
|
"about:flags or the command line.",
|
|
true, true},
|
|
diff -ur content/browser/gpu/gpu_process_host.cc chromium-69.0.3497.92/content/browser/gpu/gpu_process_host.cc
|
|
--- content/browser/gpu/gpu_process_host.cc 2018-09-12 00:39:41.000000000 +0530
|
|
+++ content/browser/gpu/gpu_process_host.cc 2018-09-13 22:10:34.113010836 +0530
|
|
@@ -209,7 +209,9 @@
|
|
switches::kDisableLogging,
|
|
switches::kDisableShaderNameHashing,
|
|
switches::kDisableSkiaRuntimeOpts,
|
|
+#if !defined(OS_LINUX)
|
|
switches::kDisableWebRtcHWEncoding,
|
|
+#endif
|
|
#if defined(OS_WIN)
|
|
switches::kEnableAcceleratedVpxDecode,
|
|
#endif
|
|
diff -ur content/browser/renderer_host/media/video_capture_browsertest.cc chromium-69.0.3497.92/content/browser/renderer_host/media/video_capture_browsertest.cc
|
|
--- content/browser/renderer_host/media/video_capture_browsertest.cc 2018-09-12 00:39:41.000000000 +0530
|
|
+++ content/browser/renderer_host/media/video_capture_browsertest.cc 2018-09-13 22:10:34.124010499 +0530
|
|
@@ -165,8 +165,13 @@
|
|
base::CommandLine::ForCurrentProcess()->AppendSwitch(
|
|
switches::kUseFakeJpegDecodeAccelerator);
|
|
} else {
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ base::CommandLine::ForCurrentProcess()->AppendSwitch(
|
|
+ switches::kEnableAcceleratedMjpegDecode);
|
|
+#else
|
|
base::CommandLine::ForCurrentProcess()->AppendSwitch(
|
|
switches::kDisableAcceleratedMjpegDecode);
|
|
+#endif
|
|
}
|
|
}
|
|
|
|
diff -ur content/browser/renderer_host/render_process_host_impl.cc chromium-69.0.3497.92/content/browser/renderer_host/render_process_host_impl.cc
|
|
--- content/browser/renderer_host/render_process_host_impl.cc 2019-05-14 14:50:24.000000000 -0400
|
|
+++ content/browser/renderer_host/render_process_host_impl.cc 2019-07-02 09:42:59.280570734 -0400
|
|
@@ -2953,7 +2953,11 @@
|
|
switches::kDefaultTileHeight,
|
|
switches::kDisable2dCanvasImageChromium,
|
|
switches::kDisableAcceleratedJpegDecoding,
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+ switches::kEnableAcceleratedVideo,
|
|
+#else
|
|
switches::kDisableAcceleratedVideoDecode,
|
|
+#endif
|
|
switches::kDisableBackgroundTimerThrottling,
|
|
switches::kDisableBestEffortTasks,
|
|
switches::kDisableBreakpad,
|
|
@@ -3091,8 +3095,10 @@
|
|
#if BUILDFLAG(ENABLE_PLUGINS)
|
|
switches::kEnablePepperTesting,
|
|
#endif
|
|
+#if !defined(OS_LINUX) || defined(OS_CHROMEOS)
|
|
switches::kDisableWebRtcHWDecoding,
|
|
switches::kDisableWebRtcHWEncoding,
|
|
+#endif
|
|
switches::kEnableWebRtcSrtpAesGcm,
|
|
switches::kEnableWebRtcSrtpEncryptedHeaders,
|
|
switches::kEnableWebRtcStunOrigin,
|
|
Only in content/browser/renderer_host: render_process_host_impl.cc.orig
|
|
diff -ur content/browser/utility_process_host.cc chromium-69.0.3497.92/content/browser/utility_process_host.cc
|
|
--- content/browser/utility_process_host.cc 2018-09-12 00:39:41.000000000 +0530
|
|
+++ content/browser/utility_process_host.cc 2018-09-13 22:10:34.296005227 +0530
|
|
@@ -296,7 +296,11 @@
|
|
switches::kOverrideUseSoftwareGLForTests,
|
|
switches::kOverrideEnabledCdmInterfaceVersion,
|
|
switches::kProxyServer,
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ switches::kEnableAcceleratedMjpegDecode,
|
|
+#else
|
|
switches::kDisableAcceleratedMjpegDecode,
|
|
+#endif
|
|
switches::kUseFakeDeviceForMediaStream,
|
|
switches::kUseFakeJpegDecodeAccelerator,
|
|
switches::kUseFileForFakeVideoCapture,
|
|
diff -ur content/browser/webrtc/webrtc_media_recorder_browsertest.cc chromium-69.0.3497.92/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
|
|
--- content/browser/webrtc/webrtc_media_recorder_browsertest.cc 2018-09-12 00:39:41.000000000 +0530
|
|
+++ content/browser/webrtc/webrtc_media_recorder_browsertest.cc 2018-09-13 22:10:34.143009916 +0530
|
|
@@ -66,7 +66,12 @@
|
|
return;
|
|
// This flag is also used for encoding, https://crbug.com/616640.
|
|
base::CommandLine::ForCurrentProcess()->AppendSwitch(
|
|
- switches::kDisableAcceleratedVideoDecode);
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+ switches::kEnableAcceleratedVideo
|
|
+#else
|
|
+ switches::kDisableAcceleratedVideoDecode
|
|
+#endif
|
|
+ );
|
|
}
|
|
|
|
private:
|
|
diff -ur content/gpu/BUILD.gn chromium-69.0.3497.92/content/gpu/BUILD.gn
|
|
--- content/gpu/BUILD.gn 2018-09-12 00:39:41.000000000 +0530
|
|
+++ content/gpu/BUILD.gn 2018-09-13 22:10:34.148009763 +0530
|
|
@@ -133,4 +133,8 @@
|
|
(!is_chromecast || is_cast_desktop_build)) {
|
|
configs += [ "//build/config/linux/dri" ]
|
|
}
|
|
+
|
|
+ if (is_desktop_linux) {
|
|
+ public_configs = [ "//media/gpu:libva_config" ]
|
|
+ }
|
|
}
|
|
diff -ur content/gpu/gpu_main.cc chromium-69.0.3497.92/content/gpu/gpu_main.cc
|
|
--- content/gpu/gpu_main.cc 2019-07-02 09:50:13.403486804 -0400
|
|
+++ content/gpu/gpu_main.cc 2019-07-02 09:55:07.256818723 -0400
|
|
@@ -288,7 +288,7 @@
|
|
|
|
base::PlatformThread::SetName("CrGpuMain");
|
|
|
|
-#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
|
|
+#if defined(OS_LINUX)
|
|
// Set thread priority before sandbox initialization.
|
|
base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
|
|
#endif
|
|
@@ -321,7 +321,7 @@
|
|
GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
|
|
|
|
base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
|
|
-#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
|
|
+#if defined(OS_LINUX)
|
|
io_thread_priority = base::ThreadPriority::DISPLAY;
|
|
#endif
|
|
|
|
diff -ur content/public/browser/gpu_utils.cc chromium-69.0.3497.92/content/public/browser/gpu_utils.cc
|
|
--- content/public/browser/gpu_utils.cc 2018-09-12 00:39:42.000000000 +0530
|
|
+++ content/public/browser/gpu_utils.cc 2018-09-13 22:10:34.164009273 +0530
|
|
@@ -57,9 +57,17 @@
|
|
gpu_preferences.in_process_gpu =
|
|
command_line->HasSwitch(switches::kInProcessGPU);
|
|
gpu_preferences.disable_accelerated_video_decode =
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo);
|
|
+#else
|
|
command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode);
|
|
+#endif
|
|
gpu_preferences.disable_accelerated_video_encode =
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo);
|
|
+#else
|
|
command_line->HasSwitch(switches::kDisableAcceleratedVideoEncode);
|
|
+#endif
|
|
#if defined(OS_WIN)
|
|
uint32_t enable_accelerated_vpx_decode_val =
|
|
gpu::GpuPreferences::VPX_VENDOR_MICROSOFT;
|
|
diff -ur content/public/common/content_switches.cc chromium-69.0.3497.92/content/public/common/content_switches.cc
|
|
--- content/public/common/content_switches.cc 2018-09-12 00:39:42.000000000 +0530
|
|
+++ content/public/common/content_switches.cc 2018-09-13 22:10:34.172009028 +0530
|
|
@@ -79,6 +79,11 @@
|
|
// Disable gpu-accelerated 2d canvas.
|
|
const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas";
|
|
|
|
+#if defined(OS_LINUX)
|
|
+// Enables hardware acceleration of video for Linux only. VA-API driver
|
|
+// is required to be present on the system installation.
|
|
+const char kEnableAcceleratedVideo[] = "enable-accelerated-video";
|
|
+#endif
|
|
// Disables hardware acceleration of video decode, where available.
|
|
const char kDisableAcceleratedVideoDecode[] =
|
|
"disable-accelerated-video-decode";
|
|
@@ -868,11 +873,13 @@
|
|
// ignores this switch on its stable and beta channels.
|
|
const char kDisableWebRtcEncryption[] = "disable-webrtc-encryption";
|
|
|
|
+#if defined(OS_CHROMEOS)
|
|
// Disables HW decode acceleration for WebRTC.
|
|
const char kDisableWebRtcHWDecoding[] = "disable-webrtc-hw-decoding";
|
|
|
|
// Disables HW encode acceleration for WebRTC.
|
|
const char kDisableWebRtcHWEncoding[] = "disable-webrtc-hw-encoding";
|
|
+#endif
|
|
|
|
// Enables negotiation of GCM cipher suites from RFC 7714 for SRTP in WebRTC.
|
|
// See https://tools.ietf.org/html/rfc7714 for further information.
|
|
diff -ur content/public/common/content_switches.h chromium-69.0.3497.92/content/public/common/content_switches.h
|
|
--- content/public/common/content_switches.h 2018-09-12 00:39:42.000000000 +0530
|
|
+++ content/public/common/content_switches.h 2018-09-13 22:10:34.172009028 +0530
|
|
@@ -104,6 +104,9 @@
|
|
CONTENT_EXPORT extern const char kDomAutomationController[];
|
|
extern const char kDisable2dCanvasClipAntialiasing[];
|
|
CONTENT_EXPORT extern const char kDumpBlinkRuntimeCallStats[];
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+CONTENT_EXPORT extern const char kEnableAcceleratedVideo[];
|
|
+#endif
|
|
CONTENT_EXPORT extern const char kEnableAccessibilityObjectModel[];
|
|
CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[];
|
|
CONTENT_EXPORT extern const char kEnableAutomation[];
|
|
@@ -241,8 +244,10 @@
|
|
CONTENT_EXPORT extern const char kWaitForDebuggerChildren[];
|
|
|
|
CONTENT_EXPORT extern const char kDisableWebRtcEncryption[];
|
|
+#if defined(OS_CHROMEOS)
|
|
CONTENT_EXPORT extern const char kDisableWebRtcHWDecoding[];
|
|
CONTENT_EXPORT extern const char kDisableWebRtcHWEncoding[];
|
|
+#endif
|
|
CONTENT_EXPORT extern const char kEnableWebRtcSrtpAesGcm[];
|
|
CONTENT_EXPORT extern const char kEnableWebRtcSrtpEncryptedHeaders[];
|
|
CONTENT_EXPORT extern const char kEnableWebRtcStunOrigin[];
|
|
diff -ur content/renderer/render_thread_impl.cc chromium-69.0.3497.92/content/renderer/render_thread_impl.cc
|
|
--- content/renderer/render_thread_impl.cc 2018-09-12 00:39:42.000000000 +0530
|
|
+++ content/renderer/render_thread_impl.cc 2018-09-13 22:10:34.192008415 +0530
|
|
@@ -1441,7 +1441,11 @@
|
|
kGpuStreamPriorityMedia);
|
|
|
|
const bool enable_video_accelerator =
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideo) &&
|
|
+#else
|
|
!cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode) &&
|
|
+#endif
|
|
(gpu_channel_host->gpu_feature_info()
|
|
.status_values[gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE] ==
|
|
gpu::kGpuFeatureStatusEnabled);
|
|
Only in content/renderer: render_thread_impl.cc.orig
|
|
diff -ur gpu/config/software_rendering_list.json chromium-69.0.3497.92/gpu/config/software_rendering_list.json
|
|
--- gpu/config/software_rendering_list.json 2018-09-12 00:39:44.000000000 +0530
|
|
+++ gpu/config/software_rendering_list.json 2018-09-13 22:10:34.193008384 +0530
|
|
@@ -377,17 +377,6 @@
|
|
]
|
|
},
|
|
{
|
|
- "id": 48,
|
|
- "description": "Accelerated video decode is unavailable on Linux",
|
|
- "cr_bugs": [137247],
|
|
- "os": {
|
|
- "type": "linux"
|
|
- },
|
|
- "features": [
|
|
- "accelerated_video_decode"
|
|
- ]
|
|
- },
|
|
- {
|
|
"id": 50,
|
|
"description": "Disable VMware software renderer on older Mesa",
|
|
"cr_bugs": [145531, 332596, 571899, 629434],
|
|
diff -ur media/base/media_switches.cc chromium-69.0.3497.92/media/base/media_switches.cc
|
|
--- media/base/media_switches.cc.orig 2019-06-18 11:48:14.000000000 -0400
|
|
+++ media/base/media_switches.cc 2019-07-02 12:32:22.370983036 -0400
|
|
@@ -103,10 +103,15 @@
|
|
const char kUseFakeMjpegDecodeAccelerator[] =
|
|
"use-fake-mjpeg-decode-accelerator";
|
|
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+// Enable hardware accelerated mjpeg decode on linux
|
|
+const char kEnableAcceleratedMjpegDecode[] = "enable-accelerated-mjpeg-decode";
|
|
+#else
|
|
// Disable hardware acceleration of mjpeg decode for captured frame, where
|
|
// available.
|
|
const char kDisableAcceleratedMjpegDecode[] =
|
|
"disable-accelerated-mjpeg-decode";
|
|
+#endif
|
|
|
|
// When running tests on a system without the required hardware or libraries,
|
|
// this flag will cause the tests to fail. Otherwise, they silently succeed.
|
|
@@ -503,15 +508,21 @@
|
|
};
|
|
|
|
bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
|
|
+ if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
|
|
+ switches::kEnableAcceleratedMjpegDecode)
|
|
+#else
|
|
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
|
- switches::kDisableAcceleratedMjpegDecode)) {
|
|
+ switches::kDisableAcceleratedMjpegDecode)
|
|
+#endif
|
|
+ ) {
|
|
return false;
|
|
}
|
|
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
|
switches::kUseFakeMjpegDecodeAccelerator)) {
|
|
return true;
|
|
}
|
|
-#if defined(OS_CHROMEOS)
|
|
+#if !defined(OS_ANDROID) && defined(OS_LINUX)
|
|
return true;
|
|
#endif
|
|
return false;
|
|
diff -ur media/base/media_switches.h chromium-69.0.3497.92/media/base/media_switches.h
|
|
--- media/base/media_switches.h.orig 2019-07-02 12:20:39.902984488 -0400
|
|
+++ media/base/media_switches.h 2019-07-02 12:33:45.441923602 -0400
|
|
@@ -60,7 +60,11 @@
|
|
MEDIA_EXPORT extern const char kUseFileForFakeVideoCapture[];
|
|
MEDIA_EXPORT extern const char kUseFileForFakeAudioCapture[];
|
|
MEDIA_EXPORT extern const char kUseFakeMjpegDecodeAccelerator[];
|
|
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
|
+MEDIA_EXPORT extern const char kEnableAcceleratedMjpegDecode[];
|
|
+#else
|
|
MEDIA_EXPORT extern const char kDisableAcceleratedMjpegDecode[];
|
|
+#endif
|
|
|
|
MEDIA_EXPORT extern const char kRequireAudioHardwareForTesting[];
|
|
MEDIA_EXPORT extern const char kMuteAudio[];
|
|
diff -ur media/gpu/BUILD.gn chromium-69.0.3497.92/media/gpu/BUILD.gn
|
|
--- media/gpu/BUILD.gn 2018-09-12 00:39:48.000000000 +0530
|
|
+++ media/gpu/BUILD.gn 2018-09-13 22:10:34.210007863 +0530
|
|
@@ -508,6 +508,14 @@
|
|
}
|
|
}
|
|
|
|
+if (is_desktop_linux && use_vaapi) {
|
|
+ import("//build/config/linux/pkg_config.gni")
|
|
+
|
|
+ pkg_config("libva_config") {
|
|
+ packages = [ "libva" ]
|
|
+ }
|
|
+}
|
|
+
|
|
if (use_v4l2_codec || use_vaapi) {
|
|
test("jpeg_encode_accelerator_unittest") {
|
|
deps = [
|
|
@@ -559,6 +567,10 @@
|
|
if (use_ozone) {
|
|
deps += [ "//ui/ozone" ]
|
|
}
|
|
+
|
|
+ if (is_desktop_linux) {
|
|
+ public_configs = [ ":libva_config" ]
|
|
+ }
|
|
}
|
|
}
|
|
|
|
--- content/renderer/media/webrtc/video_codec_factory.cc.orig 2019-07-02 16:39:57.973241977 -0400
|
|
+++ content/renderer/media/webrtc/video_codec_factory.cc 2019-07-02 17:00:00.656342711 -0400
|
|
@@ -187,8 +187,11 @@
|
|
std::unique_ptr<webrtc::VideoEncoderFactory> encoder_factory;
|
|
|
|
const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
|
|
- if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled() &&
|
|
- !cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding)) {
|
|
+ if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled()
|
|
+#if defined(OS_CHROMEOS)
|
|
+ && !cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding)
|
|
+#endif
|
|
+ ) {
|
|
encoder_factory.reset(new RTCVideoEncoderFactory(gpu_factories));
|
|
}
|
|
|
|
@@ -205,8 +208,11 @@
|
|
std::unique_ptr<webrtc::VideoDecoderFactory> decoder_factory;
|
|
|
|
const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
|
|
- if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled() &&
|
|
- !cmd_line->HasSwitch(switches::kDisableWebRtcHWDecoding)) {
|
|
+ if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled()
|
|
+#if defined(OS_CHROMEOS)
|
|
+ && !cmd_line->HasSwitch(switches::kDisableWebRtcHWDecoding)
|
|
+#endif
|
|
+ ) {
|
|
decoder_factory.reset(new RTCVideoDecoderFactory(gpu_factories));
|
|
}
|
|
|