Chrome Command Line Flags & Switches
发布时间:2026-09-22 | 浏览:1
Add additional capabilities to the AppContainer sandbox used for XR compositing.
Allows plugins to be loaded in the command line for testing.
By default, file:// URIs cannot read other file:// URIs. This is an override for developers who need the old behavior for testing.
Enables TLS/SSL errors on localhost to be ignored (no interstitial, no blocking of requests).
Allows remote attestation (RA) in dev mode for testing purpose. Usually RA is disabled in dev mode because it will always fail. However, there are cases in testing where we do want to go through the permission flow even in dev mode. This can be enabled by this flag.
Allows debugging of sandboxed processes (see zygote_main_linux.cc).
Allows third party modules to inject by disabling the BINARY_SIGNATURE mitigation policy on Win10+. Also has other effects in ELF.
The Alsa device to use when opening an audio input stream.
The Alsa device to use when opening an audio stream.
Scale factor to apply to every animation duration. Must be >= 0.0. This will only apply to LinearAnimation and its subclasses.
The following are the runtimes that WebXr supports.
Flag to launch tests in the browser process.
scripts have been updated, the leading "ash" prefix should be removed. Enables software based mirroring.
Enables unified desktop mode.
Sets a window size, optional position, optional scale factor and optional panel radii. "1024x768" creates a window of size 1024x768. "100+200-1024x768" positions the window at 100,200. "1024x768*2" sets the scale factor to 2 for a high DPI display. "1024x768~15|15|12|12" sets the radii of the panel corners as (upper_left=15px,upper_right=15px, lower_right=12px, upper_left=12px) "800,0+800-800x800" for two displays at 800x800 resolution. "800,0+800-800x800,0+1600-800x800" for three displays at 800x800 resolution.
Allow users to specify a custom buffer size for debugging purpose.
Audio codecs supported by the HDMI sink is retrieved from the audio service process. EDID contains the Short Audio Descriptors, which list the audio decoders supported, and the information is presented as a bitmask of supported audio codecs.
Use high priority for the audio process.
The values the kTouchEventFeatureDetection switch may have, as in --touch-events=disabled. auto: enabled at startup when an attached touchscreen is present.
Sets the API key that will be used when calling Autofill API instead of using Chrome's baked key by default. You can use this to test new versions of the API that are not linked to the Chrome baked key yet.
Override the default autofill server URL with "scheme://host[:port]/prefix/".
Command line flag name to set the autoplay policy.
Causes the browser process to display a dialog on launch.
Path to the exe to run for the renderer and plugin subprocesses.
Tells whether the code is running browser tests (this changes the startup URL used by the content shell and also disables features that can make tests flaky [like monitoring of memory pressure]).
Causes tests to attempt to verify pixel output.
Enable in-progress canvas 2d API methods BeginLayer and EndLayer.
Increases timeout for memory checkers.
Prevents the layer tree unit tests from timing out.
After a zygote forks a new process, change the stack canary. This switch is useful so not all forked processes use the same canary (a secret value), which can be vulnerable to information leaks and brute force attacks. See https://crbug.com/1206626. This requires that all functions on the stack at the time content::RunZygote() is called be compiled without stack canaries. Valid values are "enable" or "disable".
Checks damage early and aborts the frame if no damage, so that clients like Android WebView don't invalidate unnecessarily.
Specifies the path to the Clear Key CDM for testing, which is necessary to support External Clear Key key system when library CDM is enabled. Note that External Clear Key key system support is also controlled by feature kExternalClearKeyForTesting.
Command line switches, sorted by name. Clears the token service before using it. This allows simulating the expiration of credentials during testing.
Start the GPU process for Dawn info collection immediately after the browser starts. The default is to delay for 120 seconds.
Always return success when compiling a shader. Linking will still fail.
Causes the browser process to crash on startup.
Special switches for "NULL"/stub driver implementations.
Specifies the URL at which to communicate with the device management backend to fetch configuration policies and perform other device tasks.
Device scale factor passed to certain processes like renderers, etc.
Disable antialiasing on 2d canvas clips
Disables client-visible 3D APIs, in particular WebGL. This is controlled by policy and is kept separate from the other enable/disable switches to avoid accidentally regressing the policy support for controlling access to these APIs.
Disable gpu-accelerated 2d canvas.
Disables specified comma separated ANGLE features if found.
Forces input and output stream creation to use fake audio streams.
Disables the BackForwardCache feature.
Disable limits on the number of backing stores. Can prevent blinking for users with many windows/tabs and lots of memory.
Delays execution of TaskPriority::BEST_EFFORT tasks until shutdown.
Disable one or more Blink runtime-enabled features. Use names from runtime_enabled_features.json5, separated by commas. Applied after kEnableBlinkFeatures, and after other flags that change these features.
Disable CancelAllTouches() function for the implementation on cancel single touches.
Disable antialiasing on 2d canvas.
Disabled defering all image decodes to the image decode service, ignoring DecodingMode preferences specified on PaintImage.
Explicitly disable D3D11 WARP fallback. Some test suites prefer falling back to swiftshader.
Set the Dawn features(toggles) disabled on the creation of Dawn devices.
Disable DirectComposition.
Disable explicit DMA-fences
Disable field trial tests configured in fieldtrial_testing_config.json.
Disable FileSystem API.
Disables GL drawing operations which produce pixel output. With this the GL output will not be correct but tests will run faster.
Disable the GL error log limit.
Disables specified comma separated GL Extensions if found.
Disable the GLSL translator.
Disables GPU hardware acceleration. If software renderer is not in place, then the GPU process won't launch.
Prevent the compositor from using its GPU implementation.
Disable proactive early init of GPU process.
For tests, to disable the limit on the number of times the GPU process may be restarted.
Turn off gpu program caching
Disable GPU rasterization, i.e. rasterize on the CPU only. Overrides the kEnableGpuRasterization flag.
Disables the GPU process sandbox.
Disables the GPU shader on disk cache.
Stop the GPU from synchronizing presentation with vblank.
Disable the thread that crashes the GPU process if it stops responding to messages.
Disable the RenderThread's HistogramCustomizer.
Disables the in-process stack traces.
Disables the IPC flooding protection. It is activated by default. Some javascript functions can be used to flood the browser process with IPC. This protection limits the rate at which they can be used.
Don't kill a child process when it sends a bad IPC message. Apart from testing, it is a bad idea from a security perspective to enable this switch.
Disables the Landlock sandbox (Android only).
Disables LCD text.
Disable the Legacy Window which corresponds to the size of the WebContents.
Disable LocalStorage.
Force logging to be disabled. Logging is enabled by default in debug builds.
Disables using CODECAPI_AVLowLatencyMode when creating DXVA decoders.
Disable Media Session API
Disables Metal's shader cache, using the GPU sandbox to prevent access to it.
Disables mipmap generation in Skia. Used a workaround for select low memory devices, see https://crbug.com/1138979 for details.
Disables Mojo broker capabilities in the browser during Mojo initialization.
Disables usage of the namespace sandbox.
Disables the Web Notification and the Push APIs.
Disables the video decoder from drawing to an NV12 textures instead of ARGB.
Disables debug crash dumps for OOPR.
Disables the verification of policy signing keys. It just works on Chrome OS test images and crashes otherwise. better solution to enable policy tast test for Family Link account.
Disables the Presentation API.
Disables throttling of history.pushState/replaceState calls.
Taints all <canvas> elements, regardless of origin.
Disables remote web font support. SVG font should always work whether this option is specified or not.
Disables the RemotePlayback API.
Prevent renderer process backgrounding when set.
Whether the ResourceScheduler is disabled. Note this is only useful for C++ Headless embedders who need to implement their own resource scheduling.
Disable the locking feature of the screen orientation API.
This switch disables the ScrollToTextFragment feature.
Disable the seccomp filter sandbox (seccomp-bpf) (Linux only).
Disable the setuid sandbox (Linux only).
Turn off user-defined name hashing in shaders.
Disable shared workers.
Disables site isolation. Note that the opt-in (to site-per-process, isolate-origins, etc.) via enterprise policy and/or cmdline takes precedence over the kDisableSiteIsolation switch (i.e. the opt-in takes effect despite potential presence of kDisableSiteIsolation switch). Note that for historic reasons the name of the switch misleadingly mentions "trials", but the switch also disables the default site isolation that ships on desktop since M67. The name of the switch is preserved for backcompatibility of chrome://flags.
Force disabling/enabling Skia Graphite. Disabling will take precedence over enabling if both are specified.
Do not use runtime-detected high-end CPU optimizations in Skia. This is useful for forcing a baseline code path for e.g. web tests.
Disable smooth scrolling for testing.
Disables the use of a 3D software rasterizer.
Disables the Web Speech API (both speech recognition and synthesis).
Disables the speech synthesis part of Web Speech API.
Disable multithreaded GPU compositing of web content.
Disable timeouts that may cause the browser to die when running slowly. This is useful if running with profiling (such as debug malloc).
Disables translation triggering for pages, including translate page pop up and auto translate feature. Manual translation unaffected.
Disable V8 idle tasks.
Disable variations safe mode.
Disable fetching of variations seed from the server for testing.
Disables VK_KHR_surface extension. Instead of using swapchain, bitblt will be used for present render result on screen.
Disable wayland input method editor.
Don't enforce the same-origin policy; meant for website testing only. This switch has no effect unless --user-data-dir (as defined by the content embedder) is also present.
Disable all versions of WebGL.
Disable WebGL2.
Disables the WebNN compiler process sandbox.
Disables encryption of RTP Media for WebRTC. When Chrome embeds Content, it ignores this switch on its stable and beta channels.
Disable YUV image decoding for those formats and cases where it's supported. Has no effect unless GPU rasterization is enabled.
Disable the video decoder from drawing directly to a texture.
disabled: touch events are disabled.
Which X11 display to connect to. Emulates the GTK+ "--display=" command line argument. In use only with Ozone/X11.
Additional display properties are provided through this switch that are beyond what is available via EDID encoded as JSON. Please see `https://chromium.googlesource.com/chromiumos/platform2/+/dd10a5ae3618bb9dc5fb47ac415ebef6e9a3827d/chromeos-config/README.md#displays` for the data format.
Specifies if the |DOMAutomationController| needs to be bound in the renderer. This binding happens on per-frame basis and hence can potentially be a performance bottleneck. One should only enable it when automating dom based tests.
Save CompositorFrame data in both renderer and gpu process for TreesInViz and TreeAnimationsInViz. This doesn't work without --no-sandbox. If no parameters are specified, by default, it records frame 1 - 10. If --dump-compositor-frame=begin,end is specified, it records frame [begin, end] inclusive.
Tells Chrome to do edge touch filtering. Useful for convertible tablet.
ANGLE features are defined per-backend in third_party/angle/include/platform Enables specified comma separated ANGLE features if found.
Enable indication that browser is controlled by automation.
Enables the benchmarking JavaScript API.
Enable one or more Blink runtime-enabled features. Use names from runtime_enabled_features.json5, separated by commas. Applied before kDisableBlinkFeatures, and after other flags that change these features.
Enables blink runtime enabled features with status:"test" or status:"experimental", which are enabled when running web tests.
Enable native caret browsing, in which a moveable cursor is placed on a web page, allowing a user to select and navigate through non-editable text using just a keyboard. See https://crbug.com/977390 for links to i2i.
Enable validation layers in Dawn backends.
Set the Dawn features(toggles) enabled on the creation of Dawn devices.
BUILDFLAG(IS_FREEBSD) || BUILDFLAG(IS_SOLARIS) Use exclusive mode audio streaming for Windows Vista and higher. Leads to lower latencies for audio streams which uses the AudioParameters::AUDIO_PCM_LOW_LATENCY audio path. See http://msdn.microsoft.com/en-us/library/windows/desktop/dd370844.aspx for details.
Enable field trial tests configured in fieldtrial_testing_config.json. If the "disable_fieldtrial_testing_config" GN flag is set to true, then this switch is a no-op. Otherwise, for non-Chrome branded builds, the testing config is already applied by default, unless the "--disable-field-trial-config", "--force-fieldtrials", and/or "--variations-server-url" switches are passed. It is however possible to apply the testing config as well as specify additional field trials (using "--force-fieldtrials") by using this switch. For Chrome-branded builds, the testing config is not enabled by default, so this switch is required to enable it. If this switch is set to "benchmarking", it enables variations benchmarking mode, which skips experiments that are disabled for benchmarking.
Enables the GPU benchmarking extension
Enables measures of how long GPU Main Thread was blocked between SwapBuffers
Turn on Logging GPU commands.
Turn on Calling GL Error after every command.
Enable logging of GPU driver debug messages.
Allow heuristics to determine when a layer tile should be drawn with the Skia GPU backend. Only valid with GPU accelerated compositing.
Enable GPU service logging. Note: This is the same switch as the one in gl_switches.cc. It's defined here again to avoid dependencies between dlls.
Turns on calling TRACE for every GL call.
Enables LCD text.
Force logging to be enabled. Logging is disabled by default in release builds.
Enable drag manipulation of longpress-triggered text selections.
Enable native CPU-mappable GPU memory buffer support on Linux.
Forces tests to produce pixel output when they normally wouldn't.
Make the values returned to window.performance.memory more granular and more up to date in shared worker. Without this flag, the memory information is still available, but it is bucketized and updated less frequently. This flag also applys to workers.
Enables Privacy Sandbox APIs: Attribution Reporting, Fledge, Topics, Fenced Frames, Shared Storage, Private Aggregation, and their associated features.
Enables protected buffers for encrypted video streams.
Cause the OS X sandbox write to syslog every time an access to a resource is denied by the sandbox.
Allows scaling clipped images in GpuImageDecodeCache. Note that this may cause color-bleeding. cache problems are solved.
If true the ServiceProcessLauncher is used to launch services. This allows for service binaries to be loaded rather than using the utility process. This is only useful for tests.
Enable use of the SGI_video_sync extension, which can have driver/sandbox/window manager compatibility issues.
Enables the Skia benchmarking extension.
On platforms that support it, enables smooth scroll animation.
Enable spatial navigation
Allows sending text-to-speech requests to speech-dispatcher, a common Linux speech service. Because it's buggy, the user must explicitly enable it so that visiting a random webpage can't cause instability.
When specified along with a value in the range (0,1] will --enable-tracing for (roughly) that percentage of tests being run. This is done in a stable manner such that the same tests are chosen each run, and under the assumption that tests hash equally across the range of possible values. The flag will enable all tracing categories for those tests, and none for the rest. This flag could be used with other tracing switches like --enable-tracing-format, but any other switches that will enable tracing will turn tracing on for all tests.
Allow usage of SwiftShader for WebGL
Enables the use of the @viewport CSS rule, which allows pages to control aspects of their own layout. This also turns on touch-screen pinch gestures.
Enable the Vtune profiler support.
Enables using protected memory for vulkan resources.
Try to enable wayland input method editor.
Enables WebGL draft extensions (not yet approved by the community). This has side-effects in the GPU process, so the flag is here so that code in both gpu/ and content/ can access it.
enabled: touch events always enabled.
Specifies the URL at which to upload encrypted reports.
Enforce GL minimums.
Crash the browser at startup if the display's color profile does not match the forced color profile. This is necessary on Mac because Chrome's pixel output is always subject to the color conversion performed by the operating system. On all other platforms, this is a no-op.
Exposes the window.internals object in JavaScript for testing.
Causes the AudioManager to fail creating audio streams. Used when testing various failure cases.
Fakes the channel of the browser for purposes of Variations filtering. This is to be used for testing only. Possible values are "stable", "beta", "dev" and "canary". This works for official builds as well.
Fakes the platform of the browser for variations seed fetching and field trial filtering. Possible values are as follows: "android", "android_webview", "chromeos", "fuchsia", "ios", "linux", "mac", and "win". Intended only for testing.
Specifies the URL at which to communicate with File Storage Server (go/crosman-file-storage-server) to upload log and support packet files.
Define an alias root directory which is replaced with the replacement string in file URLs. The format is "/alias=/replacement", which would turn file:///alias/some/path.html into file:///replacement/some/path.html.
DirectWrite FontCache is shared by browser to renderers using shared memory. This switch allows us to pass the shared memory handle to the renderer.
Crash Chrome if GPU process crashes. This is to force a test to fail when GPU process crashes unexpectedly.
Force all monitors to be treated as though they have the specified color profile. Accepted values are "srgb" and "generic-rgb" (currently used by Mac layout tests) and "color-spin-gamma24" (used by layout tests).
Overrides the device scale factor for the browser UI and the contents.
Forces to remove Chrome Variation Ids from being sent in X-Client-Data header, specified as a 64-bit encoded list of numeric experiment ids. Ids prefixed with the character "t" will be treated as Trigger Variation Ids.
Forces Network Quality Estimator (NQE) to return a specific effective connection type.
This option can be used to force parameters of field trials when testing changes locally. The argument is a param list of (key, value) pairs prefixed by an associated (trial, group) pair. You specify the param list for multiple (trial, group) pairs with a comma separator. Example: "Trial1.Group1:k1/v1/k2/v2,Trial2.Group2:k3/v3/k4/v4" Trial names, groups names, parameter names, and value should all be URL escaped for all non-alphanumeric characters.
Force enable the default browser step in the first run experience on Desktop.
Overrides the eligible steps in the Feature Showcase step of the first run experience. Step names should be valid values separated by commas.
Sets the maximum texture size in pixels.
Forces whether the user desires no reduced motion, regardless of system settings.
Forces whether the user desires reduced motion, regardless of system settings.
Force rastering to take place in the specified color profile. Accepted values are the same as for the kForceDisplayColorProfile case above.
Forces additional Chrome Variation Ids that will be sent in X-Client-Data header, specified as a 64-bit encoded list of numeric experiment ids. Ids prefixed with the character "t" will be treated as Trigger Variation Ids. IMPORTANT: You can use this switch for test purposes (e.g. a manual command line run or from a unit test), but NOT for production code in the browser, as the latter is not allowed for privacy reasons (except for the current use by about:flags code).
Force media player using SurfaceView instead of SurfaceTexture on Android. Note: This is used by the Cast playback pipeline and must be kept.
Use Windows WaveOut/In audio API even if Core Audio is supported.
Force all WebGPU content to run in WebGPU Compatibility mode.
Override WebRTC IP handling policy to mimic the behavior when WebRTC IP handling policy is specified in Preferences.
Forcibly enable and select the specified runtime for webxr. Note that this provides an alternative means of enabling a runtime, and will also functionally disable all other runtimes.
Overrides the target language for translation and forces translation of all pages to the new target language.
Include ANGLE's intermediate representation (AST) output in shader compilation info logs.
Select a different set of GPU blocklist entries with the specified test_group ID.
Passes the active graphics device id from browser process to info collection GPU process.
Allows explicitly specifying the shader disk cache size for embedded devices. Default value is 6MB. On Android, 2MB is default and 128KB for low-end devices.
Enable an extra set of GPU driver bug list entries with the specified test_group ID. Note the default test group (group 0) is still active.
Passes the active graphics driver version from browser process to info collection GPU process.
Extra command line options for launching the GPU process (normally used for debugging). Use like renderer-cmd-prefix.
Inform Chrome that a GPU context will not be lost in power saving mode, screen saving mode, etc. Note that this flag does not ensure that a GPU context will never be lost in any situations, say, a GPU reset.
Passes encoded GpuPreferences to GPU process.
Makes this process a GPU sub-process.
Sets the maximum size of the in-memory gpu program cache, in kb
Passes the number of recent GPU crashes to the GPU process.
Passes the active graphics revision info from browser process to info collection GPU process.
Allows shmat() system call in the GPU sandbox.
Makes GPU sandbox failures fatal.
Starts the GPU sandbox before creating a GL context.
Causes the GPU process to display a dialog on launch.
Passes the active graphics sub system id from browser process to info collection GPU process.
Passes the active graphics vendor id from browser process to info collection GPU process.
Override value for the GPU watchdog timeout in seconds.
Causes the second GPU process used for gpu info collection to display a dialog on launch.
Some (Qualcomm only at the moment) V4L2 video decoders require setting the framerate so that the hardware decoder can scale the clocks efficiently. This provides a mechanism during testing to lock the decoder framerate to a specific value.
Allows explicitly picking a device path to find the device for VA-API video decoding and encoding.
Run in headless mode, i.e., without a UI or display server dependencies.
Prevents creating scrollbars for web content. Useful for taking consistent screenshots.
These mappings only apply to the host resolver.
Deprecated alias for backwards compatibility, now does the same thing as --host-resolver-rules which should be used instead.
The switch to ignore bad mojo message reports. Only for testing.
Ignores GPU blocklist.
Run the GPU process as a thread in the browser process.
Specifies manual overrides to the IP endpoint -> IP address space mapping. This allows running local tests against "public" and "local" IP addresses. This switch is specified as a comma-separated list of overrides. Each override is an equals-separated "<endpoint|ip-range>=<address space>" pair. Grammar, in pseudo-BNF format: switch := override-list override-list := override “,” override-list | <nil> override := (ip-endpoint | ip_range) “=” address-space address-space := “public” | “private” | “local” | "loopback" ip-endpoint := ip-address ":" port ip-address := see `net::ParseURLHostnameToAddress()` for details port := integer in the [0-65535] range ip-range := ip-address "/" bitmask bitmask := integer in the [0-128] range Any invalid entries in the comma-separated list are ignored. If the port specified is 0, all ports for the given ip-address will be overridden. See also the design doc: https://docs.google.com/document/d/1-umCGylIOuSG02k9KGDwKayt3bzBXtGwVlCQHHkIcnQ/edit# And the Web Platform Test RFC #72 behind it: https://github.com/web-platform-tests/rfcs/blob/master/rfcs/address_space_overrides.md Note that since the doc and the RFC were written, the address space names have changed slightly due to Local Network Access (LNA) replacing Private Network Access (PNA).
Overrides the timeout, in seconds, that a child process waits for a connection from the browser before killing itself.
Dumps IPC messages sent from renderer processes to the browser process to the given directory. Used primarily to gather samples for IPC fuzzing.
Specifies the testcase used by the IPC fuzzer.
Require dedicated processes for a set of origins, specified as a comma-separated list. For example: --isolate-origins=https://www.foo.com,https://www.bar.com
Enables/disables javaless renderers based on value given. "enabled" or "disabled" are valid values.
Enables experimental Harmony (ECMAScript 6) features.
Time the browser launched the renderer process (in TimeTicks).
Flag used to load WebUI files directly from disk instead of pak files. Meant to be used during local development only (requires a local checkout and build), and only works if used along with the GN load_webui_from_disk=true GN flag.
Overrides the default file name to use for general-purpose logging (does not affect which events are logged).
Logs GPU control list decisions when enforcing blocklist rules.
Sets the minimum log level. Valid values are from 0 to 3: INFO = 0, WARNING = 1, LOG_ERROR = 2, LOG_FATAL = 3.
Log an error whenever the unload timeout for a render frame is exceeded.
Checks and logs double background blur as an error if any.
Allows user to override maximum number of active WebGL contexts per renderer process.
Sets the maximium decoded image size limitation.
Override the maximum framerate as can be specified in calls to getUserMedia. This flag expects a value. Example: --max-gum-fps=17.5
Sets the maximum number of WebMediaPlayers allowed per frame.
Indicates the utility process should run with a message loop type of UI.
Use a Mojo-based LocalStorage implementation.
Allows explicitly specifying MSE audio/video buffer sizes as megabytes. Default values are 150M for video and 12M for audio.
Mutes audio sent to the audio device so it is not audible during automated testing.
Sets the granularity of events to capture in the network log. The mode can be set to one of the following values: "Default" "IncludeSensitive" "Everything" See the enums of the corresponding name in net_log_capture_mode.h for a description of their meanings.
Specifies the duration (in seconds) for network logging. When this flag is provided with a positive integer value X, Chrome will automatically stop collecting NetLog events after X seconds and flush the log to disk.
Sets the format used for the network log file. Supported values are: "json" "ndjson"
Sets the maximum size, in megabytes. The log file can grow to before older data is overwritten. Do not use this flag if you want an unlimited file size.
Disables the sandbox for all process types that are normally sandboxed. Meant to be used as a browser-level switch for testing purposes only.
Disables the unsandboxed zygote. Note: this flag should not be used on most platforms. It is introduced because some platforms (e.g. Cast) have very limited memory and binaries won't be updated when the browser process is running.
Autoplay policy that does not require any user gesture.
Tell WebXr to assume that it does not support any runtimes.
Disables MIT-SHM extension. In use only with Ozone/X11.
Disables the use of a zygote process for forking child processes. Instead, child processes will be forked and exec'd directly. Note that --no-sandbox should also be used together with this flag because the sandbox needs the zygote to work.
Instructs the zygote to launch without a sandbox. Processes forked from this type of zygote will apply their own custom sandboxes later.
Controls the number of threads to use for raster tasks.
Swap chain formats for direct composition SDR video overlays.
Overrides the language detection result determined based on the page contents.
Specify location for image dumps.
Specifies ozone screen size.
Specify ozone platform implementation to use.
Renderer process that runs the non-PPAPI PDF plugin.
Tells chrome to interpret events from these devices as pen events. Only available with XInput 2 (i.e. X server 1.8 or above). The id's of the devices can be retrieved from 'xinput list'.
Set policy value by command line.
Replace the original verification_key with the one provided by the command line flag. Can be used only for unit tests or browser tests.
Enable the "Process Per Site" process model for all domains. This mode consolidates same-site pages so that they share a single process. More details here: - https://www.chromium.org/developers/design-documents/process-models - The class comment in site_instance.h, listing the supported process models. IMPORTANT: This isn't to be confused with --site-per-process (which is about isolation, not consolidation). You probably want the other one.
Runs each set of script-connected tabs (i.e., a BrowsingInstance) in its own renderer process. We default to using a renderer process for each site instance (i.e., group of pages from the same registered domain with script connections to each other). "unnecessary" process swaps for cross-site navigations but still swap when needed for security (e.g., isolated origins).
Handle to shared memory containing the pseudonymization salt, passed to child processes at launch. See https://crbug.com/40850085.
Enables or disables pull-to-refresh gesture in response to vertical overscroll. Set the value to '0' to disable the feature, set to '1' to enable it for both touchpad and touchscreen, and set to '2' to enable it only for touchscreen. Defaults to disabled.
Raise the timer interrupt frequency in all Chrome processes, for experimental purposes. This feature is needed because as of Windows 10 2004 the scheduling effects of changing the timer interrupt frequency are not global, and this lets us prove/disprove whether this matters. See https://crbug.com/1128917
Specifies the URL at which to upload real-time reports.
Reduce the accept-language for HTTP header and JS navigator.languages, and only most preferred language: https://github.com/Tanych/accept-language.
Reduce the accept-language for HTTP header, and only send most preferred language in the request header: https://github.com/Tanych/accept-language.
Reduce the minor version number in the User-Agent string. This flag implements phase 4 of User-Agent reduction: https://blog.chromium.org/2021/09/user-agent-reduction-origin-trial-and-dates.html.
Enables web socket connections from the specified origins only. '*' allows any origin.
Specifies pipe names for the incoming and outbound messages on the Windows platform. This is a comma separated list of two pipe handles serialized as unsigned integers, e.g. "--remote-debugging-io-pipes=3,4".
Enables remote debug over stdio pipes [in=3, out=4] or over the remote pipes specified in the 'remote-debugging-io-pipes' switch. Optionally, specifies the format for the protocol messages, can be either "JSON" (the default) or "CBOR".
Enables remote debug over HTTP on the specified port.
Enables remote debug over HTTP on the specified socket name.
Allows explicitly picking a DRM render node to create gbm_device for rendering.
Causes the process to run as renderer instead of as browser.
The contents of this flag are prepended to the renderer command line. Useful values might be "valgrind" or "xterm -e gdb --args".
Overrides the default/calculated limit to the number of renderer processes. Very high values for this setting can lead to high memory/resource usage or instability.
Causes the renderer process to display a dialog on launch. Passing this flag also adds sandbox::policy::kNoSandbox on Windows non-official builds, since that's needed to show a dialog.
Block ChildProcessMain thread of the renderer's ChildProcessService until a Java debugger is attached.
Parameters for kUIShowCompositedLayerBorders.
Manual tests only run when --run-manual is specified. This allows writing tests that don't run automatically but are still in the same test binary. This is useful so that a team that wants to run a few tests doesn't have to add a new binary that must be compiled on all builds.
Causes the process to run as a sandbox IPC subprocess.
Specifies the initial screen configuration, or state of all displays, for FakeDisplayDelegate, see class for format details.
Headless screen info in the format: {0,0 800x600}{800,0 600x800}. See //components/headless/screen_info/README.md for more details.
Specifies the layout mode and offsets for the secondary display for testing. The format is "<t|r|b|l>,<offset>" where t=TOP, r=RIGHT, b=BOTTOM and L=LEFT. For example, 'r,-100' means the secondary display is positioned on the right with -100 offset. (above than primary)
Specifies the base URL to contact the secure connect Api.
Type of sandbox to apply to the process running the service, one of the values in the next block.
Describes the file descriptors passed to a child process in the following list format: <file_id>:<descriptor_id>,<file_id>:<descriptor_id>,... where <file_id> is an ID string from the manifest of the service being launched and <descriptor_id> is the numeric identifier of the descriptor for the child process can use to retrieve the file descriptor from the global descriptor table.
Annotates forms and fields with Autofill signatures.
Annotates forms with Autofill field type predictions.
Renders a border around compositor layers to help debug and study layer compositing.
Draws a heads-up-display showing Frames Per Second as well as GPU memory usage. If you also use --enable-logging=stderr --vmodule="head*=1" then FPS will also be output to the console log.
Renders a border that represents the bounding box for the layer's animation.
Show rects in the HUD around layers whose properties have changed.
Show rects in the HUD around the screen-space transformed bounds of every layer.
Show rects in the HUD around damage as it is recorded into each render surface.
Runs the renderer and plugins in the same process as the browser
Enforces a one-site-per-process security policy: * Each renderer process, for its whole lifetime, is dedicated to rendering pages for just one site. * Thus, pages from different sites are never in the same process. * A renderer process's access rights are restricted based on its site. * All cross-site navigations force process swaps. * <iframe>s are rendered out-of-process whenever the src= is cross-site. More details here: - https://www.chromium.org/developers/design-documents/site-isolation - https://www.chromium.org/developers/design-documents/process-models - The class comment in site_instance.h, listing the supported process models. IMPORTANT: this isn't to be confused with --process-per-site (which is about process consolidation, not isolation). You probably want this one.
Specifies the max number of bytes that should be used by the skia font cache. If the cache needs to allocate more, skia will purge previous entries.
Specify which Dawn backend to use for Skia Graphite.
Specifies the max number of bytes that should be used by the skia resource cache. The previous entries are purged from the cache when the memory useage exceeds this limit.
Re-rasters everything multiple times to simulate a much slower machine. Give a scale factor to cause raster to take that many times longer to complete, such as --slow-down-raster-scale-factor=25.
Causes SSL key material to be logged to the specified file for debugging purposes. See https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format for the format.
Specifies if the browser should start in fullscreen mode, like if the user had pressed F11 right after startup.
Suppresses GL_DEBUG_TYPE_PERFORMANCE log messages for web tests that can get sent to the JS console and cause unnecessary test failures due test output log expectation comparisons.
Enforce system audio echo cancellation.
Allows web tests to specify the target device scale for the test cases.
Flag used for Linux tests: for desktop GL bindings, try to load this GL library first, but fall back to regular library if loading fails.
Type of the current test harness ("browser" or "ui" or "gpu").
Tint `SwapChainPresenter` with the following colors: - Decode swap chain: blue - VP blit: magenta - VP blit w/ staging texture: orange - MF proxy surface: green This is similar to `HKLM\Software\Microsoft\Windows\DWM` `OverlayTestMode=1` in DWM, but to help understand `SwapChainPresenter` state.
Indicates that this RenderProcess is hosting a Top Chrome WebUI.
Percentage of the browser controls need to be hidden before they will auto hide.
Percentage of the browser controls need to be shown before they will auto show.
Tells chrome to interpret events from these devices as touch events. Only available with XInput 2 (i.e. X server 1.8 or above). The id's of the devices can be retrieved from 'xinput list'.
Enable support for touch event feature detection.
Overrides touch slop distance for gesture detection. The touch slop distance is the maximum distance from the starting point of a touch sequence that a gesture can travel before it can no longer be considered a tap. Scroll gestures can only begin after this distance has been travelled. The switch value is a floating point number that is interpreted as a distance in pixels.
Overrides the URL from which the translate ranker model is downloaded.
Overrides the default server used for Google Translate.
Overrides security-origin with which Translate runs in an isolated world.
Instead of always using the hardware channel layout, check if a driver supports the source channel layout. Avoids outputting empty channels and permits drivers to enable stereo to multichannel expansion. Kept behind a flag since some drivers lie about supported layouts and hang when used. See http://crbug.com/259165 for more details.
The value of this switch determines whether the process is started as a renderer or plugin host. If it's empty, it's the browser.
Enables debug mode for unbounded windows (draws a red border).
Initialize the GPU process using the adapter with the specified LUID. This is only used on Windows, as LUID is a Windows specific structure.
Select which ANGLE backend to use. Options are: default: Attempts several ANGLE renderers until one successfully initializes, varying ES support by platform. d3d9: Legacy D3D9 renderer, ES2 only. d3d11: D3D11 renderer, ES2 and ES3. warp: D3D11 renderer using software rasterization, ES2 and ES3. gl: Desktop GL renderer, ES2 and ES3. gles: GLES renderer, ES2 and ES3.
Use the Pass-through command decoder, skipping all validation and state tracking. Switch lives in ui/gl because it affects the GL binding initialization on platforms that would otherwise not default to using EGL bindings.
Switch supplied to the renderer if the feature `kUseContextSnapshot` is enabled. A switch is used as at the time the renderer needs this information features have not yet been loaded.
Use CRAS, the ChromeOS audio server.
Use ANGLE shared libraries even if ANGLE is built as a static library.
Use fake device for Media Stream to replace actual camera and microphone. For the list of allowed parameters, see FakeVideoCaptureDeviceFactory::ParseFakeDevicesConfigFromOptionsString().
Bypass the digital-identity-credential OS call. Simulate the user accepting the OS-presented dialog.
Bypass the FedCM account selection dialog. If a value is provided for this switch, that account ID is selected, otherwise the first account is chosen.
Bypass the media stream infobar by selecting the default device for media streams (e.g. WebRTC). Works with --use-fake-device-for-media-stream. Prefer --auto-accept-camera-and-microphone-capture which does not interact with screen/tab capture.
Play a .wav file as the microphone. Note that for WebRTC calls we'll treat the bits as if they came from the microphone, which means you should disable audio processing (lest your audio file will play back distorted). The input file is converted to suit Chrome's audio buses if necessary, so most sane .wav files should work. You can pass either <path> to play the file looping or <path>%noloop to stop after playing the file to completion. Must also be used with kDisableAudioInput or kUseFakeDeviceForMediaStream.
Use an .y4m file to play as the webcam. See the comments in media/capture/video/file_video_capture_device.h for more details.
Uses the 1st display in --ash-host-window-bounds as internal display. This is for debugging on linux desktop.
Select which implementation of GL the GPU process should use. Options are: desktop: whatever desktop OpenGL the user has installed (Linux and Mac default). egl: whatever EGL / GLES2 the user has installed (Windows default - actually ANGLE). swiftshader: The SwiftShader software renderer.
Use hardware gpu, if available, for tests.
Enable Vulkan support and select Vulkan implementation, must also have ENABLE_VULKAN defined. This only initializes Vulkan, the flag --enable-features=Vulkan must also be used to select Vulkan for compositing and rasterization.
Use explicit grab when opening popup windows. See https://crbug.com/1220274
The adapter to use for WebGPU content.
The adapter selecting strategy related to GPUPowerPreference.
Autoplay policy to require a user gesture in order to play.
Causes the process to run as a utility subprocess.
The contents of this flag are prepended to the utility process command line. Useful values might be "valgrind" or "xterm -e gdb --args".
Causes the utility process to display a dialog on launch.
This switch indicates the type of a utility process. It does not affect the services offered by the process, but is added to the command line to make it easier to identify the purpose of the utility process.
Set options to cache V8 data. (none, code, or default)
The command decoder names that can be passed to --use-cmd-decoder.
Specifies a custom URL for the server to use as an insecure fallback when requests to |kVariationsServerURL| fail. Requests to this URL will be encrypted.
Allows overriding the country used for evaluating variations. This is similar to the "Override Variations Country" entry on chrome://translate-internals, but is exposed as a command-line flag to allow testing First Run scenarios. Additionally, unlike chrome://translate-internals, the value isn't persisted across sessions.
Allows overriding the administrative area code used for evaluating variations and regional eligibility features.
Specifies the value of the variations seed corpus to use. When unspecified or unrecognized, the default corpus will be used.
Override the time interval between each variation seed fetches. Unit is in minutes. The minimum is 1 minute. The default is 30 minutes.
Used to share variations seed version with child processes.
Specifies a custom URL for the server which reports variation data to the client. Specifying this switch enables the Variations service on unofficial builds. See variations_service.cc.
Use features defined in the value. Use this flag to reproduce experiments related issues. Copy 'Command-line Variations' value from chrome://version page. Save it to a file and pass it via this flag. The value is a base64 encoded JSON format produced by `variations::VariationsCommandLine::WriteToString`.
Specifies the location of a seed file for Local State's seed to be populated from. The seed file must be in json format with the keys |kVariationsCompressedSeed| and |kVariationsSeedSignature|.
Texture target for CHROMIUM_image backed video frame textures.
Set number of threads to use for video decoding.
Specifies the heap limit for Vulkan memory.
Specifies the sync CPU limit for total Vulkan memory.
Will add kWaitForDebugger to every child processes. If a value is passed, it will be used as a filter to determine if the child process should have the kWaitForDebugger flag passed on or not.
On every navigation a message with the renderer's URL will be logged and the renderer will wait for a debugger to be attached or SIGUSR1 to be sent to continue execution.
Flag used by WebUI test runners to wait for debugger to be attached.
Use the sandbox Online Wallet service URL (for developer testing).
Number of buffers to use for WaveOut.
Specify wayland text-input protocol version. Defaults to "1" for text-input-v1. Can specify value "3" for experimental text-input-v3 support.
Enables specified backend for the Web OTP API.
Enables auto backend selection for Web OTP API.
Enables Sms Verification backend for Web OTP API which requires app hash in SMS body.
Enables User Consent backend for Web OTP API.
Allows web tests to specify additional web settings for the test cases.
Allows trusted remote desktop clients to make WebAuthn requests on behalf of other origins. This switch only controls availability of the `remoteDesktopClientOverride` extension but doesn't by itself enable any origin to use it.
Set the antialiasing method used for webgl. (none, explicit, implicit)
Set a default sample count for webgl if msaa is enabled.
Enable capture and local storage of WebRTC event logs without visiting chrome://webrtc-internals. This is useful for automated testing. It accepts the path to which the local logs would be stored. Disabling is not possible without restarting the browser and relaunching without this flag.
Indicate that the this is being used by Android WebView and its draw functor is using vulkan.
Causes the process to run as a zygote.
The prefix used when starting the zygote process. (i.e. 'gdb --args')