https://wiki.archlinux.org/api.php?action=feedcontributions&user=Cknight70&feedformat=atomArchWiki - User contributions [en]2024-03-28T21:58:32ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=General_recommendations&diff=765036General recommendations2023-01-24T22:43:48Z<p>Cknight70: Don't recommend only Weston when there are several valid compositors to chose from</p>
<hr />
<div>[[Category:System administration]]<br />
[[cs:General recommendations]]<br />
[[bs:General recommendations]]<br />
[[es:General recommendations]]<br />
[[fa:توصیههای عمومی]]<br />
[[fr:General recommendations]]<br />
[[it:General recommendations]]<br />
[[ja:一般的な推奨事項]]<br />
[[pl:General recommendations]]<br />
[[pt:General recommendations]]<br />
[[ru:General recommendations]]<br />
[[tr:General recommendations]]<br />
[[zh-hans:General recommendations]]<br />
{{Related articles start}}<br />
{{Related|Frequently asked questions}}<br />
{{Related|Installation guide}}<br />
{{Related|List of applications}}<br />
{{Related articles end}}<br />
<br />
This document is an annotated index of popular articles and important information for improving and adding functionalities to the installed Arch system. Readers are assumed to have read and followed the [[Installation guide]] to obtain a basic Arch Linux installation. Having read and understood the concepts explained in [[#System administration]] and [[#Package management]] is ''required'' for following the other sections of this page and the other articles in the wiki.<br />
<br />
== System administration ==<br />
<br />
This section deals with administrative tasks and system management. See [[Core utilities]] and [[:Category:System administration]] for more.<br />
<br />
=== Users and groups ===<br />
<br />
A new installation leaves you with only the [[Wikipedia:Superuser|superuser]] account, better known as "root". Logging in as root for prolonged periods of time, possibly even exposing it via [[SSH]] on a server, [https://apple.stackexchange.com/questions/192365/is-it-ok-to-use-the-root-user-as-a-normal-user/192422#192422 is insecure]. Instead, you should create and use unprivileged user account(s) for most tasks, only using the root account for system administration. See [[Users and groups#User management]] for details.<br />
<br />
Users and groups are a mechanism for ''access control''; administrators may fine-tune group membership and ownership to grant or deny users and services access to system resources. Read the [[Users and groups]] article for details and potential security risks.<br />
<br />
=== Security ===<br />
<br />
Read [[Security]] for recommendations and best practices on hardening the system.<br />
<br />
For a list of applications to allow running commands or starting an interactive shell as another user (e.g. root), see [[List of applications/Security#Privilege elevation]].<br />
<br />
=== Service management ===<br />
<br />
Arch Linux uses [[systemd]] as the [[init]] process, which is a system and service manager for Linux. For maintaining your Arch Linux installation, it is a good idea to learn the basics about it. <br />
<br />
Interaction with ''systemd'' is done through the ''systemctl'' command. See [[systemd#Basic systemctl usage]] for more information. <br />
<br />
A logging system is also provided, with the command ''journalctl''. See [[journal]] for more information.<br />
<br />
=== System maintenance ===<br />
<br />
Arch is a rolling release system and has rapid package turnover, so users have to take some time to do [[system maintenance]].<br />
<br />
== Package management ==<br />
<br />
This section contains helpful information related to package management. See [[FAQ#Package management]] and [[:Category:Package management]] for more.<br />
<br />
{{Note|It is imperative to keep up to date with changes in Arch Linux that require manual intervention '''before''' upgrading your system. Subscribe to the [https://lists.archlinux.org/mailman3/lists/arch-announce.lists.archlinux.org/ arch-announce mailing list] or the [https://archlinux.org/feeds/news/ recent news RSS feed]. Alternatively, check the front page [https://archlinux.org/ Arch news] every time before you update.}}<br />
<br />
=== pacman ===<br />
<br />
[[pacman]] is the Arch Linux ''pac''kage ''man''ager: it is highly encouraged to become familiar with it before reading any other articles.<br />
<br />
To enable downloading packages in parallel, see [[pacman#Enabling parallel downloads]].<br />
<br />
For long term handling of cached packages, see [[pacman#Cleaning the package cache]].<br />
<br />
See [[pacman/Tips and tricks]] for suggestions on how to improve your interaction with ''pacman'' and package management in general.<br />
<br />
=== Repositories ===<br />
<br />
See the [[Official repositories]] article for details about the purpose of each officially maintained repository.<br />
<br />
If you plan on using 32-bit applications, you will want to enable the [[multilib]] repository. <br />
<br />
The [[Unofficial user repositories]] article lists several other unsupported repositories.<br />
<br />
You may consider installing the [[pkgstats]] service.<br />
<br />
=== Mirrors ===<br />
<br />
Visit the [[Mirrors]] article for steps on taking full advantage of using the fastest and most up to date mirrors of the official repositories. As explained in the article, a particularly good advice is to routinely check the [https://archlinux.org/mirrors/status/ Mirror Status] page for a list of mirrors that have been recently synced. This can be automated with [[Reflector]].<br />
<br />
=== Arch Build System ===<br />
<br />
''Ports'' is a system initially used by BSD distributions consisting of build scripts that reside in a directory tree on the local system. Simply put, each port contains a script within a directory intuitively named after the installable third-party application.<br />
<br />
The [[Arch Build System]] offers the same functionality by providing build scripts called [[PKGBUILD]]s, which are populated with information for a given piece of software: integrity hashes, project URL, version, license and build instructions. These PKGBUILDs are parsed by [[makepkg]], the actual program that generates packages that are cleanly manageable by ''pacman''.<br />
<br />
Every package in the repositories along with those present in the AUR are subject to recompilation with ''makepkg''.<br />
<br />
=== Arch User Repository ===<br />
<br />
While the Arch Build System allows the ability of building software available in the official repositories, the [[Arch User Repository]] (AUR) is the equivalent for user submitted packages. It is an unsupported repository of build scripts accessible through the [https://aur.archlinux.org/ web interface] or through the [[Aurweb RPC interface]].<br />
<br />
== Booting ==<br />
<br />
This section contains information pertaining to the boot process. An overview of the Arch boot process can be found at [[Arch boot process]]. See [[:Category:Boot process]] for more.<br />
<br />
=== Hardware auto-recognition ===<br />
<br />
Hardware should be auto-detected by [[udev]] during the boot process by default. A potential improvement in boot time can be achieved by disabling module auto-loading and specifying required modules manually, as described in [[Kernel modules]]. Additionally, [[Xorg]] should be able to auto-detect required drivers using {{ic|udev}}, but users have the option to configure the X server manually too.<br />
<br />
=== Microcode ===<br />
<br />
Processors may have [https://www.anandtech.com/show/8376/intel-disables-tsx-instructions-erratum-found-in-haswell-haswelleep-broadwelly faulty behaviour], which the kernel can correct by updating the ''microcode'' on startup. See [[Microcode]] for details.<br />
<br />
=== Retaining boot messages ===<br />
<br />
Once the login prompt appears, the messages from boot are cleared, leaving users unable to gather feedback from them. [[Disable clearing of boot messages]] to overcome this limitation.<br />
<br />
=== Num Lock activation ===<br />
<br />
[[Wikipedia:Num Lock|Num Lock]] is a toggle key found in most keyboards. For activating Num Lock's number key-assignment during startup, see [[Activating numlock on bootup]].<br />
<br />
== Graphical user interface ==<br />
<br />
This section provides orientation for users wishing to run graphical applications on their system. See [[:Category:Graphical user interfaces]] for additional resources.<br />
<br />
=== Display server ===<br />
<br />
[[Xorg]] is the public, open-source implementation of the [[Wikipedia:X Window System|X Window System]] (commonly X11, or X). It is required for running applications with graphical user interfaces (GUIs), and the majority of users will want to install it.<br />
<br />
[[Wayland]] is a newer, alternative display server protocol with several [[Wayland#Compositors|Wayland compositors]] to chose from.<br />
<br />
=== Display drivers ===<br />
<br />
The default ''modesetting'' display driver will work with most video cards, but performance may be improved and additional features harnessed by installing the appropriate driver for [[Xorg#AMD|AMD]] or [[NVIDIA]] products.<br />
<br />
=== Desktop environments ===<br />
<br />
Although the display server provides the basic framework for building a graphical environment, additional components may be considered necessary for a complete user experience. [[Desktop environment]]s such as [[KDE]], [[GNOME]], [[Xfce]], [[Cinnamon]], [[LXDE]], bundle together a wide range of well-integrated applications, such as a window manager or compositor, panel/taskbar, file manager, terminal emulator, text editor, icons, and other utilities. Users with less experience may wish to install a desktop environment for a more familiar environment. See [[:Category:Desktop environments]] for additional resources.<br />
<br />
=== Window managers or compositors ===<br />
<br />
A full-fledged desktop environment provides a complete and consistent graphical user interface, but tends to consume a good amount of system resources. Users seeking to maximize performance or otherwise simplify their environment may opt to install a [[window manager]] or [[Wayland#Compositors|compositor]] alone and hand-pick desired extras. Using [[Xorg]], most desktop environments allow use of an alternative window manager as well. [[:Category:Dynamic window managers|Dynamic]], [[:Category:Stacking window managers|stacking]], and [[:Category:Tiling window managers|tiling]] window managers differ in their handling of window placement.<br />
<br />
=== Display manager ===<br />
<br />
Most desktop environments include a [[display manager]] for automatically starting the graphical environment and managing user logins. Users without a desktop environment can install one separately. Alternatively you may [[start X at login]] as a simple alternative to a display manager.<br />
<br />
=== User directories ===<br />
<br />
Well-known user directories like Downloads or Music are created by the {{ic|xdg-user-dirs-update.service}} user service, that is provided by {{Pkg|xdg-user-dirs}} and enabled by default upon install. If your desktop environment or window manager does not pull in the package, you can [[install]] it and run {{ic|xdg-user-dirs-update}} manually as per [[XDG user directories#Creating default directories]].<br />
<br />
== Power management ==<br />
<br />
This section may be of use to laptop owners or users otherwise seeking power management controls. See [[:Category:Power management]] for more.<br />
<br />
See [[Power management]] for more general overview.<br />
<br />
=== ACPI events ===<br />
<br />
Users can configure how the system reacts to ACPI events such as pressing the power button or closing a laptop's lid. For the new (recommended) method using [[systemd]], see [[Power management#Power management with systemd|Power management with systemd]]. For the old method, see [[acpid]].<br />
<br />
=== CPU frequency scaling ===<br />
<br />
Modern processors can decrease their frequency and voltage to reduce heat and power consumption. Less heat leads to more quiet system and prolongs the life of hardware. See [[CPU frequency scaling]] for details.<br />
<br />
=== Laptops ===<br />
<br />
For articles related to portable computing along with model-specific installation guides, please see [[:Category:Laptops]]. For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
=== Suspend and hibernate ===<br />
<br />
See the main article: [[Power management/Suspend and hibernate]].<br />
<br />
== Multimedia ==<br />
<br />
[[:Category:Multimedia]] includes additional resources.<br />
<br />
=== Sound system ===<br />
<br />
[[ALSA]] is a kernel [[sound system]] that should work out the box (it just needs to be [[Advanced Linux Sound Architecture#Unmuting the channels|unmuted]]). [[Sound server]]s such as [[PipeWire]] and [[PulseAudio]] can offer additional features and support more complex audio configuration.<br />
<br />
See [[Professional audio]] for advanced audio requirements.<br />
<br />
== Networking ==<br />
<br />
This section is confined to small networking procedures. See [[Network configuration]] for a full configuration guide and [[:Category:Networking]] for related articles.<br />
<br />
=== Clock synchronization ===<br />
<br />
The [[Wikipedia:Network Time Protocol|Network Time Protocol]] (NTP) is a protocol for synchronizing the clocks of computer systems over packet-switched, variable-latency data networks. See [[Time synchronization]] for implementations of such protocol.<br />
<br />
=== DNS security ===<br />
<br />
For better security while browsing the web, paying online, connecting to [[SSH]] services and similar tasks consider using [[DNSSEC]]-enabled [[DNS resolver]] that can validate signed [[Wikipedia:Domain Name System|DNS]] records, and an encrypted protocol such as [[Wikipedia:DNS over TLS|DNS over TLS]], [[Wikipedia:DNS over HTTPS|DNS over HTTPS]] or [[Wikipedia:DNSCrypt|DNSCrypt]]. See [[Domain name resolution]] for details.<br />
<br />
=== Setting up a firewall ===<br />
<br />
A firewall can provide an extra layer of protection on top of the Linux networking stack. While the stock Arch kernel is capable of using [[Wikipedia:Netfilter|Netfilter]]'s [[iptables]] and [[nftables]], neither are enabled by default. It is highly recommended to set up some form of firewall. See [[:Category:Firewalls]] for available guides.<br />
<br />
=== Network shares ===<br />
<br />
To share files among the machines in a network, follow the [[NFS]] or the [[SSHFS]] article.<br />
<br />
Use [[Samba]] to join a Windows network. To configure the machine to use Active Directory for authentication, read [[Active Directory integration]].<br />
<br />
See also [[:Category:Network sharing]].<br />
<br />
== Input devices ==<br />
<br />
This section contains popular input device configuration tips. See [[:Category:Input devices]] for more.<br />
<br />
=== Keyboard layouts ===<br />
<br />
Non-English or otherwise non-standard keyboards may not function as expected by default. The necessary steps to configure the keymap are different for virtual console and [[Xorg]], they are described in [[Keyboard configuration in console]] and [[Keyboard configuration in Xorg]] respectively.<br />
<br />
=== Mouse buttons ===<br />
<br />
Owners of advanced or unusual mice may find that not all mouse buttons are recognized by default, or may wish to assign different actions for extra buttons. Instructions can be found in [[Mouse buttons]].<br />
<br />
=== Laptop touchpads ===<br />
<br />
Many laptops use [https://www.synaptics.com/ Synaptics] or [https://www.alps.com/ ALPS] "touchpad" pointing devices. For these, and several other touchpad models, you can use either the Synaptics input driver or libinput; see [[Touchpad Synaptics]] and [[libinput]] for installation and configuration details.<br />
<br />
=== TrackPoints ===<br />
<br />
See the [[TrackPoint]] article to configure your TrackPoint device.<br />
<br />
== Optimization ==<br />
<br />
This section aims to summarize tweaks, tools and available options useful to improve system and application performance.<br />
<br />
=== Benchmarking ===<br />
<br />
[[Benchmarking]] is the act of measuring performance and comparing the results to another system's results or a widely accepted standard through a unified procedure.<br />
<br />
=== Improving performance ===<br />
<br />
The [[Improving performance]] article gathers information and is a basic rundown about gaining performance in Arch Linux.<br />
<br />
=== Solid state drives ===<br />
<br />
The [[Solid state drive]] article covers many aspects of solid state drives, including configuring them to maximize their lifetimes, e.g. with [[TRIM]].<br />
<br />
== System services ==<br />
<br />
This section relates to [[daemons]].<br />
<br />
=== File index and search ===<br />
<br />
Most distributions have a ''locate'' command available to be able to quickly search files. Arch Linux provides several alternatives, see [[locate]] for details.<br />
<br />
[[List of applications/Utilities#File searching|Desktop search engines]] provide a similar service, while better integrated into [[desktop environment]]s.<br />
<br />
=== Local mail delivery ===<br />
<br />
A default setup does not provide a way to synchronize mail. A list of mail delivery agents is available in the [[Mail server]] article.<br />
<br />
=== Printing ===<br />
<br />
[[CUPS]] is a standards-based, open source printing system developed by OpenPrinting for Linux. See [[:Category:Printers]] for printer-specific articles.<br />
<br />
== Appearance ==<br />
<br />
This section contains frequently-sought "eye candy" tweaks for an aesthetically pleasing Arch experience. See [[:Category:Eye candy]] for more.<br />
<br />
=== Fonts ===<br />
<br />
You may wish to install a set of TrueType fonts, as only unscalable bitmap fonts are included in a basic Arch system. There are several general-purpose [[Fonts#Families|font families]] providing large [[Wikipedia:Unicode|Unicode]] coverage and even [[Metric-compatible fonts|metric compatibility]] with fonts from other operating systems.<br />
<br />
A plethora of information on the subject can be found in the [[Fonts]] and [[Font configuration]] articles.<br />
<br />
If spending a significant amount of time working from the virtual console (i.e. outside an X server), users may wish to change the console font to improve readability; see [[Linux console#Fonts]].<br />
<br />
=== GTK and Qt themes ===<br />
<br />
A big part of the applications with a graphical interface for Linux systems are based on the [[GTK]] or the [[Qt]] toolkits. See those articles and [[Uniform look for Qt and GTK applications]] for ideas to improve the appearance of your installed programs and adapt it to your liking.<br />
<br />
== Console improvements ==<br />
<br />
This section applies to small modifications that improve console programs' practicality. See [[:Category:Command-line shells]] for more.<br />
<br />
=== Tab-completion enhancements ===<br />
<br />
It is recommended to properly set up extended [[Wikipedia:Command-line_completion|tab completion]] right away, as instructed in the article of your chosen [[shell]].<br />
<br />
=== Aliases ===<br />
<br />
Aliasing a command, or a group thereof, is a way of saving time when using the console. This is especially helpful for repetitive tasks that do not need significant alteration to their parameters between executions. Common time-saving aliases can be found in [[Bash#Aliases]], which are easily portable to [[zsh]] as well.<br />
<br />
=== Alternative shells ===<br />
<br />
[[Bash]] is the shell installed by default in an Arch system. The live installation media, however, uses [[zsh]] with the {{Pkg|grml-zsh-config}} addon package. See [[Command-line shell#List of shells]] for more alternatives.<br />
<br />
=== Bash additions ===<br />
<br />
A list of miscellaneous Bash settings, history search and [[Readline]] macros is available in [[Bash#Tips and tricks]].<br />
<br />
=== Colored output ===<br />
<br />
This section is covered in [[Color output in console]].<br />
<br />
=== Compressed files ===<br />
<br />
Compressed files, or archives, are frequently encountered on a GNU/Linux system. [[Tar]] is one of the most commonly used archiving tools, and users should be familiar with its syntax (Arch Linux packages, for example, are simply {{Pkg|zstd}} compressed tarballs). See [[Archiving and compression]].<br />
<br />
=== Console prompt ===<br />
<br />
The console prompt ({{ic|PS1}}) can be customized to a great extent. See [[Bash/Prompt customization]] or [[Zsh#Prompts]] if using Bash or Zsh, respectively.<br />
<br />
=== Emacs shell ===<br />
<br />
Emacs is known for featuring options beyond the duties of regular text editing, one of these being a full shell replacement. Consult [[Emacs#Colored output issues]] for a fix regarding garbled characters that may result from enabling colored output.<br />
<br />
=== Mouse support ===<br />
<br />
Using a mouse with the console for copy-paste operations can be preferred over [[GNU Screen]]'s traditional copy mode. Refer to [[General purpose mouse]] for comprehensive directions. Note that you can already do this in [[terminal emulator]]s with the [[clipboard]].<br />
<br />
=== Session management ===<br />
<br />
Using terminal multiplexers like [[tmux]] or [[GNU Screen]], programs may be run under sessions composed of tabs and panes that can be detached at will, so when the user either kills the terminal emulator, terminates [[X]], or logs off, the programs associated with the session will continue to run in the background as long as the terminal multiplexer server is active. Interacting with the programs requires reattaching to the session.</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=624828Variable refresh rate2020-07-12T01:44:48Z<p>Cknight70: Improved lanugage</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|AMDGPU}}<br />
{{Related|NVIDIA}}<br />
{{Related|Sway}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*[[wikipedia:FreeSync|FreeSync]] is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 11th Gen and dedicated GPUs. [https://software.intel.com/content/www/us/en/develop/articles/enabling-intel-adaptive-sync-with-11th-generation-intel-processor-graphics-and-microsoft.html]<br />
<br />
'''VRR compatibility and implementations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
<br />
FreeSync is only available if your [https://www.amd.com/en/products/freesync-monitors monitor is compatible with FreeSync], as well as if your [https://www.amd.com/en/technologies/free-sync-faq#faq-Which-products-support-AMD-FreeSync%E2%84%A2-technology? GPU is compatible with FreeSync].<br />
<br />
If you are using a laptop, you can check if your [https://www.amd.com/en/products/freesync-laptops laptop is compatible with FreeSync].<br />
<br />
==== Using an Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Expansion|This section needs info.}}<br />
<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
<br />
=== Using Sway ===<br />
<br />
{{Note|No Sway release includes adaptive sync yet, though you can install {{Aur|sway-git}} and {{Aur|wlroots-git}} as their master branches include support. [https://github.com/swaywm/sway/pull/5063]}}<br />
<br />
To enable it for all of your outputs you can add the following to the sway config, or apply the setting to on a per output basis:<br />
<br />
output * adaptive_sync on<br />
<br />
You can verify that your display supports adaptive sync with swaymsg:<br />
<br />
{{hc|$ swaymsg -t get_outputs|<br />
Output DP-1 'Display Name'<br />
Adaptive sync: enabled<br />
}}<br />
<br />
== Testing ==<br />
If you are using a Nvidia GPU, you can test Gsync compatibility with {{AUR|gl-gsync-demo}}. This program you will allow you to test VRR and Vsync so you can observe resulting effects. See project's [https://github.com/dahenry/gl-gsync-demo/blob/master/README.md Readme] for more information.<br />
<br />
According to [https://linuxreviews.org/HOWTO_enable_Adaptive_Vertical_Sync_(Freesync)_on_AMD_GPUs#Get_ready_for_much_disappointment_once_you_have_it_working this] page: "gl-gsync-demo is made with G-SYNC but that doesn't matter, it will test AMD adaptive sync just fine". However, it may still not work as expected for FreeSync testing.<br />
<br />
[https://github.com/Nixola/VRRTest VRRTest] is another tool that uses OpenGL, so it could be possible to run through [[wine]]. Though, currently, Wine support is broken, see [https://gitlab.freedesktop.org/kazlaus/xf86-video-amdgpu/issues/1 this].<br />
To test natively on linux, install {{Pkg|love}} package, clone repository, then run {{ic|$ love /path/to/cloned/repository}}.<br />
<br />
== Change VRR Range of a FreeSync Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
=== Editing the EDID File ===<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux (works only on NVidia GPUs): [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the file to be the correct display ID. You can get the display ID with the {{ic|xrandr -–query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
* [[Wayland]] is not supported yet [https://gitlab.freedesktop.org/wayland/wayland/issues/84].<br />
* The monitor must be plugged in via DisplayPort. Some displays which implement (part of) the HDMI 2.1 specification also support VRR over HDMI. This is [https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-440.31-Linux-Release supported] by the Nvidia driver and will [https://www.phoronix.com/scan.php?page=news_item&px=AMD-FreeSync-2019-Update likely be supported] by the AMD driver in the future.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Compositors will most likely need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove applications from Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less noticeable at higher refresh rates, FreeSync monitors often have a limited range for their VRR of 90Hz, which can be much lower than their max refresh rate. See [[#Change VRR Range of a FreeSync Monitor|Change VRR Range of a FreeSync Monitor]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=624824Variable refresh rate2020-07-12T01:26:43Z<p>Cknight70: Update on Intel VRR</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|AMDGPU}}<br />
{{Related|NVIDIA}}<br />
{{Related|Sway}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*[[wikipedia:FreeSync|FreeSync]] is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 11th Gen and dedicated GPUs. [https://software.intel.com/content/www/us/en/develop/articles/enabling-intel-adaptive-sync-with-11th-generation-intel-processor-graphics-and-microsoft.html]<br />
<br />
'''VRR compatibility and implementations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
<br />
FreeSync is only available if your [https://www.amd.com/en/products/freesync-monitors monitor is compatible with FreeSync], as well as if your [https://www.amd.com/en/technologies/free-sync-faq#faq-Which-products-support-AMD-FreeSync%E2%84%A2-technology? GPU is compatible with FreeSync].<br />
<br />
If you are using a laptop, you can check if your [https://www.amd.com/en/products/freesync-laptops laptop is compatible with FreeSync].<br />
<br />
==== Using an Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Expansion|This section needs info.}}<br />
<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
<br />
=== Using Sway ===<br />
<br />
{{Note|No Sway release includes adaptive sync yet, though you can install {{Aur|sway-git}} and {{Aur|wlroots-git}} as their master branches include support. [https://github.com/swaywm/sway/pull/5063]}}<br />
<br />
To enable it for all of your outputs you can add the following to the sway config, or apply the setting to on a per output basis:<br />
<br />
output * adaptive_sync on<br />
<br />
You can verify that your display supports adaptive sync with swaymsg:<br />
<br />
{{hc|$ swaymsg -t get_outputs|<br />
Output DP-1 'Display Name'<br />
Adaptive sync: enabled<br />
}}<br />
<br />
== Testing ==<br />
If you are using nvidia GPU, you can test gsync with the Unofficial OpenGL G-SYNC Demo for Linux. Install the {{AUR|gl-gsync-demo}} package. Launch the demo. You will be able to toggle the vrr and vsync parameters at runtime, so you can observe resulting effects. See project's [https://github.com/dahenry/gl-gsync-demo/blob/master/README.md Readme] for more information.<br />
<br />
According to [https://linuxreviews.org/HOWTO_enable_Adaptive_Vertical_Sync_(Freesync)_on_AMD_GPUs#Get_ready_for_much_disappointment_once_you_have_it_working this] page: "gl-gsync-demo is made with G-SYNC but that doesn't matter, it will test AMD adaptive sync just fine". However, it may still not work as expected for FreeSync testing.<br />
<br />
There is a [https://github.com/Nixola/VRRTest VRRTest] tool. It uses OpenGL and can run under Windows and Linux, so you can test it with wine. Currently, wine support is broken, see [https://gitlab.freedesktop.org/kazlaus/xf86-video-amdgpu/issues/1 this].<br />
To test natively on linux, install {{Pkg|love}} package, clone repository, then run {{ic|$ love /path/to/cloned/repository}}.<br />
<br />
== Change VRR Range of a FreeSync Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
=== Editing the EDID File ===<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux (works only on NVidia GPUs): [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the file to be the correct display ID. You can get the display ID with the {{ic|xrandr -–query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
* [[Wayland]] is not supported yet [https://gitlab.freedesktop.org/wayland/wayland/issues/84].<br />
* The monitor must be plugged in via DisplayPort. Some displays which implement (part of) the HDMI 2.1 specification also support VRR over HDMI. This is [https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-440.31-Linux-Release supported] by the Nvidia driver and will [https://www.phoronix.com/scan.php?page=news_item&px=AMD-FreeSync-2019-Update likely be supported] by the AMD driver in the future.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Compositors will most likely need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove applications from Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less noticeable at higher refresh rates, FreeSync monitors often have a limited range for their VRR of 90Hz, which can be much lower than their max refresh rate. See [[#Change VRR Range of a FreeSync Monitor|Change VRR Range of a FreeSync Monitor]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:Variable_refresh_rate&diff=614000Talk:Variable refresh rate2020-05-18T02:58:52Z<p>Cknight70: clarification</p>
<hr />
<div>== Testing software ==<br />
In the article I said "There is Unofficial OpenGL G-SYNC Demo for Linux, which should also suite for FreeSync testing". I got that info from [https://linuxreviews.org/HOWTO_enable_Adaptive_Vertical_Sync_(Freesync)_on_AMD_GPUs here]. But actually, it is not working for me on a laptop without nvidia gpu. It crashes when I press V to enable vertical sync.<br />
<br />
Also, probably it is possible to launch nvidia's Pendulum Demo or AMD's Windmill Demo via wine.<br><br />
Also, there is a web test [https://www.testufo.com/gsync here], but it says VSYNC is not available on the Linux platform. So I do not know if the test is done correctly and if it should be mentioned in the article.<br />
Please add any info if you have it.<br><br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 20:38, 15 May 2020 (UTC)<br />
:I tested all of these today. I have an ASUS ROG Swift PG279Q monitor and a desktop nvidia graphics card with driver 40.82-15. <br />
:The gl-gsync-demo works as intended I pressed the buttons and turned on and off gsync and vsync and it all worked. I did need to turn off my compositor before starting the app, which is normal. <br />
:I got the pendulum test working with default configuration on proton 5.0-7 but the in engine sync buttons don't work. Gsync is permanently enabled, but I can't even click the gsync button in the demo.<br />
:The AMD windmill test gave me some errors and keeps crashing before I can fullscreen the app with proton. I suspect this is a wine/proton problem though.<br />
:The web test was weird... Gsync/freesync don't sync browsers because they're blacklisted, but I bet you could remove it from the blacklist on freesync. Either way I believe the test is right about vsync part not being supported on linux. The bottom part was extremely choppy but the top part was much smoother with and without the compositor vsyncing it. [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 02:56, 18 May 2020 (UTC)</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:Variable_refresh_rate&diff=613999Talk:Variable refresh rate2020-05-18T02:56:55Z<p>Cknight70: Re: Testing software</p>
<hr />
<div>== Testing software ==<br />
In the article I said "There is Unofficial OpenGL G-SYNC Demo for Linux, which should also suite for FreeSync testing". I got that info from [https://linuxreviews.org/HOWTO_enable_Adaptive_Vertical_Sync_(Freesync)_on_AMD_GPUs here]. But actually, it is not working for me on a laptop without nvidia gpu. It crashes when I press V to enable vertical sync.<br />
<br />
Also, probably it is possible to launch nvidia's Pendulum Demo or AMD's Windmill Demo via wine.<br><br />
Also, there is a web test [https://www.testufo.com/gsync here], but it says VSYNC is not available on the Linux platform. So I do not know if the test is done correctly and if it should be mentioned in the article.<br />
Please add any info if you have it.<br><br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 20:38, 15 May 2020 (UTC)<br />
:I tested all of these today. I have an ASUS ROG Swift PG279Q monitor and a desktop nvidia graphics card with driver 40.82-15. <br />
:The gl-gsync-demo works as intended I pressed the buttons and turned on and off gsync and vsync and it all worked. I did need to turn off my compositor before starting the app, which is normal. <br />
:I got the pendulum test working with default configuration on proton 5.0-7 but the in engine sync buttons don't work. Gsync is permanently enabled, but I can't even click the gsync button in the demo.<br />
:The AMD windmill test gave me some errors and keeps crashing before I can fullscreen the app with proton. I suspect this is a wine/proton problem though.<br />
:The web test was weird... Gsync/freesync don't sync browsers because they're blacklisted, but I bet you could remove it from the blacklist on freesync. Either way I believe the test is right about vsync part not being supported on linux. The bottom part was extremely choppy but the top part that my compositor vsyncs looked much smoother. [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 02:56, 18 May 2020 (UTC)</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=612904Variable refresh rate2020-05-15T02:31:24Z<p>Cknight70: lphabetized config section & added sway to related</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|AMDGPU}}<br />
{{Related|NVIDIA}}<br />
{{Related|Sway}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*[[wikipedia:FreeSync|FreeSync]] is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th or 11th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/] [https://software.intel.com/en-us/articles/enabling-intel-adaptive-sync-with-11th-generation-intel-processor-graphics-and-microsoft]<br />
<br />
'''VRR compatibility and implementations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
<br />
FreeSync is only available if your [https://www.amd.com/en/products/freesync-monitors monitor is compatible with FreeSync], as well as if your [https://www.amd.com/en/technologies/free-sync-faq#faq-Which-products-support-AMD-FreeSync%E2%84%A2-technology? GPU is compatible with FreeSync].<br />
<br />
If you are using a laptop, you can check if your [https://www.amd.com/en/products/freesync-laptops laptop is compatible with FreeSync].<br />
<br />
==== Using an Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
<br />
=== Using Sway ===<br />
<br />
{{Note|No Sway release includes adaptive sync yet, though you can install {{Aur|sway-git}} and {{Aur|wlroots-git}} as their master branches include support. [https://github.com/swaywm/sway/pull/5063]}}<br />
<br />
To enable it for all of your outputs you can add the following to the sway config, or apply the setting to on a per output basis:<br />
<br />
output * adaptive_sync on<br />
<br />
You can verify that your display supports adaptive sync with swaymsg:<br />
<br />
{{hc|$ swaymsg -t get_outputs|<br />
Output DP-1 'Display Name'<br />
Adaptive sync: enabled<br />
}}<br />
<br />
== Change VRR Range of a FreeSync Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
=== Editing the EDID File ===<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the file to be the correct display ID. You can get the display ID with the {{ic|xrandr -–query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
* [[Wayland]] is not supported yet [https://gitlab.freedesktop.org/wayland/wayland/issues/84].<br />
* The monitor must be plugged in via DisplayPort. Some displays which implement (part of) the HDMI 2.1 specification also support VRR over HDMI. This is [https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-440.31-Linux-Release supported] by the Nvidia driver and will [https://www.phoronix.com/scan.php?page=news_item&px=AMD-FreeSync-2019-Update likely be supported] by the AMD driver in the future.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Compositors will most likely need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove applications from Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less noticeable at higher refresh rates, FreeSync monitors often have a limited range for their VRR of 90Hz, which can be much lower than their max refresh rate. See [[#Change VRR Range of a FreeSync Monitor|Change VRR Range of a FreeSync Monitor]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=588844Variable refresh rate2019-11-14T06:25:33Z<p>Cknight70: State of Intel VRR</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|NVIDIA}}<br />
{{Related|AMDGPU}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th or 11th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/] [https://software.intel.com/en-us/articles/enabling-intel-adaptive-sync-with-11th-generation-intel-processor-graphics-and-microsoft]<br />
<br />
'''VRR compatibility and implementations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
== Change VRR Range of a FreeSync Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
* [[Wayland]] is not supported yet [https://gitlab.freedesktop.org/wayland/wayland/issues/84].<br />
* The monitor must be plugged in via DisplayPort. Some displays which implement (part of) the HDMI 2.1 specification also support VRR over HDMI. This is [https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-440.31-Linux-Release supported] by the Nvidia driver and will [https://www.phoronix.com/scan.php?page=news_item&px=AMD-FreeSync-2019-Update likely be supported] by the AMD driver in the future.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Compositors will most likely need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less noticeable at higher refresh rates, FreeSync monitors often have a limited range for their VRR of 90Hz, which can be much lower than their max refresh rate. See [[#Change VRR Range of a FreeSync Monitor|Change VRR Range of a FreeSync Monitor]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=584413Variable refresh rate2019-10-04T21:02:36Z<p>Cknight70: HDMI freesync confirmed not supported as well as wayland</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|NVIDIA}}<br />
{{Related|AMDGPU}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
== Change VRR Range of a FreeSync Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
* [[Wayland]] is not supported.<br />
* On Linux, the monitor must be plugged in via display port. Some monitors with the HDMI 2.1 specification can use FreeSync on Windows and this will likely be supported by Linux in the future. [https://www.phoronix.com/scan.php?page=news_item&px=AMD-FreeSync-2019-Update]<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Compositors will most likely need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less noticeable at higher refresh rates, FreeSync monitors often have a limited range for their VRR of 90Hz, which can be much lower than their max refresh rate. See [[#Change VRR Range of a FreeSync Monitor|Change VRR Range of a FreeSync Monitor]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=583905Variable refresh rate2019-09-25T02:04:12Z<p>Cknight70: Clarify FreeSync VRR range and refresh rate as separate. Clean up terminology.</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|NVIDIA}}<br />
{{Related|AMDGPU}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
== Change VRR Range of a FreeSync Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Accuracy|This information needs to be further verified. If you have a VRR monitor please consider contributing}}<br />
* For Gsync, the monitor must be plugged in via display port. For Freesync, some monitors with the HDMI 2.1 specification are supported otherwise display port will be needed.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less noticeable at higher refresh rates, FreeSync monitors often have a limited range for their VRR of 90Hz, which can be much lower than their max refresh rate. See [[#Change VRR Range of a FreeSync Monitor|Change VRR Range of a FreeSync Monitor]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=583904Variable refresh rate2019-09-25T01:50:18Z<p>Cknight70: grammar</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
[[ja:可変リフレッシュレート]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|NVIDIA}}<br />
{{Related|AMDGPU}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
== Change Freesync Range of Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Accuracy|This information needs to be further verified. If you have a VRR monitor please consider contributing}}<br />
* For Gsync, the monitor must be plugged in via display port. For Freesync, some monitors with the HDMI 2.1 specification are supported otherwise display port will be needed.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less of an issue at higher refresh rates, most Freesync monitors only have a range up to 90Hz see [[#Change Freesync Range of Monitor|Change Freesync range of Monitor]]</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=581110Variable refresh rate2019-08-27T19:12:52Z<p>Cknight70: More information about setting up with nvidia driver</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|NVIDIA}}<br />
{{Related|AMDGPU}}<br />
{{Related articles end}}<br />
<br />
[[Wikipedia:Variable refresh rate|Variable refresh rate]] (VRR), also referred to as adaptive sync, allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki].<br />
<br />
== Overview ==<br />
<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
== Configuration ==<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
Gsync monitors should automatically be enabled. To enable Gsync compatible monitors do the following:<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
{{Tip|In the same menu, you can check the "show Gsync indicator" option to display an indicator that Gsync is working in the top right corner.}}<br />
== Change Freesync Range of Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Accuracy|This information needs to be further verified. If you have a VRR monitor please consider contributing}}<br />
* For Gsync, the monitor must be plugged in via display port. For Freesync, some monitors with the HDMI 2.1 specification is supported otherwise display port will be needed.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less of an issue at higher refresh rates, most Freesync monitors only have a range up to 90Hz see [[#Change Freesync Range of Monitor|Change Freesync range of Monitor]]</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:AMDGPU&diff=579282Talk:AMDGPU2019-08-09T15:49:01Z<p>Cknight70: typo</p>
<hr />
<div>== Supported Hardware ==<br />
I just crawled the product names "Radeon xyz" of VI/CI GPUs together and was going to go on for professional products "FirePro xzy", too.<br />
<br />
Afaik, there is no such complete listing on the web. There is a lot of confusion about the code and product names, due to AMD repeatedly rebranding their products and even change code names for same GPUs (Tonga = Antigua, Hawaii = Grenada, Carrizo = Bristol Ridge?, ...)<br />
<br />
When I started using gnu/linux, the arch wiki was a great help and there are still a lot of people struggling with graphics drivers. Now I know it is not hard to understand, but it is still confusing for beginners, coming from windows and just being used to install one software suite (not a drm driver, libdrm, mesa, gallium, etc.), supporting all the current hardware.<br />
<br />
now everyone has to go through all of this every time to determine 1) which hardware is really in their product and 2) which driver suits their hardware<br />
<br />
<br />
tl;dr I think maintaining such a list would be really useful for beginners, maybe not here but in a separate article?<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:27, 16 February 2016 (UTC)<br />
<br />
:Well, [https://wiki.gentoo.org/wiki/Amdgpu#Feature_support Gentoo wiki] has a simple two-line summary. If it's still not sufficiently clear or the list is already much larger, I guess we could have a separate subpage to not clutter the main page... -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 10:20, 16 February 2016 (UTC)<br />
<br />
:: yes, in the meantime I also found this table. It looks good but it is not complete. And completing the list would blow up the table cells a lot. I guess we should wait until vulkan and the new OpenCL driver has been released. Until then, there is no real reason for owners of pre-VI hardware to switch over to amdgpu. All vi and post-vi will be covered, so there is no need to list those separately. For the others I could create a subpage when switching to amdgpu gives you the opportunity for opencl 2.1 and vulkan -- [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 10:50, 16 February 2016 (UTC)<br />
<br />
== Enable amdgpu for Sea Islands Cards ==<br />
testing my Hawaii card w/ amdgpu last week, sound did not work, even though 6 pcm/hdmi audio devices were listed. Might be added as an issue (as I think this is important deciding between radeon and amdgpu), but needs further investigation/confirmation from other testers.<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:53, 16 February 2016 (UTC)<br />
:Please remember the AMDGPU is still in beta, and there's still info and knowledge/experience missing (e.g. most users use the Radeon driver).<br />
:AMD isn't that great in providing info and so far a lot of users are confused about their hardware support in use with amdgpu.<br />
:Remember there are flags like {{ic|exp_hw_support}}. More info need to be added, but it will take some time.<br />
:[[User:Francoism|Francoism]] ([[User talk:Francoism|talk]]) 13:14, 16 February 2016 (UTC)<br />
: It does indeed seem like that was no CI issue. Audio over hdmi is not supported by amdgpu atm, respectively only with the (upcoming) DAL changes[http://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/853189-audio-over-hdmi-tonga-and-amdgpu], although it is listed as 'done' [http://xorg.freedesktop.org/wiki/RadeonFeature/ here]. [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 15:59, 22 February 2016 (UTC)<br />
<br />
== Sea Islands cards not working with 4.5.x? ==<br />
I stumbled across this wiki page in hopes of getting more performance after seeing Michael from Phoronix get his 290 working with this. Following through all the instructions, menuconfiging and compiling new kernels, in the end all I get is a blank screen with my r9 390. No errors on Xorg.0.log. Can anyone confirm that it isn't just me?<br />
[[User:Katorisenko|Katorisenko]] ([[User talk:Katorisenko|talk]]) 07:46, 24 April 2016 (UTC)<br />
<br />
== AMDGPU and HDMI Audio ==<br />
<br />
According to [https://bugzilla.freedesktop.org/show_bug.cgi?id=92827#c2 this Freedesktop.org bug comment], HDMI audio support in AMDGPU requires DAL which is "not upstream yet", and won't be anytime soon according to [http://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-DC-DRM-No this Phoronix article]. I'm currently struggling to make my HDMI audio work with my AMD Radeon R9 380; if this happens to be impossible with AMDGPU, should we mention it in the "Troubleshooting" section of this page? --[[User:Hellpe|Hellpe]] ([[User talk:Hellpe|talk]]) 23:26, 3 January 2017 (UTC)<br />
<br />
:I am in favor of adding the information notice to the troubleshooting section. I think users who do not keep up with the news will be confused when Pulseaudio seems to add the HDMI audio devices, despite them being non-functional until the DAL code is refactored and accepted upstream then pushed to regular users. I know it was not immediately clear to me when I upgraded from my radeonsi card to an RX series amdgpu card until I did some reading. I "think" currently the only way to get HDMI audio is to use the AMDGPU-PRO driver for the time being. [[User:Ase1590|Ase1590]] ([[User talk:Ase1590|talk]]) 15:48, 4 January 2017 (UTC)<br />
<br />
::I have it working with an R9 380 under Xorg. I did nothing special, simply disabled the built-in audio and enabled the HDMI audio. It does not work under Wayland however. Pavucontrol shows unavailable. [[User:Unit73e|Unit73e]] ([[User talk:Unit73e|talk]]) 12:22, 2 December 2017 (UTC)<br />
<br />
== Some experiments with integrated AMD graphics ==<br />
<br />
Some results after playing with "radeon" and "amdgpu" drivers and gnome (for AMD A10 7850K):<br />
<br />
- Having both drivers loaded causes systemd to hang at system shutdown (xorg). Using amdgpu and blacklisting radeon or using radeon and blacklisting amdgpu both fix this problem.<br />
<br />
- Having amdgpu driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound output is shown only in rare cases<br />
<br />
- Having amdgpu driver with mkinitcpio.conf entry causes<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always disabled<br />
<br />
- Having radeon driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
- Having radeon driver with mkinitcpio.conf entry<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
Update: with kernel 4.11.2-1: HDMI sound output is now working with "amdgpu" but only in as "Gnome in xorg" login option (still no sound with Wayland). There are still some graphical glitches when running Wayland with the radeon driver: external screen doesn't turn off after timeout, windows can't be maximized with the "wmctrl" command and updating text in terminal causes some text updating problems (these don't exist with xorg, amdgpu and radeon both work fine). So in summary: I can now select either amdgpu or radeon driver but Wayland is still unstable.<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
== Vega Changes for Wiki ==<br />
<br />
With Vega releasing around the end of the month, the DC/DAL is still not it the kernel. Should we just put a note for users to use the AMDGPU-PRO drivers if they have VEGA cards? We could possibly add a note saying that in the AUR, there is an alternate kernel built from their repos with the DC/DAL code. <br />
Alternate kernel--> https://aur.archlinux.org/packages/linux-amd-staging-git/ [[User:Sesese9|Sesese9]] ([[User talk:Sesese9|talk]]) 00:40, 10 July 2017 (UTC)<br />
<br />
== Moving "Enable GPU display scaling" to xrandr ==<br />
<br />
I thought about it to put this under xrandr directly, but for example for my integrated Intel 6th gen GPU I don't have the "scaling mode" option, and I don't know about NVIDIA.<br />
And even if the "scaling mode" option exists for other vendors and or cards, I don't know if the possible values for "scaling mode" are the same everywhere, as far as I remember there are not.<br />
That was the reason I did put it here. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 16:01, 18 February 2018 (UTC)<br />
:Ok, looks like [[Intel_graphics#Setting_scaling_mode|Intel]] uses the same settings, but it's only available for internal (LVDS, eDP) ports, but at least according to https://bugs.freedesktop.org/show_bug.cgi?id=90989 it also uses "None, Full, Center, Full aspect".<br />
:I know that radeonsi uses the same commands, but still don't know about NVIDIA.<br />
:But yea, now I also think that it should be moved and the [[Intel_graphics#Setting_scaling_mode|Intel]] section should be merged into it. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 18:37, 18 February 2018 (UTC)<br />
<br />
== Update on kernel parameters ==<br />
<br />
this part does not seems to be required on 4.17:<br />
<br />
>> Also, since kernel 4.13, adding the amdgpu.si_support=1 radeon.si_support=0 or amdgpu.cik_support=1 radeon.cik_support=0 kernel parameter is required. Otherwise, AMDGPU will not start and you will end up with either radeon being used instead or the display being frozen during the boot.<br />
<br />
{{unsigned|12:10, 22 April 2018|Lesto}}<br />
<br />
== Renaming AMDGPU-PRO to Radeon Software for Linux? ==<br />
<br />
So AMD basically changed the name of their AMDGPU-PRO driver as simply Radeon™ Software for Linux, see [https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx 17.40], [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx 18.10] and [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-18.20-Early-Preview-Release-Notes.aspx 18.20 preview] release notes. With that in mind, should the names on wiki be slowly changed, or the alternative name/note being added somewhere? I'm not sure if AMDGPU-PRO is still used by AMD officially and whether AMDGPU (without PRO) term is being used as well, but the name sure definitely stuck among community – any ideas? [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:33, 11 May 2018 (UTC)<br />
<br />
EDIT: Probably worth noticing is the similar situation happened between [[Fglrx]] and [[AMD Catalyst]] naming back then. [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:38, 11 May 2018 (UTC)<br />
<br />
== AMDGPU PRO downgrade versions ==<br />
There is information in page that "A downgrade of the linux (4.9) and Xorg (1.18) packages is required to use AMDGPU PRO 17.10." Is it still true? Did not AMDGPU PRO driver got updated? Afaik, ubuntu provides this proprietary driver, but has more recent kernel.<br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 12:48, 16 November 2018 (UTC)<br />
<br />
: Currently, Yes. The [https://aur.archlinux.org/packages/amdgpu-pro/ AMDGPU-Pro AUR] has not been updated in some time and (as of this post) is still at version 17.40. [[User:Taurolyon|<span style="text-shadow: 0.1em 0.1em 0.09em #FFFF00; font-family:times; font-size:14px; FONT-WEIGHT: bold; color: #FF7C00; background-color:transparent">''"Tauro"''</span>]] ([[Special:Contributions/Taurolyon|Contributions]] <span style{{=}}"color: #FF7F00;">&bull;</span> [[User_talk:Taurolyon|Message]]) 20:40, 29 December 2018 (UTC)<br />
<br />
== Vulkan support for FreeSync on Mesa 19.1 ==<br />
<br />
Mesa 19.1 recently came out and it supposedly has FreeSync support for Vulkan. I can't test it right now but I was running the freesync patch before 19.1 and it worked for me. Anyone can confirm it is working on 19.1 and edit the FreeSync part about "only OpenGL is supported"<br />
<br />
[[User:Igo95862|Igo95862]] ([[User talk:Igo95862|talk]]) 08:56, 5 July 2019 (UTC)<br />
<br />
== Move Variable Refresh Rate to New Page ==<br />
<br />
NVIDIA has supported freesync for a while now as well as having their own variable refresh rate technology (Gsync). I think it would make more sense to make a separate page for it.<br />
[[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 17:00, 2 August 2019 (UTC)<br />
<br />
:I have started writing the article on my [[User:Cknight70#Variable_refresh_rate|personal page]]. Please feel free to make edits, I will create the new page in a couple of days if there are no objections. [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 18:58, 3 August 2019 (UTC)<br />
<br />
::Check out [[Variable Refresh Rate]] [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 15:49, 9 August 2019 (UTC)</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:AMDGPU&diff=579281Talk:AMDGPU2019-08-09T15:47:45Z<p>Cknight70: VRR</p>
<hr />
<div>== Supported Hardware ==<br />
I just crawled the product names "Radeon xyz" of VI/CI GPUs together and was going to go on for professional products "FirePro xzy", too.<br />
<br />
Afaik, there is no such complete listing on the web. There is a lot of confusion about the code and product names, due to AMD repeatedly rebranding their products and even change code names for same GPUs (Tonga = Antigua, Hawaii = Grenada, Carrizo = Bristol Ridge?, ...)<br />
<br />
When I started using gnu/linux, the arch wiki was a great help and there are still a lot of people struggling with graphics drivers. Now I know it is not hard to understand, but it is still confusing for beginners, coming from windows and just being used to install one software suite (not a drm driver, libdrm, mesa, gallium, etc.), supporting all the current hardware.<br />
<br />
now everyone has to go through all of this every time to determine 1) which hardware is really in their product and 2) which driver suits their hardware<br />
<br />
<br />
tl;dr I think maintaining such a list would be really useful for beginners, maybe not here but in a separate article?<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:27, 16 February 2016 (UTC)<br />
<br />
:Well, [https://wiki.gentoo.org/wiki/Amdgpu#Feature_support Gentoo wiki] has a simple two-line summary. If it's still not sufficiently clear or the list is already much larger, I guess we could have a separate subpage to not clutter the main page... -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 10:20, 16 February 2016 (UTC)<br />
<br />
:: yes, in the meantime I also found this table. It looks good but it is not complete. And completing the list would blow up the table cells a lot. I guess we should wait until vulkan and the new OpenCL driver has been released. Until then, there is no real reason for owners of pre-VI hardware to switch over to amdgpu. All vi and post-vi will be covered, so there is no need to list those separately. For the others I could create a subpage when switching to amdgpu gives you the opportunity for opencl 2.1 and vulkan -- [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 10:50, 16 February 2016 (UTC)<br />
<br />
== Enable amdgpu for Sea Islands Cards ==<br />
testing my Hawaii card w/ amdgpu last week, sound did not work, even though 6 pcm/hdmi audio devices were listed. Might be added as an issue (as I think this is important deciding between radeon and amdgpu), but needs further investigation/confirmation from other testers.<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:53, 16 February 2016 (UTC)<br />
:Please remember the AMDGPU is still in beta, and there's still info and knowledge/experience missing (e.g. most users use the Radeon driver).<br />
:AMD isn't that great in providing info and so far a lot of users are confused about their hardware support in use with amdgpu.<br />
:Remember there are flags like {{ic|exp_hw_support}}. More info need to be added, but it will take some time.<br />
:[[User:Francoism|Francoism]] ([[User talk:Francoism|talk]]) 13:14, 16 February 2016 (UTC)<br />
: It does indeed seem like that was no CI issue. Audio over hdmi is not supported by amdgpu atm, respectively only with the (upcoming) DAL changes[http://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/853189-audio-over-hdmi-tonga-and-amdgpu], although it is listed as 'done' [http://xorg.freedesktop.org/wiki/RadeonFeature/ here]. [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 15:59, 22 February 2016 (UTC)<br />
<br />
== Sea Islands cards not working with 4.5.x? ==<br />
I stumbled across this wiki page in hopes of getting more performance after seeing Michael from Phoronix get his 290 working with this. Following through all the instructions, menuconfiging and compiling new kernels, in the end all I get is a blank screen with my r9 390. No errors on Xorg.0.log. Can anyone confirm that it isn't just me?<br />
[[User:Katorisenko|Katorisenko]] ([[User talk:Katorisenko|talk]]) 07:46, 24 April 2016 (UTC)<br />
<br />
== AMDGPU and HDMI Audio ==<br />
<br />
According to [https://bugzilla.freedesktop.org/show_bug.cgi?id=92827#c2 this Freedesktop.org bug comment], HDMI audio support in AMDGPU requires DAL which is "not upstream yet", and won't be anytime soon according to [http://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-DC-DRM-No this Phoronix article]. I'm currently struggling to make my HDMI audio work with my AMD Radeon R9 380; if this happens to be impossible with AMDGPU, should we mention it in the "Troubleshooting" section of this page? --[[User:Hellpe|Hellpe]] ([[User talk:Hellpe|talk]]) 23:26, 3 January 2017 (UTC)<br />
<br />
:I am in favor of adding the information notice to the troubleshooting section. I think users who do not keep up with the news will be confused when Pulseaudio seems to add the HDMI audio devices, despite them being non-functional until the DAL code is refactored and accepted upstream then pushed to regular users. I know it was not immediately clear to me when I upgraded from my radeonsi card to an RX series amdgpu card until I did some reading. I "think" currently the only way to get HDMI audio is to use the AMDGPU-PRO driver for the time being. [[User:Ase1590|Ase1590]] ([[User talk:Ase1590|talk]]) 15:48, 4 January 2017 (UTC)<br />
<br />
::I have it working with an R9 380 under Xorg. I did nothing special, simply disabled the built-in audio and enabled the HDMI audio. It does not work under Wayland however. Pavucontrol shows unavailable. [[User:Unit73e|Unit73e]] ([[User talk:Unit73e|talk]]) 12:22, 2 December 2017 (UTC)<br />
<br />
== Some experiments with integrated AMD graphics ==<br />
<br />
Some results after playing with "radeon" and "amdgpu" drivers and gnome (for AMD A10 7850K):<br />
<br />
- Having both drivers loaded causes systemd to hang at system shutdown (xorg). Using amdgpu and blacklisting radeon or using radeon and blacklisting amdgpu both fix this problem.<br />
<br />
- Having amdgpu driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound output is shown only in rare cases<br />
<br />
- Having amdgpu driver with mkinitcpio.conf entry causes<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always disabled<br />
<br />
- Having radeon driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
- Having radeon driver with mkinitcpio.conf entry<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
Update: with kernel 4.11.2-1: HDMI sound output is now working with "amdgpu" but only in as "Gnome in xorg" login option (still no sound with Wayland). There are still some graphical glitches when running Wayland with the radeon driver: external screen doesn't turn off after timeout, windows can't be maximized with the "wmctrl" command and updating text in terminal causes some text updating problems (these don't exist with xorg, amdgpu and radeon both work fine). So in summary: I can now select either amdgpu or radeon driver but Wayland is still unstable.<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
== Vega Changes for Wiki ==<br />
<br />
With Vega releasing around the end of the month, the DC/DAL is still not it the kernel. Should we just put a note for users to use the AMDGPU-PRO drivers if they have VEGA cards? We could possibly add a note saying that in the AUR, there is an alternate kernel built from their repos with the DC/DAL code. <br />
Alternate kernel--> https://aur.archlinux.org/packages/linux-amd-staging-git/ [[User:Sesese9|Sesese9]] ([[User talk:Sesese9|talk]]) 00:40, 10 July 2017 (UTC)<br />
<br />
== Moving "Enable GPU display scaling" to xrandr ==<br />
<br />
I thought about it to put this under xrandr directly, but for example for my integrated Intel 6th gen GPU I don't have the "scaling mode" option, and I don't know about NVIDIA.<br />
And even if the "scaling mode" option exists for other vendors and or cards, I don't know if the possible values for "scaling mode" are the same everywhere, as far as I remember there are not.<br />
That was the reason I did put it here. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 16:01, 18 February 2018 (UTC)<br />
:Ok, looks like [[Intel_graphics#Setting_scaling_mode|Intel]] uses the same settings, but it's only available for internal (LVDS, eDP) ports, but at least according to https://bugs.freedesktop.org/show_bug.cgi?id=90989 it also uses "None, Full, Center, Full aspect".<br />
:I know that radeonsi uses the same commands, but still don't know about NVIDIA.<br />
:But yea, now I also think that it should be moved and the [[Intel_graphics#Setting_scaling_mode|Intel]] section should be merged into it. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 18:37, 18 February 2018 (UTC)<br />
<br />
== Update on kernel parameters ==<br />
<br />
this part does not seems to be required on 4.17:<br />
<br />
>> Also, since kernel 4.13, adding the amdgpu.si_support=1 radeon.si_support=0 or amdgpu.cik_support=1 radeon.cik_support=0 kernel parameter is required. Otherwise, AMDGPU will not start and you will end up with either radeon being used instead or the display being frozen during the boot.<br />
<br />
{{unsigned|12:10, 22 April 2018|Lesto}}<br />
<br />
== Renaming AMDGPU-PRO to Radeon Software for Linux? ==<br />
<br />
So AMD basically changed the name of their AMDGPU-PRO driver as simply Radeon™ Software for Linux, see [https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx 17.40], [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx 18.10] and [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-18.20-Early-Preview-Release-Notes.aspx 18.20 preview] release notes. With that in mind, should the names on wiki be slowly changed, or the alternative name/note being added somewhere? I'm not sure if AMDGPU-PRO is still used by AMD officially and whether AMDGPU (without PRO) term is being used as well, but the name sure definitely stuck among community – any ideas? [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:33, 11 May 2018 (UTC)<br />
<br />
EDIT: Probably worth noticing is the similar situation happened between [[Fglrx]] and [[AMD Catalyst]] naming back then. [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:38, 11 May 2018 (UTC)<br />
<br />
== AMDGPU PRO downgrade versions ==<br />
There is information in page that "A downgrade of the linux (4.9) and Xorg (1.18) packages is required to use AMDGPU PRO 17.10." Is it still true? Did not AMDGPU PRO driver got updated? Afaik, ubuntu provides this proprietary driver, but has more recent kernel.<br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 12:48, 16 November 2018 (UTC)<br />
<br />
: Currently, Yes. The [https://aur.archlinux.org/packages/amdgpu-pro/ AMDGPU-Pro AUR] has not been updated in some time and (as of this post) is still at version 17.40. [[User:Taurolyon|<span style="text-shadow: 0.1em 0.1em 0.09em #FFFF00; font-family:times; font-size:14px; FONT-WEIGHT: bold; color: #FF7C00; background-color:transparent">''"Tauro"''</span>]] ([[Special:Contributions/Taurolyon|Contributions]] <span style{{=}}"color: #FF7F00;">&bull;</span> [[User_talk:Taurolyon|Message]]) 20:40, 29 December 2018 (UTC)<br />
<br />
== Vulkan support for FreeSync on Mesa 19.1 ==<br />
<br />
Mesa 19.1 recently came out and it supposedly has FreeSync support for Vulkan. I can't test it right now but I was running the freesync patch before 19.1 and it worked for me. Anyone can confirm it is working on 19.1 and edit the FreeSync part about "only OpenGL is supported"<br />
<br />
[[User:Igo95862|Igo95862]] ([[User talk:Igo95862|talk]]) 08:56, 5 July 2019 (UTC)<br />
<br />
== Move Variable Refresh Rate to New Page ==<br />
<br />
NVIDIA has supported freesync for a while now as well as having their own variable refresh rate technology (Gsync). I think it would make more sense to make a separate page for it.<br />
[[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 17:00, 2 August 2019 (UTC)<br />
<br />
:I have started writing the article on my [[User:Cknight70#Variable_refresh_rate|personal page]]. Please feel free to make edits, I will create the new page in a couple of days if there are no objections. [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 18:58, 3 August 2019 (UTC)<br />
<br />
::Check out [[Variable Refresh Rate]] [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]])</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=579280User:Cknight702019-08-09T15:46:01Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's Page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Articles I have created ===<br />
* [[Variable Refresh Rate]]<br />
<br />
= Testing Page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=579279User:Cknight702019-08-09T15:40:38Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's Page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
Articles I have created:<br />
* [[Variable Refresh Rate]]<br />
<br />
= Testing Page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}</div>Cknight70https://wiki.archlinux.org/index.php?title=Gsync&diff=579278Gsync2019-08-09T15:38:46Z<p>Cknight70: Redirected page to Variable Refresh Rate</p>
<hr />
<div>#redirect [[Variable Refresh Rate]]</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=579274User:Cknight702019-08-09T15:34:34Z<p>Cknight70: VRR published</p>
<hr />
<div>== Cknight70's Page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing Page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}</div>Cknight70https://wiki.archlinux.org/index.php?title=FreeSync&diff=579273FreeSync2019-08-09T15:33:39Z<p>Cknight70: Changed redirect target from AMDGPU#Variable refresh rate to Variable Refresh Rate</p>
<hr />
<div>#redirect [[Variable Refresh Rate]]</div>Cknight70https://wiki.archlinux.org/index.php?title=AMDGPU&diff=579272AMDGPU2019-08-09T15:30:28Z<p>Cknight70: Redirect for VRR</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[de:AMDGPU]]<br />
[[ja:AMDGPU]]<br />
[[ru:AMDGPU]]<br />
{{Related articles start}}<br />
{{Related|AMD Catalyst}}<br />
{{Related|ATI}}<br />
{{Related|Xorg}}<br />
{{Related|Vulkan}}<br />
{{Related articles end}}<br />
<br />
'''amdgpu''' is the open source graphics driver for the latest AMD Radeon graphics cards.<br />
<br />
== Selecting the right driver ==<br />
<br />
Depending on the card you have, find the right driver in [[Xorg#AMD]]. This page has instructions for '''AMDGPU''' and '''AMDGPU PRO'''.<br />
<br />
At the moment there is support for [https://www.x.org/wiki/RadeonFeature/ Volcanic Islands (VI)] (and newer) and experimental support for [https://www.phoronix.com/scan.php?page=news_item&px=AMD-AMDGPU-Released Sea Islands (CI)] and [https://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-SI-Experimental-Code Southern Islands (SI)] cards. AMD has no plans to support pre-GCN GPUs.<br />
<br />
Owners of unsupported GPUs may use the open source [[radeon]] or the [[AMD Catalyst]] driver instead.<br />
<br />
== Installation ==<br />
<br />
{{Note|If coming from the proprietary Catalyst driver, see [[AMD Catalyst#Uninstallation]] first.}}<br />
<br />
[[Install]] the {{Pkg|mesa}} package, which provides the DRI driver for 3D acceleration.<br />
<br />
* For 32-bit application support, also install the {{Pkg|lib32-mesa}} package from the [[multilib]] repostory.<br />
* For the DDX driver (which provides 2D acceleration in [[Xorg]]), install the {{Pkg|xf86-video-amdgpu}} package.<br />
* For [[Vulkan]] support, install the {{Pkg|vulkan-radeon}} package. Optionally install the {{Pkg|lib32-vulkan-radeon}} package for 32-bit application support.<br />
<br />
Support for [[#Video acceleration|accelerated video decoding]] is provided by {{Pkg|libva-mesa-driver}} and {{Pkg|lib32-libva-mesa-driver}} for VA-API and {{Pkg|mesa-vdpau}} and {{Pkg|lib32-mesa-vdpau}} packages for VDPAU.<br />
<br />
=== Enable Southern Islands (SI) and Sea Islands (CIK) support ===<br />
<br />
The {{Pkg|linux}} package enables AMDGPU support for cards of the Southern Islands (SI) and Sea Islands (CIK). When building or compiling a [[kernel]], {{ic|1=CONFIG_DRM_AMDGPU_SI=Y}} and/or {{ic|1=CONFIG_DRM_AMDGPU_CIK=Y}} should be be set in the config.<br />
<br />
==== Specify the correct module order ====<br />
<br />
Even when AMDGPU support for SI/CIK has been enabled by the kernel, the [[radeon]] driver may be loaded before the {{ic|amdgpu}} driver.<br />
<br />
Make sure {{ic|amdgpu}} has been set as first module in the [[Mkinitcpio#MODULES]] array, e.g. {{ic|1=MODULES=(amdgpu radeon)}}.<br />
<br />
==== Set required module parameters ====<br />
<br />
The [[module parameters]] of both {{ic|amdgpu}} and {{ic|radeon}} modules are {{ic|1=cik_support=}} and {{ic|1=si_support=}}. <br />
<br />
They need to be set as kernel parameters or in a ''modprobe'' configuration file, and depend on the cards GCN version.<br />
<br />
{{Tip|[[dmesg]] may indicate the correct kernel parameter to use: {{ic|1=[..] amdgpu 0000:01:00.0: Use radeon.cik_support=0 amdgpu.cik_support=1 to override}}.}}<br />
<br />
===== Set module parameters in kernel command line =====<br />
<br />
Set one of the following [[kernel parameters]]:<br />
<br />
* Southern Islands (SI): {{ic|1=radeon.si_support=0 amdgpu.si_support=1}}<br />
* Sea Islands (CIK): {{ic|1=radeon.cik_support=0 amdgpu.cik_support=1}}<br />
<br />
===== Set module parameters in modprobe.d =====<br />
<br />
Create the configuration [[modprobe]] files in {{ic|/etc/modprobe.d/}}, see {{man|5|modprobe.d}} for syntax details.<br />
<br />
For Southern Islands (SI) use option {{ic|1=si_support=1}}, for Sea Islands (CIK) use option {{ic|1=cik_support=1}}, e.g.:<br />
<br />
{{hc|/etc/modprobe.d/amdgpu.conf|2=<br />
options amdgpu si_support=1<br />
options amdgpu cik_support=0<br />
}}<br />
<br />
{{hc|/etc/modprobe.d/radeon.conf|2=<br />
options radeon si_support=0<br />
options radeon cik_support=0<br />
}}<br />
<br />
Make sure {{ic|modconf}} is in the the {{ic|HOOKS}} array in {{ic|/etc/mkinitcpio.conf}} and [[regenerate the initramfs]].<br />
<br />
=== AMDGPU PRO ===<br />
<br />
AMD provides a proprietary, binary userland driver called ''AMDGPU PRO'', which works on top of the open-source AMDGPU kernel driver.<br />
<br />
From [http://www.phoronix.com/vr.php?view=27266 Radeon Software 18.50 vs Mesa 19 benchmarks] article: When it comes to OpenGL games, the RadeonSI Gallium3D driver simply dominates the proprietary AMD OpenGL driver. About the only advantage to the closed-source AMD OpenGL driver is its support for GL 4.6 while RadeonSI is still limited to GL 4.5 until its SPIR-V ingestion support is completed.<br />
<br />
Install the {{AUR|amdgpu-pro-libgl}}. Optionally install the {{AUR|lib32-amdgpu-pro-libgl}} package for 32-bit application support.<br />
<br />
== Loading ==<br />
<br />
The {{ic|amdgpu}} kernel module should load fine automatically on system boot.<br />
<br />
If it does not happen, then:<br />
<br />
* Make sure to [[#Enable Southern Islands (SI) and Sea Islands (CIK) support]] when needed.<br />
* Make sure you have the latest {{Pkg|linux-firmware}} package installed. This driver requires the latest firmware for each model to successfully boot.<br />
* Make sure you do '''not''' have {{ic|nomodeset}} or {{ic|1=vga=}} as a [[kernel parameter]], since {{ic|amdgpu}} requires [[KMS]].<br />
* Check that you have not disabled {{ic|amdgpu}} by using any [[Kernel_modules#Blacklisting|kernel module blacklisting]].<br />
<br />
=== Enable early KMS ===<br />
See [[Kernel mode setting#Early KMS start]].<br />
<br />
== Xorg configuration ==<br />
<br />
[[Xorg]] will automatically load the driver and it will use your monitor's EDID to set the native resolution. Configuration is only required for tuning the driver.<br />
<br />
If you want manual configuration, create {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}}, and add the following:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/20-amdgpu.conf|2=<br />
Section "Device"<br />
Identifier "AMD"<br />
Driver "amdgpu"<br />
EndSection<br />
}}<br />
<br />
Using this section, you can enable features and tweak the driver settings, see {{man|4|amdgpu}} first before setting driver options.<br />
<br />
=== Tear Free Rendering ===<br />
''TearFree'' controls tearing prevention using the hardware page flipping mechanism. If this option is set, the default value of the property is 'on' or 'off' accordingly. If this option isn't set, the default value of the property is auto, which means that TearFree is on for rotated outputs, outputs with RandR transforms applied and for RandR 1.4 slave outputs, otherwise off:<br />
<br />
Option "TearFree" "true"<br />
<br />
=== DRI level ===<br />
<br />
''DRI'' sets the maximum level of DRI to enable. Valid values are ''2'' for DRI2 or ''3'' for DRI3. The default is ''3'' for DRI3 if the [[Xorg]] version is >= 1.18.3, otherwise DRI2 is used:<br />
<br />
Option "DRI" "3"<br />
<br />
=== Variable refresh rate ===<br />
See [[Variable Refresh Rate]]<br />
<br />
== Features ==<br />
=== Video acceleration ===<br />
<br />
See [[Hardware video acceleration]].<br />
<br />
=== Overclocking ===<br />
<br />
Since Linux 4.17, it is possible to adjust clocks and voltages of the graphics card via {{Ic|1=/sys/class/drm/card0/device/pp_od_clk_voltage}}. It is however required to unlock access to it in sysfs by appending the boot parameter {{Ic|1=amdgpu.ppfeaturemask=0xffffffff}}.<br />
<br />
{{Note|In sysfs, paths like {{Ic|1=/sys/class/drm/...}} are just symlinks and may change between reboots. Persistent locations can be found in {{Ic|1=/sys/devices/}}, e.g. {{Ic|1=/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/}}. Adjust the commands accordingly for a reliable result.}}<br />
<br />
To set the GPU clock for the maximum pstate 7 on e.g. a Polaris GPU to 1209MHz and 900mV voltage, run:<br />
# echo "s 7 1209 900" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
The same procedure can be applied to the VRAM, e.g. maximum pstate 2 on Polaris 5xx series cards:<br />
# echo "m 2 1850 850" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
{{Warning|1=Double check the entered values, as mistakes might instantly cause fatal hardware damage!}}<br />
To apply, run<br />
# echo "c" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
To check if it worked out, read out clocks and voltage under 3D load:<br />
# watch -n 0.5 cat /sys/kernel/debug/dri/0/amdgpu_pm_info<br />
You can reset to the default values using this:<br />
# echo "r" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
<br />
It is also possible to forbid the driver so switch to certain pstates, e.g. to workaround problems with deep powersaving pstates like flickering artifacts or stutter. To force the highest VRAM pstate on a Polaris RX 5xx card, while still allowing the GPU itself to run with lower clocks, run:<br />
# echo "manual" > /sys/class/drm/card0/device/power_dpm_force_performance_level<br />
# echo "2" > /sys/class/drm/card0/device/pp_dpm_mclk<br />
Allow only the three highest GPU pstates:<br />
# echo "5 6 7" > /sys/class/drm/card0/device/pp_dpm_sclk<br />
<br />
To set the allowed maximum power consumption of the GPU to e.g. 50 Watts, run<br />
# echo 50000000 > /sys/class/drm/card0/device/hwmon/hwmon0/power1_cap<br />
Until Linux kernel 4.20, it will only be possible to decrease the value, not increase.<br />
<br />
{{Note|The above procedure was tested with a Polaris RX 560 card. There may be different behavior or bugs with different GPUs.}}<br />
<br />
=== Enable GPU display scaling ===<br />
<br />
{{Move|xrandr|Not specific to AMDGPU.|section=Moving "Enable GPU display scaling" to xrandr}}<br />
<br />
To avoid the usage of the scaler which is built in the display, and use the GPU own scaler instead, when not using the native resolution of the monitor, execute:<br />
$ xrandr --output "<output>" --set "scaling mode" "<scaling mode>"<br />
Possible values for {{ic|"scaling mode"}} are: {{ic|None, Full, Center, Full aspect}}<br />
<br />
* To show the available outputs and settings, execute:<br />
$ xrandr --prop<br />
<br />
* To set {{ic|1=scaling mode = Full aspect}} for just every available output, execute:<br />
$ for output in $(xrandr --prop | grep -E -o -i "^[A-Z\-]+-[0-9]+"); do xrandr --output "$output" --set "scaling mode" "Full aspect"; done<br />
<br />
== Troubleshooting ==<br />
<br />
=== Xorg or applications won't start ===<br />
<br />
* "(EE) AMDGPU(0): [DRI2] DRI2SwapBuffers: drawable has no back or front?" error after opening glxgears, can open Xorg server but OpenGL apps crash.<br />
* "(EE) AMDGPU(0): Given depth (32) is not supported by amdgpu driver" error, Xorg won't start.<br />
<br />
Setting the screen's depth under Xorg to 16 or 32 will cause problems/crash. To avoid that, you should use a standard screen depth of 24 by adding this to your "screen" section:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/10-screen.conf|<br />
Section "Screen"<br />
Identifier "Screen"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Depth 24<br />
EndSubSection<br />
EndSection<br />
}}<br />
<br />
=== Screen artifacts and frequency problem ===<br />
<br />
[[ATI#Dynamic power management|Dynamic power management]] may cause screen artifacts to appear when displaying to monitors at higher frequencies (120+Hz) due to issues in the way GPU clock speeds are managed[https://bugs.freedesktop.org/show_bug.cgi?id=96868][https://bugs.freedesktop.org/show_bug.cgi?id=102646].<br />
<br />
A workaround [https://bugs.freedesktop.org/show_bug.cgi?id=96868#c13] is saving {{ic|high}} or {{ic|low}} in {{ic|/sys/class/drm/card0/device/power_dpm_force_performance_level}}.<br />
<br />
There is also a GUI solution [https://github.com/marazmista/radeon-profile] where you can manage the "power_dpm" with {{aur|radeon-profile-git}} and {{aur|radeon-profile-daemon-git}}.<br />
<br />
=== R9 390 series Poor Performance and/or Instability ===<br />
<br />
If you experience issues [https://bugs.freedesktop.org/show_bug.cgi?id=91880] with a AMD R9 390 series graphics card, set {{ic|1=radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1 amdgpu.dpm=1 amdgpu.dc=1}} as [[kernel parameters]] to force the use of amdgpu driver instead of radeon.<br />
<br />
If it still does not work, try disabling DPM, by setting the [[kernel parameters]] to: {{ic|1=radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1}}<br />
<br />
=== Freezes with "[drm] IP block:gmc_v8_0 is hung!" kernel error ===<br />
<br />
If you experience freezes and kernel crashes during a GPU intensive task with the kernel error " [drm] IP block:gmc_v8_0 is hung!" [https://bugs.freedesktop.org/show_bug.cgi?id=102322], a workaround is to set {{ic|1=amdgpu.vm_update_mode=3}} as [[kernel parameters]] to force the GPUVM page tables update to be done using the CPU. Downsides are listed here [https://bugs.freedesktop.org/show_bug.cgi?id=102322#c15].<br />
<br />
=== Cursor corruption ===<br />
<br />
If you experience issues with the mouse cursor sometimes not rendering properly, set {{ic|Option "SWCursor" "True"}} in the {{ic|"Device"}} section of the {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}} configuration file.<br />
<br />
If you are using {{ic|xrandr}} for scaling and the cursor is flickering or disappearing, you may be able to fix it by setting the {{ic|TearFree}} property: {{ic|xrandr --output HDMI-A-0 --set TearFree on}}.</div>Cknight70https://wiki.archlinux.org/index.php?title=Variable_refresh_rate&diff=579264Variable refresh rate2019-08-09T15:18:24Z<p>Cknight70: Page creation</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[Category:Gaming]]<br />
{{Related articles start}}<br />
{{Related|Xrandr}}<br />
{{Related|Xorg}}<br />
{{Related|NVIDIA}}<br />
{{Related|AMDGPU}}<br />
{{Related articles end}}<br />
<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering). For a comprehensive look at VRR see [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki]<br />
<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://techreport.com/news/34053/intel-reiterates-plans-to-support-vesa-adaptive-sync-in-its-gpus/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
<br />
{{Note|Nvidia GPUs older than their 10 series do not support "Gsync Compatible" monitors.}}<br />
<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
== Change Freesync Range of Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
<br />
{{Expansion|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Accuracy|This information needs to be further verified. If you have a VRR monitor please consider contributing}}<br />
* For Gsync, the monitor must be plugged in via display port. For Freesync, some monitors with the HDMI 2.1 specification is supported otherwise display port will be needed.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[Variable_Refresh_Rate#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less of an issue at higher refresh rates, most Freesync monitors only have a range up to 90Hz see [[Variable_Refresh_Rate#Change_Freesync_range_of_monitor|Change Freesync range of Monitor]]<br />
<br />
== See also ==<br />
<br />
* [https://en.wikipedia.org/wiki/Variable_refresh_rate Wikipedia Article]<br />
* [https://pcgamingwiki.com/wiki/Glossary:Variable_refresh_rate_(VRR) PC Gaming Wiki Article]</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=579247User:Cknight702019-08-09T14:26:42Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's Page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing Page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable Refresh Rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
== Change Freesync Range of Monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID File ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
You can edit this file with {{Aur|wxedid}}<br />
{{Note|This section needs verification from users with a freesync monitor please consider contributing.}}<br />
You may follow one of the guides of people changing the freesync range on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit “MONITOR” in the fileto be the correct display ID. You can get the display ID with the {{ic|xrandr –query}} command.}}<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified if you have a VRR monitor please consider contributing}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[User:Cknight70#Remove_applications_from_Blacklist|blacklists]] many applications including video players.<br />
* Although tearing is much less of an issue at higher refresh rates, most Freesync monitors only have a range up to 90Hz see [[User:Cknight70#Change_Freesync_range_of_monitor|Change Freesync range of Monitor]]</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578936User:Cknight702019-08-03T21:02:36Z<p>Cknight70: Grammer pass</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of Vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen. [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page.''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info.}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply.<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible."<br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}.<br />
<br />
{{Note|I need to find EDID editing software for Linux try {{Aur|wxedid}}.}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor.<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here:<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync.<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started.<br />
* Mesa [[User:Cknight70#Remove_applications_from_Blacklist|blacklists]] many applications including video players.</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578935User:Cknight702019-08-03T20:56:47Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
Add the line to your [[Xorg#Using_.conf_files|.conf]] file.<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux try {{Aur|wxedid}}}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started<br />
* Mesa [[User:Cknight70#Remove_applications_from_Blacklist|blacklists]] many applications</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578934User:Cknight702019-08-03T20:45:02Z<p>Cknight70: /* Editing the EDID file */</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
add the line to your [[Xorg#Using_.conf_files|.conf]] file<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux try wxedid}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started<br />
* Mesa [[User:Cknight70#Remove_applications_from_Blacklist|blacklists]] many applications</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578933User:Cknight702019-08-03T20:44:22Z<p>Cknight70: /* Editing the EDID file */</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
add the line to your [[Xorg#Using_.conf_files|.conf]] file<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux try wxedit}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started<br />
* Mesa [[User:Cknight70#Remove_applications_from_Blacklist|blacklists]] many applications</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578932User:Cknight702019-08-03T20:41:11Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
add the line to your [[Xorg#Using_.conf_files|.conf]] file<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started<br />
* Mesa [[User:Cknight70#Remove_applications_from_Blacklist|blacklists]] many applications</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578931User:Cknight702019-08-03T20:26:21Z<p>Cknight70: typo</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
add the line to your [[Xorg#Using_.conf_files|.conf]] file<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [[AMDGPU#Xorg_configuration|AMDGPU]] page''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578930User:Cknight702019-08-03T20:23:21Z<p>Cknight70: Xorg.conf</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Using a Xorg conf file ====<br />
add the line to your [[Xorg#Using_.conf_files|.conf]] file<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
''For more information on Xorg configuration see the [AMDGPU#Xorg_configuration|AMDGPU] page''<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Using a Xorg conf file ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578929User:Cknight702019-08-03T19:13:51Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it to run hot and possibly cause harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578928User:Cknight702019-08-03T19:11:25Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
{{Note|Edit the “MONITOR” to be the correct display ID. You can get this with the same {{ic|xrandr –query}} command.}}<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:AMDGPU&diff=578927Talk:AMDGPU2019-08-03T18:59:32Z<p>Cknight70: typo</p>
<hr />
<div>== Supported Hardware ==<br />
I just crawled the product names "Radeon xyz" of VI/CI GPUs together and was going to go on for professional products "FirePro xzy", too.<br />
<br />
Afaik, there is no such complete listing on the web. There is a lot of confusion about the code and product names, due to AMD repeatedly rebranding their products and even change code names for same GPUs (Tonga = Antigua, Hawaii = Grenada, Carrizo = Bristol Ridge?, ...)<br />
<br />
When I started using gnu/linux, the arch wiki was a great help and there are still a lot of people struggling with graphics drivers. Now I know it is not hard to understand, but it is still confusing for beginners, coming from windows and just being used to install one software suite (not a drm driver, libdrm, mesa, gallium, etc.), supporting all the current hardware.<br />
<br />
now everyone has to go through all of this every time to determine 1) which hardware is really in their product and 2) which driver suits their hardware<br />
<br />
<br />
tl;dr I think maintaining such a list would be really useful for beginners, maybe not here but in a separate article?<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:27, 16 February 2016 (UTC)<br />
<br />
:Well, [https://wiki.gentoo.org/wiki/Amdgpu#Feature_support Gentoo wiki] has a simple two-line summary. If it's still not sufficiently clear or the list is already much larger, I guess we could have a separate subpage to not clutter the main page... -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 10:20, 16 February 2016 (UTC)<br />
<br />
:: yes, in the meantime I also found this table. It looks good but it is not complete. And completing the list would blow up the table cells a lot. I guess we should wait until vulkan and the new OpenCL driver has been released. Until then, there is no real reason for owners of pre-VI hardware to switch over to amdgpu. All vi and post-vi will be covered, so there is no need to list those separately. For the others I could create a subpage when switching to amdgpu gives you the opportunity for opencl 2.1 and vulkan -- [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 10:50, 16 February 2016 (UTC)<br />
<br />
== Enable amdgpu for Sea Islands Cards ==<br />
testing my Hawaii card w/ amdgpu last week, sound did not work, even though 6 pcm/hdmi audio devices were listed. Might be added as an issue (as I think this is important deciding between radeon and amdgpu), but needs further investigation/confirmation from other testers.<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:53, 16 February 2016 (UTC)<br />
:Please remember the AMDGPU is still in beta, and there's still info and knowledge/experience missing (e.g. most users use the Radeon driver).<br />
:AMD isn't that great in providing info and so far a lot of users are confused about their hardware support in use with amdgpu.<br />
:Remember there are flags like {{ic|exp_hw_support}}. More info need to be added, but it will take some time.<br />
:[[User:Francoism|Francoism]] ([[User talk:Francoism|talk]]) 13:14, 16 February 2016 (UTC)<br />
: It does indeed seem like that was no CI issue. Audio over hdmi is not supported by amdgpu atm, respectively only with the (upcoming) DAL changes[http://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/853189-audio-over-hdmi-tonga-and-amdgpu], although it is listed as 'done' [http://xorg.freedesktop.org/wiki/RadeonFeature/ here]. [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 15:59, 22 February 2016 (UTC)<br />
<br />
== Sea Islands cards not working with 4.5.x? ==<br />
I stumbled across this wiki page in hopes of getting more performance after seeing Michael from Phoronix get his 290 working with this. Following through all the instructions, menuconfiging and compiling new kernels, in the end all I get is a blank screen with my r9 390. No errors on Xorg.0.log. Can anyone confirm that it isn't just me?<br />
[[User:Katorisenko|Katorisenko]] ([[User talk:Katorisenko|talk]]) 07:46, 24 April 2016 (UTC)<br />
<br />
== AMDGPU and HDMI Audio ==<br />
<br />
According to [https://bugzilla.freedesktop.org/show_bug.cgi?id=92827#c2 this Freedesktop.org bug comment], HDMI audio support in AMDGPU requires DAL which is "not upstream yet", and won't be anytime soon according to [http://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-DC-DRM-No this Phoronix article]. I'm currently struggling to make my HDMI audio work with my AMD Radeon R9 380; if this happens to be impossible with AMDGPU, should we mention it in the "Troubleshooting" section of this page? --[[User:Hellpe|Hellpe]] ([[User talk:Hellpe|talk]]) 23:26, 3 January 2017 (UTC)<br />
<br />
:I am in favor of adding the information notice to the troubleshooting section. I think users who do not keep up with the news will be confused when Pulseaudio seems to add the HDMI audio devices, despite them being non-functional until the DAL code is refactored and accepted upstream then pushed to regular users. I know it was not immediately clear to me when I upgraded from my radeonsi card to an RX series amdgpu card until I did some reading. I "think" currently the only way to get HDMI audio is to use the AMDGPU-PRO driver for the time being. [[User:Ase1590|Ase1590]] ([[User talk:Ase1590|talk]]) 15:48, 4 January 2017 (UTC)<br />
<br />
::I have it working with an R9 380 under Xorg. I did nothing special, simply disabled the built-in audio and enabled the HDMI audio. It does not work under Wayland however. Pavucontrol shows unavailable. [[User:Unit73e|Unit73e]] ([[User talk:Unit73e|talk]]) 12:22, 2 December 2017 (UTC)<br />
<br />
== Some experiments with integrated AMD graphics ==<br />
<br />
Some results after playing with "radeon" and "amdgpu" drivers and gnome (for AMD A10 7850K):<br />
<br />
- Having both drivers loaded causes systemd to hang at system shutdown (xorg). Using amdgpu and blacklisting radeon or using radeon and blacklisting amdgpu both fix this problem.<br />
<br />
- Having amdgpu driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound output is shown only in rare cases<br />
<br />
- Having amdgpu driver with mkinitcpio.conf entry causes<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always disabled<br />
<br />
- Having radeon driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
- Having radeon driver with mkinitcpio.conf entry<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
Update: with kernel 4.11.2-1: HDMI sound output is now working with "amdgpu" but only in as "Gnome in xorg" login option (still no sound with Wayland). There are still some graphical glitches when running Wayland with the radeon driver: external screen doesn't turn off after timeout, windows can't be maximized with the "wmctrl" command and updating text in terminal causes some text updating problems (these don't exist with xorg, amdgpu and radeon both work fine). So in summary: I can now select either amdgpu or radeon driver but Wayland is still unstable.<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
== Vega Changes for Wiki ==<br />
<br />
With Vega releasing around the end of the month, the DC/DAL is still not it the kernel. Should we just put a note for users to use the AMDGPU-PRO drivers if they have VEGA cards? We could possibly add a note saying that in the AUR, there is an alternate kernel built from their repos with the DC/DAL code. <br />
Alternate kernel--> https://aur.archlinux.org/packages/linux-amd-staging-git/ [[User:Sesese9|Sesese9]] ([[User talk:Sesese9|talk]]) 00:40, 10 July 2017 (UTC)<br />
<br />
== Moving "Enable GPU display scaling" to xrandr ==<br />
<br />
I thought about it to put this under xrandr directly, but for example for my integrated Intel 6th gen GPU I don't have the "scaling mode" option, and I don't know about NVIDIA.<br />
And even if the "scaling mode" option exists for other vendors and or cards, I don't know if the possible values for "scaling mode" are the same everywhere, as far as I remember there are not.<br />
That was the reason I did put it here. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 16:01, 18 February 2018 (UTC)<br />
:Ok, looks like [[Intel_graphics#Setting_scaling_mode|Intel]] uses the same settings, but it's only available for internal (LVDS, eDP) ports, but at least according to https://bugs.freedesktop.org/show_bug.cgi?id=90989 it also uses "None, Full, Center, Full aspect".<br />
:I know that radeonsi uses the same commands, but still don't know about NVIDIA.<br />
:But yea, now I also think that it should be moved and the [[Intel_graphics#Setting_scaling_mode|Intel]] section should be merged into it. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 18:37, 18 February 2018 (UTC)<br />
<br />
== Update on kernel parameters ==<br />
<br />
this part does not seems to be required on 4.17:<br />
<br />
>> Also, since kernel 4.13, adding the amdgpu.si_support=1 radeon.si_support=0 or amdgpu.cik_support=1 radeon.cik_support=0 kernel parameter is required. Otherwise, AMDGPU will not start and you will end up with either radeon being used instead or the display being frozen during the boot.<br />
<br />
{{unsigned|12:10, 22 April 2018|Lesto}}<br />
<br />
== Renaming AMDGPU-PRO to Radeon Software for Linux? ==<br />
<br />
So AMD basically changed the name of their AMDGPU-PRO driver as simply Radeon™ Software for Linux, see [https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx 17.40], [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx 18.10] and [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-18.20-Early-Preview-Release-Notes.aspx 18.20 preview] release notes. With that in mind, should the names on wiki be slowly changed, or the alternative name/note being added somewhere? I'm not sure if AMDGPU-PRO is still used by AMD officially and whether AMDGPU (without PRO) term is being used as well, but the name sure definitely stuck among community – any ideas? [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:33, 11 May 2018 (UTC)<br />
<br />
EDIT: Probably worth noticing is the similar situation happened between [[Fglrx]] and [[AMD Catalyst]] naming back then. [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:38, 11 May 2018 (UTC)<br />
<br />
== AMDGPU PRO downgrade versions ==<br />
There is information in page that "A downgrade of the linux (4.9) and Xorg (1.18) packages is required to use AMDGPU PRO 17.10." Is it still true? Did not AMDGPU PRO driver got updated? Afaik, ubuntu provides this proprietary driver, but has more recent kernel.<br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 12:48, 16 November 2018 (UTC)<br />
<br />
: Currently, Yes. The [https://aur.archlinux.org/packages/amdgpu-pro/ AMDGPU-Pro AUR] has not been updated in some time and (as of this post) is still at version 17.40. [[User:Taurolyon|<span style="text-shadow: 0.1em 0.1em 0.09em #FFFF00; font-family:times; font-size:14px; FONT-WEIGHT: bold; color: #FF7C00; background-color:transparent">''"Tauro"''</span>]] ([[Special:Contributions/Taurolyon|Contributions]] <span style{{=}}"color: #FF7F00;">&bull;</span> [[User_talk:Taurolyon|Message]]) 20:40, 29 December 2018 (UTC)<br />
<br />
== Vulkan support for FreeSync on Mesa 19.1 ==<br />
<br />
Mesa 19.1 recently came out and it supposedly has FreeSync support for Vulkan. I can't test it right now but I was running the freesync patch before 19.1 and it worked for me. Anyone can confirm it is working on 19.1 and edit the FreeSync part about "only OpenGL is supported"<br />
<br />
[[User:Igo95862|Igo95862]] ([[User talk:Igo95862|talk]]) 08:56, 5 July 2019 (UTC)<br />
<br />
== Move Variable Refresh Rate to New Page ==<br />
<br />
NVIDIA has supported freesync for a while now as well as having their own variable refresh rate technology (Gsync). I think it would make more sense to make a separate page for it.<br />
[[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 17:00, 2 August 2019 (UTC)<br />
<br />
:I have started writing the article on my [[User:Cknight70#Variable_refresh_rate|personal page]]. Please feel free to make edits, I will create the new page in a couple of days if there are no objections. [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 18:58, 3 August 2019 (UTC)</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:AMDGPU&diff=578926Talk:AMDGPU2019-08-03T18:58:25Z<p>Cknight70: Variable Refresh Rate</p>
<hr />
<div>== Supported Hardware ==<br />
I just crawled the product names "Radeon xyz" of VI/CI GPUs together and was going to go on for professional products "FirePro xzy", too.<br />
<br />
Afaik, there is no such complete listing on the web. There is a lot of confusion about the code and product names, due to AMD repeatedly rebranding their products and even change code names for same GPUs (Tonga = Antigua, Hawaii = Grenada, Carrizo = Bristol Ridge?, ...)<br />
<br />
When I started using gnu/linux, the arch wiki was a great help and there are still a lot of people struggling with graphics drivers. Now I know it is not hard to understand, but it is still confusing for beginners, coming from windows and just being used to install one software suite (not a drm driver, libdrm, mesa, gallium, etc.), supporting all the current hardware.<br />
<br />
now everyone has to go through all of this every time to determine 1) which hardware is really in their product and 2) which driver suits their hardware<br />
<br />
<br />
tl;dr I think maintaining such a list would be really useful for beginners, maybe not here but in a separate article?<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:27, 16 February 2016 (UTC)<br />
<br />
:Well, [https://wiki.gentoo.org/wiki/Amdgpu#Feature_support Gentoo wiki] has a simple two-line summary. If it's still not sufficiently clear or the list is already much larger, I guess we could have a separate subpage to not clutter the main page... -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 10:20, 16 February 2016 (UTC)<br />
<br />
:: yes, in the meantime I also found this table. It looks good but it is not complete. And completing the list would blow up the table cells a lot. I guess we should wait until vulkan and the new OpenCL driver has been released. Until then, there is no real reason for owners of pre-VI hardware to switch over to amdgpu. All vi and post-vi will be covered, so there is no need to list those separately. For the others I could create a subpage when switching to amdgpu gives you the opportunity for opencl 2.1 and vulkan -- [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 10:50, 16 February 2016 (UTC)<br />
<br />
== Enable amdgpu for Sea Islands Cards ==<br />
testing my Hawaii card w/ amdgpu last week, sound did not work, even though 6 pcm/hdmi audio devices were listed. Might be added as an issue (as I think this is important deciding between radeon and amdgpu), but needs further investigation/confirmation from other testers.<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:53, 16 February 2016 (UTC)<br />
:Please remember the AMDGPU is still in beta, and there's still info and knowledge/experience missing (e.g. most users use the Radeon driver).<br />
:AMD isn't that great in providing info and so far a lot of users are confused about their hardware support in use with amdgpu.<br />
:Remember there are flags like {{ic|exp_hw_support}}. More info need to be added, but it will take some time.<br />
:[[User:Francoism|Francoism]] ([[User talk:Francoism|talk]]) 13:14, 16 February 2016 (UTC)<br />
: It does indeed seem like that was no CI issue. Audio over hdmi is not supported by amdgpu atm, respectively only with the (upcoming) DAL changes[http://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/853189-audio-over-hdmi-tonga-and-amdgpu], although it is listed as 'done' [http://xorg.freedesktop.org/wiki/RadeonFeature/ here]. [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 15:59, 22 February 2016 (UTC)<br />
<br />
== Sea Islands cards not working with 4.5.x? ==<br />
I stumbled across this wiki page in hopes of getting more performance after seeing Michael from Phoronix get his 290 working with this. Following through all the instructions, menuconfiging and compiling new kernels, in the end all I get is a blank screen with my r9 390. No errors on Xorg.0.log. Can anyone confirm that it isn't just me?<br />
[[User:Katorisenko|Katorisenko]] ([[User talk:Katorisenko|talk]]) 07:46, 24 April 2016 (UTC)<br />
<br />
== AMDGPU and HDMI Audio ==<br />
<br />
According to [https://bugzilla.freedesktop.org/show_bug.cgi?id=92827#c2 this Freedesktop.org bug comment], HDMI audio support in AMDGPU requires DAL which is "not upstream yet", and won't be anytime soon according to [http://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-DC-DRM-No this Phoronix article]. I'm currently struggling to make my HDMI audio work with my AMD Radeon R9 380; if this happens to be impossible with AMDGPU, should we mention it in the "Troubleshooting" section of this page? --[[User:Hellpe|Hellpe]] ([[User talk:Hellpe|talk]]) 23:26, 3 January 2017 (UTC)<br />
<br />
:I am in favor of adding the information notice to the troubleshooting section. I think users who do not keep up with the news will be confused when Pulseaudio seems to add the HDMI audio devices, despite them being non-functional until the DAL code is refactored and accepted upstream then pushed to regular users. I know it was not immediately clear to me when I upgraded from my radeonsi card to an RX series amdgpu card until I did some reading. I "think" currently the only way to get HDMI audio is to use the AMDGPU-PRO driver for the time being. [[User:Ase1590|Ase1590]] ([[User talk:Ase1590|talk]]) 15:48, 4 January 2017 (UTC)<br />
<br />
::I have it working with an R9 380 under Xorg. I did nothing special, simply disabled the built-in audio and enabled the HDMI audio. It does not work under Wayland however. Pavucontrol shows unavailable. [[User:Unit73e|Unit73e]] ([[User talk:Unit73e|talk]]) 12:22, 2 December 2017 (UTC)<br />
<br />
== Some experiments with integrated AMD graphics ==<br />
<br />
Some results after playing with "radeon" and "amdgpu" drivers and gnome (for AMD A10 7850K):<br />
<br />
- Having both drivers loaded causes systemd to hang at system shutdown (xorg). Using amdgpu and blacklisting radeon or using radeon and blacklisting amdgpu both fix this problem.<br />
<br />
- Having amdgpu driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound output is shown only in rare cases<br />
<br />
- Having amdgpu driver with mkinitcpio.conf entry causes<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always disabled<br />
<br />
- Having radeon driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
- Having radeon driver with mkinitcpio.conf entry<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
Update: with kernel 4.11.2-1: HDMI sound output is now working with "amdgpu" but only in as "Gnome in xorg" login option (still no sound with Wayland). There are still some graphical glitches when running Wayland with the radeon driver: external screen doesn't turn off after timeout, windows can't be maximized with the "wmctrl" command and updating text in terminal causes some text updating problems (these don't exist with xorg, amdgpu and radeon both work fine). So in summary: I can now select either amdgpu or radeon driver but Wayland is still unstable.<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
== Vega Changes for Wiki ==<br />
<br />
With Vega releasing around the end of the month, the DC/DAL is still not it the kernel. Should we just put a note for users to use the AMDGPU-PRO drivers if they have VEGA cards? We could possibly add a note saying that in the AUR, there is an alternate kernel built from their repos with the DC/DAL code. <br />
Alternate kernel--> https://aur.archlinux.org/packages/linux-amd-staging-git/ [[User:Sesese9|Sesese9]] ([[User talk:Sesese9|talk]]) 00:40, 10 July 2017 (UTC)<br />
<br />
== Moving "Enable GPU display scaling" to xrandr ==<br />
<br />
I thought about it to put this under xrandr directly, but for example for my integrated Intel 6th gen GPU I don't have the "scaling mode" option, and I don't know about NVIDIA.<br />
And even if the "scaling mode" option exists for other vendors and or cards, I don't know if the possible values for "scaling mode" are the same everywhere, as far as I remember there are not.<br />
That was the reason I did put it here. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 16:01, 18 February 2018 (UTC)<br />
:Ok, looks like [[Intel_graphics#Setting_scaling_mode|Intel]] uses the same settings, but it's only available for internal (LVDS, eDP) ports, but at least according to https://bugs.freedesktop.org/show_bug.cgi?id=90989 it also uses "None, Full, Center, Full aspect".<br />
:I know that radeonsi uses the same commands, but still don't know about NVIDIA.<br />
:But yea, now I also think that it should be moved and the [[Intel_graphics#Setting_scaling_mode|Intel]] section should be merged into it. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 18:37, 18 February 2018 (UTC)<br />
<br />
== Update on kernel parameters ==<br />
<br />
this part does not seems to be required on 4.17:<br />
<br />
>> Also, since kernel 4.13, adding the amdgpu.si_support=1 radeon.si_support=0 or amdgpu.cik_support=1 radeon.cik_support=0 kernel parameter is required. Otherwise, AMDGPU will not start and you will end up with either radeon being used instead or the display being frozen during the boot.<br />
<br />
{{unsigned|12:10, 22 April 2018|Lesto}}<br />
<br />
== Renaming AMDGPU-PRO to Radeon Software for Linux? ==<br />
<br />
So AMD basically changed the name of their AMDGPU-PRO driver as simply Radeon™ Software for Linux, see [https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx 17.40], [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx 18.10] and [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-18.20-Early-Preview-Release-Notes.aspx 18.20 preview] release notes. With that in mind, should the names on wiki be slowly changed, or the alternative name/note being added somewhere? I'm not sure if AMDGPU-PRO is still used by AMD officially and whether AMDGPU (without PRO) term is being used as well, but the name sure definitely stuck among community – any ideas? [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:33, 11 May 2018 (UTC)<br />
<br />
EDIT: Probably worth noticing is the similar situation happened between [[Fglrx]] and [[AMD Catalyst]] naming back then. [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:38, 11 May 2018 (UTC)<br />
<br />
== AMDGPU PRO downgrade versions ==<br />
There is information in page that "A downgrade of the linux (4.9) and Xorg (1.18) packages is required to use AMDGPU PRO 17.10." Is it still true? Did not AMDGPU PRO driver got updated? Afaik, ubuntu provides this proprietary driver, but has more recent kernel.<br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 12:48, 16 November 2018 (UTC)<br />
<br />
: Currently, Yes. The [https://aur.archlinux.org/packages/amdgpu-pro/ AMDGPU-Pro AUR] has not been updated in some time and (as of this post) is still at version 17.40. [[User:Taurolyon|<span style="text-shadow: 0.1em 0.1em 0.09em #FFFF00; font-family:times; font-size:14px; FONT-WEIGHT: bold; color: #FF7C00; background-color:transparent">''"Tauro"''</span>]] ([[Special:Contributions/Taurolyon|Contributions]] <span style{{=}}"color: #FF7F00;">&bull;</span> [[User_talk:Taurolyon|Message]]) 20:40, 29 December 2018 (UTC)<br />
<br />
== Vulkan support for FreeSync on Mesa 19.1 ==<br />
<br />
Mesa 19.1 recently came out and it supposedly has FreeSync support for Vulkan. I can't test it right now but I was running the freesync patch before 19.1 and it worked for me. Anyone can confirm it is working on 19.1 and edit the FreeSync part about "only OpenGL is supported"<br />
<br />
[[User:Igo95862|Igo95862]] ([[User talk:Igo95862|talk]]) 08:56, 5 July 2019 (UTC)<br />
<br />
== Move Variable Refresh Rate to New Page ==<br />
<br />
NVIDIA has supported freesync for a while now as well as having their own variable refresh rate technology (Gsync). I think it would make more sense to make a separate page for it.<br />
[[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 17:00, 2 August 2019 (UTC)<br />
<br />
:I have started writing the article on my [[User:Cknight70##Variable_refresh_rate|personal page]]. Please feel free to make edits, I will create the new page in a couple of days if there are no objections. [[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 18:58, 3 August 2019 (UTC)</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578925User:Cknight702019-08-03T18:51:57Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
= Testing page =<br />
Everything below here is in construction<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
<br />
<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) also reffered to as Adaptive Sync allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
= Overview =<br />
There are multiple implementations of VRR:<br />
<br />
*FreeSync is AMD's implementation of VESA's VRR standard, and the phrases are often used interchangeably. FreeSync branded monitors should be compatible with all VESA compatible drivers.<br />
<br />
*Gsync is NVIDIA's proprietary hardware and software implementation of VRR.<br />
<br />
*Intel plans on implementing VESA's standard in their upcoming 10th Gen [https://www.reddit.com/r/Amd/comments/9x6cp5/even_intel_is_supporting_adaptive_sync_freesync/]<br />
<br />
'''VRR compatibility and implimentations'''<br />
{| class="wikitable<br />
|-<br />
!| Driver !! VESA !! Gsync<br />
|-<br />
| {{C|[[AMDGPU]]}} || {{G|FreeSync}} || {{No|}}<br />
|-<br />
| {{C|[[Intel]]}} || {{Y|Planned}} || {{No|}}<br />
|-<br />
| {{C|[[Nouveau]]}} || {{R|Not Supported}} || {{R|Not Supported}}<br />
|-<br />
| {{C|[[NVIDIA]]}} || {{G|Gsync Compatible}} || {{G|Gsync}}<br />
|}<br />
= Configuration =<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
== Tips and Tricks ==<br />
=== Remove applications from Blacklist ===<br />
Mesa has a list of blacklisted applications to avoid unexpected behavior, you can edit this blacklist here<br />
<br />
/usr/share/drirc.d/00-mesa-defaults.conf<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578922User:Cknight702019-08-03T16:05:09Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578921User:Cknight702019-08-03T16:04:08Z<p>Cknight70: /* Editing the EDID file */</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/][https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323]<br />
<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578920User:Cknight702019-08-03T16:03:02Z<p>Cknight70: Overclocking start</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range.<br />
{{Warning|Overclocking your monitor may cause it harm. Proceed at your own risk.}}<br />
==== Editing the EDID file ====<br />
External Display Identification Data (EDID) stores driver information about your monitor. By default, this file is sent by your monitor and read on connect. You will need to extract this file using something like {{Pkg|read-edid}} or {{Pkg|nvidia-settings}}<br />
<br />
{{Note|I need to find EDID editing software for Linux}}<br />
<br />
Make a Xorg [[Xorg#Using_.conf_files|.conf]] file for your monitor and add a path to the custom EDID file you have edited.<br />
See [[xrandr]] to find find out the other information about your monitor<br />
{{hc|/etc/X11/xorg.conf.d/10-monitor.conf|2=<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "nvidia" # e.g. Radeon, nvidia<br />
Monitor "DP1"<br />
Option “CustomEDID” “MONITOR:/home/USER/Desktop/modified-edid.bin”<br />
EndSection<br />
}}<br />
<br />
Souces for doing this on Windows: [https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/][https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/][https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
Process of overclocking on Linux: [https://forum.level1techs.com/t/overclock-your-monitor-with-nvidia-windows-and-linux/109323] <br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578918User:Cknight702019-08-03T14:16:56Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range<br />
Souces for doing this on Windows: <br />
[https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
[https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
[https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578863User:Cknight702019-08-02T19:41:06Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on Intel ===<br />
{{Note|This section needs info}}<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range<br />
Souces for doing this on Windows: <br />
[https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
[https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
[https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578862User:Cknight702019-08-02T19:38:31Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on Intel ===<br />
{{Note|This section needs info}}<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Change Freesync range of monitor ==<br />
Freesync monitors usually have a limited range for VRR that are much lower than their max refresh rate. It should be possible to overclock the monitor to change the Freesync range<br />
Souces for Windows doing this: <br />
[https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
[https://wccftech.com/amd-freesync-hack-expands-refresh-rate-range/]<br />
[https://www.reddit.com/r/Amd/comments/5iux1q/updated_tutorial_on_increasing_and_decreasing/]<br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578861User:Cknight702019-08-02T19:22:45Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}<br />
<br />
= Variable refresh rate =<br />
<br />
[https://en.wikipedia.org/wiki/Variable_refresh_rate Variable Refresh Rate] (VRR) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering).<br />
<br />
=== Enable on AMDGPU ===<br />
==== Via xorg.conf ====<br />
Option "VariableRefresh" "true"<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
=== Enable on Intel ===<br />
{{Note|This section needs info}}<br />
=== Enable on NVIDIA ===<br />
==== Via xorg.conf ====<br />
{{Note|This section needs info}}<br />
==== Via nvidia-settings ====<br />
*In {{Pkg|nvidia-settings}} go to the "X Server Display Configuration" page, then under the Advanced button is the option to "Allow G-SYNC on monitor not validated as G-SYNC Compatible". Then click apply<br />
* Now, under OpenGL settings, check "Allow Gsync/Gsync Compatible" <br />
== Limitations ==<br />
{{Note|This information needs to be further verified most of it has been found from web searches}}<br />
* The monitor must be plugged in via display port. HDMI is not supported and thunderbolt is not guaranteed to work.<br />
* Only one monitor may be used at a time with Gsync and possibly Freesync<br />
* Some compositors may need to be disabled before the OpenGl/Vulkan program is started</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578848User:Cknight702019-08-02T17:27:07Z<p>Cknight70: </p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|Three}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}</div>Cknight70https://wiki.archlinux.org/index.php?title=User:Cknight70&diff=578847User:Cknight702019-08-02T17:26:17Z<p>Cknight70: Hello World</p>
<hr />
<div>== Cknight70's page ==<br />
<br />
{| class="wikitable"<br />
|-<br />
! colspan=2 | Information about Cknight70<br />
|-<br />
| {{C|Arch Linux User}} || {{C|Since January 2018}}<br />
|-<br />
| {{C|Desktop Environment}} || {{C|KDE}}<br />
|-<br />
| {{C|Computers with Linux}} || {{C|3}}<br />
|}<br />
<br />
=== Testing page ===<br />
{{Note|This is under construction and I have no idea what I'm doing!}}</div>Cknight70https://wiki.archlinux.org/index.php?title=AMDGPU&diff=578841AMDGPU2019-08-02T17:04:40Z<p>Cknight70: typo</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[de:AMDGPU]]<br />
[[ja:AMDGPU]]<br />
[[ru:AMDGPU]]<br />
{{Related articles start}}<br />
{{Related|AMD Catalyst}}<br />
{{Related|ATI}}<br />
{{Related|Xorg}}<br />
{{Related|Vulkan}}<br />
{{Related articles end}}<br />
<br />
'''amdgpu''' is the open source graphics driver for the latest AMD Radeon graphics cards.<br />
<br />
== Selecting the right driver ==<br />
<br />
Depending on the card you have, find the right driver in [[Xorg#AMD]]. This page has instructions for '''AMDGPU''' and '''AMDGPU PRO'''.<br />
<br />
At the moment there is support for [https://www.x.org/wiki/RadeonFeature/ Volcanic Islands (VI)] (and newer) and experimental support for [https://www.phoronix.com/scan.php?page=news_item&px=AMD-AMDGPU-Released Sea Islands (CI)] and [https://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-SI-Experimental-Code Southern Islands (SI)] cards. AMD has no plans to support pre-GCN GPUs.<br />
<br />
Owners of unsupported GPUs may use the open source [[radeon]] or the [[AMD Catalyst]] driver instead.<br />
<br />
== Installation ==<br />
<br />
{{Note|If coming from the proprietary Catalyst driver, see [[AMD Catalyst#Uninstallation]] first.}}<br />
<br />
[[Install]] the {{Pkg|mesa}} package, which provides the DRI driver for 3D acceleration.<br />
<br />
* For 32-bit application support, also install the {{Pkg|lib32-mesa}} package from the [[multilib]] repostory.<br />
* For the DDX driver (which provides 2D acceleration in [[Xorg]]), install the {{Pkg|xf86-video-amdgpu}} package.<br />
* For [[Vulkan]] support, install the {{Pkg|vulkan-radeon}} package. Optionally install the {{Pkg|lib32-vulkan-radeon}} package for 32-bit application support.<br />
<br />
Support for [[#Video acceleration|accelerated video decoding]] is provided by {{Pkg|libva-mesa-driver}} and {{Pkg|lib32-libva-mesa-driver}} for VA-API and {{Pkg|mesa-vdpau}} and {{Pkg|lib32-mesa-vdpau}} packages for VDPAU.<br />
<br />
=== Enable Southern Islands (SI) and Sea Islands (CIK) support ===<br />
<br />
The {{Pkg|linux}} package enables AMDGPU support for cards of the Southern Islands (SI) and Sea Islands (CIK). When building or compiling a [[kernel]], {{ic|1=CONFIG_DRM_AMDGPU_SI=Y}} and/or {{ic|1=CONFIG_DRM_AMDGPU_CIK=Y}} should be be set in the config.<br />
<br />
==== Specify the correct module order ====<br />
<br />
Even when AMDGPU support for SI/CIK has been enabled by the kernel, the [[radeon]] driver may be loaded before the {{ic|amdgpu}} driver.<br />
<br />
Make sure {{ic|amdgpu}} has been set as first module in the [[Mkinitcpio#MODULES]] array, e.g. {{ic|1=MODULES=(amdgpu radeon)}}.<br />
<br />
==== Set required module parameters ====<br />
<br />
The [[module parameters]] of both {{ic|amdgpu}} and {{ic|radeon}} modules are {{ic|1=cik_support=}} and {{ic|1=si_support=}}. <br />
<br />
They need to be set as kernel parameters or in a ''modprobe'' configuration file, and depend on the cards GCN version.<br />
<br />
{{Tip|[[dmesg]] may indicate the correct kernel parameter to use: {{ic|1=[..] amdgpu 0000:01:00.0: Use radeon.cik_support=0 amdgpu.cik_support=1 to override}}.}}<br />
<br />
===== Set module parameters in kernel command line =====<br />
<br />
Set one of the following [[kernel parameters]]:<br />
<br />
* Southern Islands (SI): {{ic|1=radeon.si_support=0 amdgpu.si_support=1}}<br />
* Sea Islands (CIK): {{ic|1=radeon.cik_support=0 amdgpu.cik_support=1}}<br />
<br />
===== Set module parameters in modprobe.d =====<br />
<br />
Create the configuration [[modprobe]] files in {{ic|/etc/modprobe.d/}}, see {{man|5|modprobe.d}} for syntax details.<br />
<br />
For Southern Islands (SI) use option {{ic|1=si_support=1}}, for Sea Islands (CIK) use option {{ic|1=cik_support=1}}, e.g.:<br />
<br />
{{hc|/etc/modprobe.d/amdgpu.conf|2=<br />
options amdgpu si_support=1<br />
options amdgpu cik_support=0<br />
}}<br />
<br />
{{hc|/etc/modprobe.d/radeon.conf|2=<br />
options radeon si_support=0<br />
options radeon cik_support=0<br />
}}<br />
<br />
Make sure {{ic|modconf}} is in the the {{ic|HOOKS}} array in {{ic|/etc/mkinitcpio.conf}} and [[regenerate the initramfs]].<br />
<br />
=== AMDGPU PRO ===<br />
<br />
AMD provides a proprietary, binary userland driver called ''AMDGPU PRO'', which works on top of the open-source AMDGPU kernel driver.<br />
<br />
From [http://www.phoronix.com/vr.php?view=27266 Radeon Software 18.50 vs Mesa 19 benchmarks] article: When it comes to OpenGL games, the RadeonSI Gallium3D driver simply dominates the proprietary AMD OpenGL driver. About the only advantage to the closed-source AMD OpenGL driver is its support for GL 4.6 while RadeonSI is still limited to GL 4.5 until its SPIR-V ingestion support is completed.<br />
<br />
Install the {{AUR|amdgpu-pro-libgl}}. Optionally install the {{AUR|lib32-amdgpu-pro-libgl}} package for 32-bit application support.<br />
<br />
== Loading ==<br />
<br />
The {{ic|amdgpu}} kernel module should load fine automatically on system boot.<br />
<br />
If it does not happen, then:<br />
<br />
* Make sure to [[#Enable Southern Islands (SI) and Sea Islands (CIK) support]] when needed.<br />
* Make sure you have the latest {{Pkg|linux-firmware}} package installed. This driver requires the latest firmware for each model to successfully boot.<br />
* Make sure you do '''not''' have {{ic|nomodeset}} or {{ic|1=vga=}} as a [[kernel parameter]], since {{ic|amdgpu}} requires [[KMS]].<br />
* Check that you have not disabled {{ic|amdgpu}} by using any [[Kernel_modules#Blacklisting|kernel module blacklisting]].<br />
<br />
=== Enable early KMS ===<br />
See [[Kernel mode setting#Early KMS start]].<br />
<br />
== Xorg configuration ==<br />
<br />
[[Xorg]] will automatically load the driver and it will use your monitor's EDID to set the native resolution. Configuration is only required for tuning the driver.<br />
<br />
If you want manual configuration, create {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}}, and add the following:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/20-amdgpu.conf|2=<br />
Section "Device"<br />
Identifier "AMD"<br />
Driver "amdgpu"<br />
EndSection<br />
}}<br />
<br />
Using this section, you can enable features and tweak the driver settings, see {{man|4|amdgpu}} first before setting driver options.<br />
<br />
=== Tear Free Rendering ===<br />
''TearFree'' controls tearing prevention using the hardware page flipping mechanism. If this option is set, the default value of the property is 'on' or 'off' accordingly. If this option isn't set, the default value of the property is auto, which means that TearFree is on for rotated outputs, outputs with RandR transforms applied and for RandR 1.4 slave outputs, otherwise off:<br />
<br />
Option "TearFree" "true"<br />
<br />
=== DRI level ===<br />
<br />
''DRI'' sets the maximum level of DRI to enable. Valid values are ''2'' for DRI2 or ''3'' for DRI3. The default is ''3'' for DRI3 if the [[Xorg]] version is >= 1.18.3, otherwise DRI2 is used:<br />
<br />
Option "DRI" "3"<br />
<br />
=== Variable refresh rate ===<br />
{{Move|Variable refresh rate|NVIDIA supports Freesync now and Gsync is another existing variable refresh rate technology.|section=Move Variable Refresh Rate to New Page}}<br />
Variable refresh rate (also known as FreeSync) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering):<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
{{Note|<br />
* The monitor and GPU need to support FreeSync and be connected over DisplayPort. HDMI is not supported.<br />
* Only OpenGL applications can be adaptively refreshed. RADV [[Vulkan]] does not (yet) support FreeSync.<br />
* Mesa has blacklisted various desktop compositors, web browsers, and media players from enabling FreeSync support.}}<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
== Features ==<br />
=== Video acceleration ===<br />
<br />
See [[Hardware video acceleration]].<br />
<br />
=== Overclocking ===<br />
<br />
Since Linux 4.17, it is possible to adjust clocks and voltages of the graphics card via {{Ic|1=/sys/class/drm/card0/device/pp_od_clk_voltage}}. It is however required to unlock access to it in sysfs by appending the boot parameter {{Ic|1=amdgpu.ppfeaturemask=0xffffffff}}.<br />
<br />
{{Note|In sysfs, paths like {{Ic|1=/sys/class/drm/...}} are just symlinks and may change between reboots. Persistent locations can be found in {{Ic|1=/sys/devices/}}, e.g. {{Ic|1=/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/}}. Adjust the commands accordingly for a reliable result.}}<br />
<br />
To set the GPU clock for the maximum pstate 7 on e.g. a Polaris GPU to 1209MHz and 900mV voltage, run:<br />
# echo "s 7 1209 900" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
The same procedure can be applied to the VRAM, e.g. maximum pstate 2 on Polaris 5xx series cards:<br />
# echo "m 2 1850 850" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
{{Warning|1=Double check the entered values, as mistakes might instantly cause fatal hardware damage!}}<br />
To apply, run<br />
# echo "c" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
To check if it worked out, read out clocks and voltage under 3D load:<br />
# watch -n 0.5 cat /sys/kernel/debug/dri/0/amdgpu_pm_info<br />
You can reset to the default values using this:<br />
# echo "r" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
<br />
It is also possible to forbid the driver so switch to certain pstates, e.g. to workaround problems with deep powersaving pstates like flickering artifacts or stutter. To force the highest VRAM pstate on a Polaris RX 5xx card, while still allowing the GPU itself to run with lower clocks, run:<br />
# echo "manual" > /sys/class/drm/card0/device/power_dpm_force_performance_level<br />
# echo "2" > /sys/class/drm/card0/device/pp_dpm_mclk<br />
Allow only the three highest GPU pstates:<br />
# echo "5 6 7" > /sys/class/drm/card0/device/pp_dpm_sclk<br />
<br />
To set the allowed maximum power consumption of the GPU to e.g. 50 Watts, run<br />
# echo 50000000 > /sys/class/drm/card0/device/hwmon/hwmon0/power1_cap<br />
Until Linux kernel 4.20, it will only be possible to decrease the value, not increase.<br />
<br />
{{Note|The above procedure was tested with a Polaris RX 560 card. There may be different behavior or bugs with different GPUs.}}<br />
<br />
=== Enable GPU display scaling ===<br />
<br />
{{Move|xrandr|Not specific to AMDGPU.|section=Moving "Enable GPU display scaling" to xrandr}}<br />
<br />
To avoid the usage of the scaler which is built in the display, and use the GPU own scaler instead, when not using the native resolution of the monitor, execute:<br />
$ xrandr --output "<output>" --set "scaling mode" "<scaling mode>"<br />
Possible values for {{ic|"scaling mode"}} are: {{ic|None, Full, Center, Full aspect}}<br />
<br />
* To show the available outputs and settings, execute:<br />
$ xrandr --prop<br />
<br />
* To set {{ic|1=scaling mode = Full aspect}} for just every available output, execute:<br />
$ for output in $(xrandr --prop | grep -E -o -i "^[A-Z\-]+-[0-9]+"); do xrandr --output "$output" --set "scaling mode" "Full aspect"; done<br />
<br />
== Troubleshooting ==<br />
<br />
=== Xorg or applications won't start ===<br />
<br />
* "(EE) AMDGPU(0): [DRI2] DRI2SwapBuffers: drawable has no back or front?" error after opening glxgears, can open Xorg server but OpenGL apps crash.<br />
* "(EE) AMDGPU(0): Given depth (32) is not supported by amdgpu driver" error, Xorg won't start.<br />
<br />
Setting the screen's depth under Xorg to 16 or 32 will cause problems/crash. To avoid that, you should use a standard screen depth of 24 by adding this to your "screen" section:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/10-screen.conf|<br />
Section "Screen"<br />
Identifier "Screen"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Depth 24<br />
EndSubSection<br />
EndSection<br />
}}<br />
<br />
=== Screen artifacts and frequency problem ===<br />
<br />
[[ATI#Dynamic power management|Dynamic power management]] may cause screen artifacts to appear when displaying to monitors at higher frequencies (120+Hz) due to issues in the way GPU clock speeds are managed[https://bugs.freedesktop.org/show_bug.cgi?id=96868][https://bugs.freedesktop.org/show_bug.cgi?id=102646].<br />
<br />
A workaround [https://bugs.freedesktop.org/show_bug.cgi?id=96868#c13] is saving {{ic|high}} or {{ic|low}} in {{ic|/sys/class/drm/card0/device/power_dpm_force_performance_level}}.<br />
<br />
There is also a GUI solution [https://github.com/marazmista/radeon-profile] where you can manage the "power_dpm" with {{aur|radeon-profile-git}} and {{aur|radeon-profile-daemon-git}}.<br />
<br />
=== R9 390 series Poor Performance and/or Instability ===<br />
<br />
If you experience issues [https://bugs.freedesktop.org/show_bug.cgi?id=91880] with a AMD R9 390 series graphics card, set {{ic|1=radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1 amdgpu.dpm=1 amdgpu.dc=1}} as [[kernel parameters]] to force the use of amdgpu driver instead of radeon.<br />
<br />
If it still does not work, try disabling DPM, by setting the [[kernel parameters]] to: {{ic|1=radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1}}<br />
<br />
=== Freezes with "[drm] IP block:gmc_v8_0 is hung!" kernel error ===<br />
<br />
If you experience freezes and kernel crashes during a GPU intensive task with the kernel error " [drm] IP block:gmc_v8_0 is hung!" [https://bugs.freedesktop.org/show_bug.cgi?id=102322], a workaround is to set {{ic|1=amdgpu.vm_update_mode=3}} as [[kernel parameters]] to force the GPUVM page tables update to be done using the CPU. Downsides are listed here [https://bugs.freedesktop.org/show_bug.cgi?id=102322#c15].<br />
<br />
=== Cursor corruption ===<br />
<br />
If you experience issues with the mouse cursor sometimes not rendering properly, set {{ic|Option "SWCursor" "True"}} in the {{ic|"Device"}} section of the {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}} configuration file.<br />
<br />
If you are using {{ic|xrandr}} for scaling and the cursor is flickering or disappearing, you may be able to fix it by setting the {{ic|TearFree}} property: {{ic|xrandr --output HDMI-A-0 --set TearFree on}}.</div>Cknight70https://wiki.archlinux.org/index.php?title=AMDGPU&diff=578840AMDGPU2019-08-02T17:03:57Z<p>Cknight70: Move Variable refresh rate proposal</p>
<hr />
<div>[[Category:Graphics]]<br />
[[Category:X server]]<br />
[[de:AMDGPU]]<br />
[[ja:AMDGPU]]<br />
[[ru:AMDGPU]]<br />
{{Related articles start}}<br />
{{Related|AMD Catalyst}}<br />
{{Related|ATI}}<br />
{{Related|Xorg}}<br />
{{Related|Vulkan}}<br />
{{Related articles end}}<br />
<br />
'''amdgpu''' is the open source graphics driver for the latest AMD Radeon graphics cards.<br />
<br />
== Selecting the right driver ==<br />
<br />
Depending on the card you have, find the right driver in [[Xorg#AMD]]. This page has instructions for '''AMDGPU''' and '''AMDGPU PRO'''.<br />
<br />
At the moment there is support for [https://www.x.org/wiki/RadeonFeature/ Volcanic Islands (VI)] (and newer) and experimental support for [https://www.phoronix.com/scan.php?page=news_item&px=AMD-AMDGPU-Released Sea Islands (CI)] and [https://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-SI-Experimental-Code Southern Islands (SI)] cards. AMD has no plans to support pre-GCN GPUs.<br />
<br />
Owners of unsupported GPUs may use the open source [[radeon]] or the [[AMD Catalyst]] driver instead.<br />
<br />
== Installation ==<br />
<br />
{{Note|If coming from the proprietary Catalyst driver, see [[AMD Catalyst#Uninstallation]] first.}}<br />
<br />
[[Install]] the {{Pkg|mesa}} package, which provides the DRI driver for 3D acceleration.<br />
<br />
* For 32-bit application support, also install the {{Pkg|lib32-mesa}} package from the [[multilib]] repostory.<br />
* For the DDX driver (which provides 2D acceleration in [[Xorg]]), install the {{Pkg|xf86-video-amdgpu}} package.<br />
* For [[Vulkan]] support, install the {{Pkg|vulkan-radeon}} package. Optionally install the {{Pkg|lib32-vulkan-radeon}} package for 32-bit application support.<br />
<br />
Support for [[#Video acceleration|accelerated video decoding]] is provided by {{Pkg|libva-mesa-driver}} and {{Pkg|lib32-libva-mesa-driver}} for VA-API and {{Pkg|mesa-vdpau}} and {{Pkg|lib32-mesa-vdpau}} packages for VDPAU.<br />
<br />
=== Enable Southern Islands (SI) and Sea Islands (CIK) support ===<br />
<br />
The {{Pkg|linux}} package enables AMDGPU support for cards of the Southern Islands (SI) and Sea Islands (CIK). When building or compiling a [[kernel]], {{ic|1=CONFIG_DRM_AMDGPU_SI=Y}} and/or {{ic|1=CONFIG_DRM_AMDGPU_CIK=Y}} should be be set in the config.<br />
<br />
==== Specify the correct module order ====<br />
<br />
Even when AMDGPU support for SI/CIK has been enabled by the kernel, the [[radeon]] driver may be loaded before the {{ic|amdgpu}} driver.<br />
<br />
Make sure {{ic|amdgpu}} has been set as first module in the [[Mkinitcpio#MODULES]] array, e.g. {{ic|1=MODULES=(amdgpu radeon)}}.<br />
<br />
==== Set required module parameters ====<br />
<br />
The [[module parameters]] of both {{ic|amdgpu}} and {{ic|radeon}} modules are {{ic|1=cik_support=}} and {{ic|1=si_support=}}. <br />
<br />
They need to be set as kernel parameters or in a ''modprobe'' configuration file, and depend on the cards GCN version.<br />
<br />
{{Tip|[[dmesg]] may indicate the correct kernel parameter to use: {{ic|1=[..] amdgpu 0000:01:00.0: Use radeon.cik_support=0 amdgpu.cik_support=1 to override}}.}}<br />
<br />
===== Set module parameters in kernel command line =====<br />
<br />
Set one of the following [[kernel parameters]]:<br />
<br />
* Southern Islands (SI): {{ic|1=radeon.si_support=0 amdgpu.si_support=1}}<br />
* Sea Islands (CIK): {{ic|1=radeon.cik_support=0 amdgpu.cik_support=1}}<br />
<br />
===== Set module parameters in modprobe.d =====<br />
<br />
Create the configuration [[modprobe]] files in {{ic|/etc/modprobe.d/}}, see {{man|5|modprobe.d}} for syntax details.<br />
<br />
For Southern Islands (SI) use option {{ic|1=si_support=1}}, for Sea Islands (CIK) use option {{ic|1=cik_support=1}}, e.g.:<br />
<br />
{{hc|/etc/modprobe.d/amdgpu.conf|2=<br />
options amdgpu si_support=1<br />
options amdgpu cik_support=0<br />
}}<br />
<br />
{{hc|/etc/modprobe.d/radeon.conf|2=<br />
options radeon si_support=0<br />
options radeon cik_support=0<br />
}}<br />
<br />
Make sure {{ic|modconf}} is in the the {{ic|HOOKS}} array in {{ic|/etc/mkinitcpio.conf}} and [[regenerate the initramfs]].<br />
<br />
=== AMDGPU PRO ===<br />
<br />
AMD provides a proprietary, binary userland driver called ''AMDGPU PRO'', which works on top of the open-source AMDGPU kernel driver.<br />
<br />
From [http://www.phoronix.com/vr.php?view=27266 Radeon Software 18.50 vs Mesa 19 benchmarks] article: When it comes to OpenGL games, the RadeonSI Gallium3D driver simply dominates the proprietary AMD OpenGL driver. About the only advantage to the closed-source AMD OpenGL driver is its support for GL 4.6 while RadeonSI is still limited to GL 4.5 until its SPIR-V ingestion support is completed.<br />
<br />
Install the {{AUR|amdgpu-pro-libgl}}. Optionally install the {{AUR|lib32-amdgpu-pro-libgl}} package for 32-bit application support.<br />
<br />
== Loading ==<br />
<br />
The {{ic|amdgpu}} kernel module should load fine automatically on system boot.<br />
<br />
If it does not happen, then:<br />
<br />
* Make sure to [[#Enable Southern Islands (SI) and Sea Islands (CIK) support]] when needed.<br />
* Make sure you have the latest {{Pkg|linux-firmware}} package installed. This driver requires the latest firmware for each model to successfully boot.<br />
* Make sure you do '''not''' have {{ic|nomodeset}} or {{ic|1=vga=}} as a [[kernel parameter]], since {{ic|amdgpu}} requires [[KMS]].<br />
* Check that you have not disabled {{ic|amdgpu}} by using any [[Kernel_modules#Blacklisting|kernel module blacklisting]].<br />
<br />
=== Enable early KMS ===<br />
See [[Kernel mode setting#Early KMS start]].<br />
<br />
== Xorg configuration ==<br />
<br />
[[Xorg]] will automatically load the driver and it will use your monitor's EDID to set the native resolution. Configuration is only required for tuning the driver.<br />
<br />
If you want manual configuration, create {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}}, and add the following:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/20-amdgpu.conf|2=<br />
Section "Device"<br />
Identifier "AMD"<br />
Driver "amdgpu"<br />
EndSection<br />
}}<br />
<br />
Using this section, you can enable features and tweak the driver settings, see {{man|4|amdgpu}} first before setting driver options.<br />
<br />
=== Tear Free Rendering ===<br />
''TearFree'' controls tearing prevention using the hardware page flipping mechanism. If this option is set, the default value of the property is 'on' or 'off' accordingly. If this option isn't set, the default value of the property is auto, which means that TearFree is on for rotated outputs, outputs with RandR transforms applied and for RandR 1.4 slave outputs, otherwise off:<br />
<br />
Option "TearFree" "true"<br />
<br />
=== DRI level ===<br />
<br />
''DRI'' sets the maximum level of DRI to enable. Valid values are ''2'' for DRI2 or ''3'' for DRI3. The default is ''3'' for DRI3 if the [[Xorg]] version is >= 1.18.3, otherwise DRI2 is used:<br />
<br />
Option "DRI" "3"<br />
<br />
=== Variable refresh rate ===<br />
{{Move|Target Variable refresh rate|NVIDIA supports Freesync now and Gsync is another existing variable refresh rate technology.|section=Move Variable Refresh Rate to New Page}}<br />
Variable refresh rate (also known as FreeSync) allows the monitor to adjust its refresh rate to the output signal. This allows for games to eliminate screen tearing with less of the usual downsides of vsync (such as stuttering):<br />
<br />
Option "VariableRefresh" "true"<br />
<br />
{{Note|<br />
* The monitor and GPU need to support FreeSync and be connected over DisplayPort. HDMI is not supported.<br />
* Only OpenGL applications can be adaptively refreshed. RADV [[Vulkan]] does not (yet) support FreeSync.<br />
* Mesa has blacklisted various desktop compositors, web browsers, and media players from enabling FreeSync support.}}<br />
<br />
Verify ''vrr_capable'' is set to ''1'' using [[xrandr]]:<br />
<br />
{{hc|$ xrandr --props|<br />
vrr_capable: 1<br />
range: (0, 1)<br />
}}<br />
<br />
== Features ==<br />
=== Video acceleration ===<br />
<br />
See [[Hardware video acceleration]].<br />
<br />
=== Overclocking ===<br />
<br />
Since Linux 4.17, it is possible to adjust clocks and voltages of the graphics card via {{Ic|1=/sys/class/drm/card0/device/pp_od_clk_voltage}}. It is however required to unlock access to it in sysfs by appending the boot parameter {{Ic|1=amdgpu.ppfeaturemask=0xffffffff}}.<br />
<br />
{{Note|In sysfs, paths like {{Ic|1=/sys/class/drm/...}} are just symlinks and may change between reboots. Persistent locations can be found in {{Ic|1=/sys/devices/}}, e.g. {{Ic|1=/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/}}. Adjust the commands accordingly for a reliable result.}}<br />
<br />
To set the GPU clock for the maximum pstate 7 on e.g. a Polaris GPU to 1209MHz and 900mV voltage, run:<br />
# echo "s 7 1209 900" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
The same procedure can be applied to the VRAM, e.g. maximum pstate 2 on Polaris 5xx series cards:<br />
# echo "m 2 1850 850" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
{{Warning|1=Double check the entered values, as mistakes might instantly cause fatal hardware damage!}}<br />
To apply, run<br />
# echo "c" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
To check if it worked out, read out clocks and voltage under 3D load:<br />
# watch -n 0.5 cat /sys/kernel/debug/dri/0/amdgpu_pm_info<br />
You can reset to the default values using this:<br />
# echo "r" > /sys/class/drm/card0/device/pp_od_clk_voltage<br />
<br />
It is also possible to forbid the driver so switch to certain pstates, e.g. to workaround problems with deep powersaving pstates like flickering artifacts or stutter. To force the highest VRAM pstate on a Polaris RX 5xx card, while still allowing the GPU itself to run with lower clocks, run:<br />
# echo "manual" > /sys/class/drm/card0/device/power_dpm_force_performance_level<br />
# echo "2" > /sys/class/drm/card0/device/pp_dpm_mclk<br />
Allow only the three highest GPU pstates:<br />
# echo "5 6 7" > /sys/class/drm/card0/device/pp_dpm_sclk<br />
<br />
To set the allowed maximum power consumption of the GPU to e.g. 50 Watts, run<br />
# echo 50000000 > /sys/class/drm/card0/device/hwmon/hwmon0/power1_cap<br />
Until Linux kernel 4.20, it will only be possible to decrease the value, not increase.<br />
<br />
{{Note|The above procedure was tested with a Polaris RX 560 card. There may be different behavior or bugs with different GPUs.}}<br />
<br />
=== Enable GPU display scaling ===<br />
<br />
{{Move|xrandr|Not specific to AMDGPU.|section=Moving "Enable GPU display scaling" to xrandr}}<br />
<br />
To avoid the usage of the scaler which is built in the display, and use the GPU own scaler instead, when not using the native resolution of the monitor, execute:<br />
$ xrandr --output "<output>" --set "scaling mode" "<scaling mode>"<br />
Possible values for {{ic|"scaling mode"}} are: {{ic|None, Full, Center, Full aspect}}<br />
<br />
* To show the available outputs and settings, execute:<br />
$ xrandr --prop<br />
<br />
* To set {{ic|1=scaling mode = Full aspect}} for just every available output, execute:<br />
$ for output in $(xrandr --prop | grep -E -o -i "^[A-Z\-]+-[0-9]+"); do xrandr --output "$output" --set "scaling mode" "Full aspect"; done<br />
<br />
== Troubleshooting ==<br />
<br />
=== Xorg or applications won't start ===<br />
<br />
* "(EE) AMDGPU(0): [DRI2] DRI2SwapBuffers: drawable has no back or front?" error after opening glxgears, can open Xorg server but OpenGL apps crash.<br />
* "(EE) AMDGPU(0): Given depth (32) is not supported by amdgpu driver" error, Xorg won't start.<br />
<br />
Setting the screen's depth under Xorg to 16 or 32 will cause problems/crash. To avoid that, you should use a standard screen depth of 24 by adding this to your "screen" section:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/10-screen.conf|<br />
Section "Screen"<br />
Identifier "Screen"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Depth 24<br />
EndSubSection<br />
EndSection<br />
}}<br />
<br />
=== Screen artifacts and frequency problem ===<br />
<br />
[[ATI#Dynamic power management|Dynamic power management]] may cause screen artifacts to appear when displaying to monitors at higher frequencies (120+Hz) due to issues in the way GPU clock speeds are managed[https://bugs.freedesktop.org/show_bug.cgi?id=96868][https://bugs.freedesktop.org/show_bug.cgi?id=102646].<br />
<br />
A workaround [https://bugs.freedesktop.org/show_bug.cgi?id=96868#c13] is saving {{ic|high}} or {{ic|low}} in {{ic|/sys/class/drm/card0/device/power_dpm_force_performance_level}}.<br />
<br />
There is also a GUI solution [https://github.com/marazmista/radeon-profile] where you can manage the "power_dpm" with {{aur|radeon-profile-git}} and {{aur|radeon-profile-daemon-git}}.<br />
<br />
=== R9 390 series Poor Performance and/or Instability ===<br />
<br />
If you experience issues [https://bugs.freedesktop.org/show_bug.cgi?id=91880] with a AMD R9 390 series graphics card, set {{ic|1=radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1 amdgpu.dpm=1 amdgpu.dc=1}} as [[kernel parameters]] to force the use of amdgpu driver instead of radeon.<br />
<br />
If it still does not work, try disabling DPM, by setting the [[kernel parameters]] to: {{ic|1=radeon.cik_support=0 radeon.si_support=0 amdgpu.cik_support=1 amdgpu.si_support=1}}<br />
<br />
=== Freezes with "[drm] IP block:gmc_v8_0 is hung!" kernel error ===<br />
<br />
If you experience freezes and kernel crashes during a GPU intensive task with the kernel error " [drm] IP block:gmc_v8_0 is hung!" [https://bugs.freedesktop.org/show_bug.cgi?id=102322], a workaround is to set {{ic|1=amdgpu.vm_update_mode=3}} as [[kernel parameters]] to force the GPUVM page tables update to be done using the CPU. Downsides are listed here [https://bugs.freedesktop.org/show_bug.cgi?id=102322#c15].<br />
<br />
=== Cursor corruption ===<br />
<br />
If you experience issues with the mouse cursor sometimes not rendering properly, set {{ic|Option "SWCursor" "True"}} in the {{ic|"Device"}} section of the {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}} configuration file.<br />
<br />
If you are using {{ic|xrandr}} for scaling and the cursor is flickering or disappearing, you may be able to fix it by setting the {{ic|TearFree}} property: {{ic|xrandr --output HDMI-A-0 --set TearFree on}}.</div>Cknight70https://wiki.archlinux.org/index.php?title=Talk:AMDGPU&diff=578838Talk:AMDGPU2019-08-02T17:00:35Z<p>Cknight70: /* Move Variable Refresh Rate to New Page */ new section</p>
<hr />
<div>== Supported Hardware ==<br />
I just crawled the product names "Radeon xyz" of VI/CI GPUs together and was going to go on for professional products "FirePro xzy", too.<br />
<br />
Afaik, there is no such complete listing on the web. There is a lot of confusion about the code and product names, due to AMD repeatedly rebranding their products and even change code names for same GPUs (Tonga = Antigua, Hawaii = Grenada, Carrizo = Bristol Ridge?, ...)<br />
<br />
When I started using gnu/linux, the arch wiki was a great help and there are still a lot of people struggling with graphics drivers. Now I know it is not hard to understand, but it is still confusing for beginners, coming from windows and just being used to install one software suite (not a drm driver, libdrm, mesa, gallium, etc.), supporting all the current hardware.<br />
<br />
now everyone has to go through all of this every time to determine 1) which hardware is really in their product and 2) which driver suits their hardware<br />
<br />
<br />
tl;dr I think maintaining such a list would be really useful for beginners, maybe not here but in a separate article?<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:27, 16 February 2016 (UTC)<br />
<br />
:Well, [https://wiki.gentoo.org/wiki/Amdgpu#Feature_support Gentoo wiki] has a simple two-line summary. If it's still not sufficiently clear or the list is already much larger, I guess we could have a separate subpage to not clutter the main page... -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 10:20, 16 February 2016 (UTC)<br />
<br />
:: yes, in the meantime I also found this table. It looks good but it is not complete. And completing the list would blow up the table cells a lot. I guess we should wait until vulkan and the new OpenCL driver has been released. Until then, there is no real reason for owners of pre-VI hardware to switch over to amdgpu. All vi and post-vi will be covered, so there is no need to list those separately. For the others I could create a subpage when switching to amdgpu gives you the opportunity for opencl 2.1 and vulkan -- [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 10:50, 16 February 2016 (UTC)<br />
<br />
== Enable amdgpu for Sea Islands Cards ==<br />
testing my Hawaii card w/ amdgpu last week, sound did not work, even though 6 pcm/hdmi audio devices were listed. Might be added as an issue (as I think this is important deciding between radeon and amdgpu), but needs further investigation/confirmation from other testers.<br />
[[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 09:53, 16 February 2016 (UTC)<br />
:Please remember the AMDGPU is still in beta, and there's still info and knowledge/experience missing (e.g. most users use the Radeon driver).<br />
:AMD isn't that great in providing info and so far a lot of users are confused about their hardware support in use with amdgpu.<br />
:Remember there are flags like {{ic|exp_hw_support}}. More info need to be added, but it will take some time.<br />
:[[User:Francoism|Francoism]] ([[User talk:Francoism|talk]]) 13:14, 16 February 2016 (UTC)<br />
: It does indeed seem like that was no CI issue. Audio over hdmi is not supported by amdgpu atm, respectively only with the (upcoming) DAL changes[http://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/853189-audio-over-hdmi-tonga-and-amdgpu], although it is listed as 'done' [http://xorg.freedesktop.org/wiki/RadeonFeature/ here]. [[User:Iuno|Iuno]] ([[User talk:Iuno|talk]]) 15:59, 22 February 2016 (UTC)<br />
<br />
== Sea Islands cards not working with 4.5.x? ==<br />
I stumbled across this wiki page in hopes of getting more performance after seeing Michael from Phoronix get his 290 working with this. Following through all the instructions, menuconfiging and compiling new kernels, in the end all I get is a blank screen with my r9 390. No errors on Xorg.0.log. Can anyone confirm that it isn't just me?<br />
[[User:Katorisenko|Katorisenko]] ([[User talk:Katorisenko|talk]]) 07:46, 24 April 2016 (UTC)<br />
<br />
== AMDGPU and HDMI Audio ==<br />
<br />
According to [https://bugzilla.freedesktop.org/show_bug.cgi?id=92827#c2 this Freedesktop.org bug comment], HDMI audio support in AMDGPU requires DAL which is "not upstream yet", and won't be anytime soon according to [http://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-DC-DRM-No this Phoronix article]. I'm currently struggling to make my HDMI audio work with my AMD Radeon R9 380; if this happens to be impossible with AMDGPU, should we mention it in the "Troubleshooting" section of this page? --[[User:Hellpe|Hellpe]] ([[User talk:Hellpe|talk]]) 23:26, 3 January 2017 (UTC)<br />
<br />
:I am in favor of adding the information notice to the troubleshooting section. I think users who do not keep up with the news will be confused when Pulseaudio seems to add the HDMI audio devices, despite them being non-functional until the DAL code is refactored and accepted upstream then pushed to regular users. I know it was not immediately clear to me when I upgraded from my radeonsi card to an RX series amdgpu card until I did some reading. I "think" currently the only way to get HDMI audio is to use the AMDGPU-PRO driver for the time being. [[User:Ase1590|Ase1590]] ([[User talk:Ase1590|talk]]) 15:48, 4 January 2017 (UTC)<br />
<br />
::I have it working with an R9 380 under Xorg. I did nothing special, simply disabled the built-in audio and enabled the HDMI audio. It does not work under Wayland however. Pavucontrol shows unavailable. [[User:Unit73e|Unit73e]] ([[User talk:Unit73e|talk]]) 12:22, 2 December 2017 (UTC)<br />
<br />
== Some experiments with integrated AMD graphics ==<br />
<br />
Some results after playing with "radeon" and "amdgpu" drivers and gnome (for AMD A10 7850K):<br />
<br />
- Having both drivers loaded causes systemd to hang at system shutdown (xorg). Using amdgpu and blacklisting radeon or using radeon and blacklisting amdgpu both fix this problem.<br />
<br />
- Having amdgpu driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound output is shown only in rare cases<br />
<br />
- Having amdgpu driver with mkinitcpio.conf entry causes<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always disabled<br />
<br />
- Having radeon driver without mkinitcpio.conf entry causes<br />
1. Wayland can't be enabled (always in xorg mode) and XDG_SESSION_TYPE shows "x11"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
- Having radeon driver with mkinitcpio.conf entry<br />
1. Wayland is enabled by default and XDG_SESSION_TYPE shows "wayland"<br />
2. HDMI sound is always correctly detected and working<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
Update: with kernel 4.11.2-1: HDMI sound output is now working with "amdgpu" but only in as "Gnome in xorg" login option (still no sound with Wayland). There are still some graphical glitches when running Wayland with the radeon driver: external screen doesn't turn off after timeout, windows can't be maximized with the "wmctrl" command and updating text in terminal causes some text updating problems (these don't exist with xorg, amdgpu and radeon both work fine). So in summary: I can now select either amdgpu or radeon driver but Wayland is still unstable.<br />
<br />
[[User:Beoldhin|Beoldhin]] ([[User talk:Beoldhin|talk]]) 19:07, 23 May 2017 (UTC)<br />
<br />
== Vega Changes for Wiki ==<br />
<br />
With Vega releasing around the end of the month, the DC/DAL is still not it the kernel. Should we just put a note for users to use the AMDGPU-PRO drivers if they have VEGA cards? We could possibly add a note saying that in the AUR, there is an alternate kernel built from their repos with the DC/DAL code. <br />
Alternate kernel--> https://aur.archlinux.org/packages/linux-amd-staging-git/ [[User:Sesese9|Sesese9]] ([[User talk:Sesese9|talk]]) 00:40, 10 July 2017 (UTC)<br />
<br />
== Moving "Enable GPU display scaling" to xrandr ==<br />
<br />
I thought about it to put this under xrandr directly, but for example for my integrated Intel 6th gen GPU I don't have the "scaling mode" option, and I don't know about NVIDIA.<br />
And even if the "scaling mode" option exists for other vendors and or cards, I don't know if the possible values for "scaling mode" are the same everywhere, as far as I remember there are not.<br />
That was the reason I did put it here. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 16:01, 18 February 2018 (UTC)<br />
:Ok, looks like [[Intel_graphics#Setting_scaling_mode|Intel]] uses the same settings, but it's only available for internal (LVDS, eDP) ports, but at least according to https://bugs.freedesktop.org/show_bug.cgi?id=90989 it also uses "None, Full, Center, Full aspect".<br />
:I know that radeonsi uses the same commands, but still don't know about NVIDIA.<br />
:But yea, now I also think that it should be moved and the [[Intel_graphics#Setting_scaling_mode|Intel]] section should be merged into it. [[User:Bertl|Bertl]] ([[User talk:Bertl|talk]]) 18:37, 18 February 2018 (UTC)<br />
<br />
== Update on kernel parameters ==<br />
<br />
this part does not seems to be required on 4.17:<br />
<br />
>> Also, since kernel 4.13, adding the amdgpu.si_support=1 radeon.si_support=0 or amdgpu.cik_support=1 radeon.cik_support=0 kernel parameter is required. Otherwise, AMDGPU will not start and you will end up with either radeon being used instead or the display being frozen during the boot.<br />
<br />
{{unsigned|12:10, 22 April 2018|Lesto}}<br />
<br />
== Renaming AMDGPU-PRO to Radeon Software for Linux? ==<br />
<br />
So AMD basically changed the name of their AMDGPU-PRO driver as simply Radeon™ Software for Linux, see [https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx 17.40], [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx 18.10] and [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-18.20-Early-Preview-Release-Notes.aspx 18.20 preview] release notes. With that in mind, should the names on wiki be slowly changed, or the alternative name/note being added somewhere? I'm not sure if AMDGPU-PRO is still used by AMD officially and whether AMDGPU (without PRO) term is being used as well, but the name sure definitely stuck among community – any ideas? [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:33, 11 May 2018 (UTC)<br />
<br />
EDIT: Probably worth noticing is the similar situation happened between [[Fglrx]] and [[AMD Catalyst]] naming back then. [[User:Faalagorn|Faalagorn]] [[User talk:Faalagorn|☎]]/[[Special:Contributions/Faalagorn|✓]] 17:38, 11 May 2018 (UTC)<br />
<br />
== AMDGPU PRO downgrade versions ==<br />
There is information in page that "A downgrade of the linux (4.9) and Xorg (1.18) packages is required to use AMDGPU PRO 17.10." Is it still true? Did not AMDGPU PRO driver got updated? Afaik, ubuntu provides this proprietary driver, but has more recent kernel.<br />
[[User:Ashark|Ashark]] ([[User talk:Ashark|talk]]) 12:48, 16 November 2018 (UTC)<br />
<br />
: Currently, Yes. The [https://aur.archlinux.org/packages/amdgpu-pro/ AMDGPU-Pro AUR] has not been updated in some time and (as of this post) is still at version 17.40. [[User:Taurolyon|<span style="text-shadow: 0.1em 0.1em 0.09em #FFFF00; font-family:times; font-size:14px; FONT-WEIGHT: bold; color: #FF7C00; background-color:transparent">''"Tauro"''</span>]] ([[Special:Contributions/Taurolyon|Contributions]] <span style{{=}}"color: #FF7F00;">&bull;</span> [[User_talk:Taurolyon|Message]]) 20:40, 29 December 2018 (UTC)<br />
<br />
== Vulkan support for FreeSync on Mesa 19.1 ==<br />
<br />
Mesa 19.1 recently came out and it supposedly has FreeSync support for Vulkan. I can't test it right now but I was running the freesync patch before 19.1 and it worked for me. Anyone can confirm it is working on 19.1 and edit the FreeSync part about "only OpenGL is supported"<br />
<br />
[[User:Igo95862|Igo95862]] ([[User talk:Igo95862|talk]]) 08:56, 5 July 2019 (UTC)<br />
<br />
== Move Variable Refresh Rate to New Page ==<br />
<br />
NVIDIA has supported freesync for a while now as well as having their own variable refresh rate technology (Gsync). I think it would make more sense to make a separate page for it.<br />
[[User:Cknight70|Cknight70]] ([[User talk:Cknight70|talk]]) 17:00, 2 August 2019 (UTC)</div>Cknight70https://wiki.archlinux.org/index.php?title=Private_Internet_Access&diff=566875Private Internet Access2019-02-18T17:37:35Z<p>Cknight70: corrected grammar</p>
<hr />
<div>[[Category:VPN providers]]<br />
[[ja:Private Internet Access]]<br />
[https://www.privateinternetaccess.com/ Private Internet Access] is a subscription-based VPN service.<br />
<br />
== Manual ==<br />
<br />
{{Note|<br />
* [[Disable ipv6]] since it is not supported by PIA.[https://helpdesk.privateinternetaccess.com/hc/en-us/articles/232324908-Why-Do-You-Block-IPv6-]<br />
* Ensure you are using PIA's [[DNS]] servers, listed on their website.}}<br />
<br />
=== NetworkManager applet approach ===<br />
<br />
==== Installation ====<br />
<br />
Download [https://www.privateinternetaccess.com/openvpn/openvpn.zip OpenVPN configuration files from PIA]. Extract the ZIP file to a place in your user home directory or elsewhere that is memorable for future access.<br />
<br />
Install and configure [[NetworkManager]] along with the NetworkManager applet and OpenVPN plugin.<br />
<br />
==== Configuration ====<br />
<br />
#Right click on the NetworkManager applet from your desktop environment, and click Edit Connections. Click the Plus sign in the bottom left corner of the Network Connections window that appears.<br />
#When you choose a connection type, click the drop down menu and scroll all the way down until you reach "Import a saved VPN configuration". Select that option. Now, click Create.<br />
#Navigate to the directory you extracted all of the openvpn files to earlier, then open one of the files from that folder. Generally speaking, you will want to open the file that is associated with the connection you specifically want.<br />
#After you have opened one of the openvpn files, the window that appears should be "Editing <connection type>". Type in your Username and Password that you received from Private Internet Access. There is an icon in the password box indicating user permission of the credentials; change the settings as you wish.<br />
#Now, click Advanced. Next to "Use LZO data compression", click the drop down menu to select "adaptive". Click the OK button at the bottom left of the window to save this change.<br />
#Click Save at the bottom left of the "Editing <connection type>" window.<br />
<br />
==== Usage ====<br />
<br />
Left click on the NetworkManager applet. There is a VPN Connections menu. Inside it should be the VPN connection you saved. Click on it to connect to Private Internet Access.<br />
<br />
When a gold lock has appeared over the NetworkManager applet, you are successfully connected to Private Internet Access. Visit [https://www.privateinternetaccess.com/ Private Internet Access] and confirm that you are connected by referring to the status message at the top of their homepage.<br />
<br />
{{Note| If the VPN asks for a password, and you would like to avoid entering the password each time you attempt to connect, be sure to click the icon in the password box as noted previously regarding permission of credentials and change it to all users.}}<br />
<br />
=== OpenVPN command line approach ===<br />
<br />
==== Installation ====<br />
<br />
Download [https://www.privateinternetaccess.com/openvpn/openvpn-strong.zip OpenVPN configurations from PIA]. Unzip the file and move all files to {{ic|/etc/openvpn/client}}. Ensure the files have {{ic|root}} as the owner.<br />
<br />
{{Tip|To be able to use [[OpenVPN#systemd service configuration]] (e.g {{ic|systemctl start openvpn-client@''<config>''}}), rename the all the files and replace {{ic|.opvn}} extension with {{ic|.conf}} and replace spaces in configuration file names with underscores.}}<br />
<br />
==== Usage ====<br />
<br />
See [[OpenVPN#Starting OpenVPN]].<br />
<br />
{{Tip|To automatically login, append the name of the file containing your username and password immediately after {{ic|auth-user-pass}} in the configuration file(s). See this option in {{man|8|openvpn}}for more information.}}<br />
<br />
To test to see if you have successfully connected to the VPN, see [https://helpdesk.privateinternetaccess.com/hc/en-us/articles/231734668-Security-Best-Practices-Part-5-Testing-Your-Security this article].<br />
<br />
== Automatic ==<br />
<br />
=== Official installation script ===<br />
<br />
Private Internet Access has an installation script that sets up [[NetworkManager]] for use with the VPN. Download the script [http://www.privateinternetaccess.com/installer/pia-nm.sh here] and then run to set up.<br />
<br />
=== Official Linux client ===<br />
Private Internet Access now has an official client for Linux with support for Arch. Download the client from [https://www.privateinternetaccess.com/pages/download this page], unzip the file (e.g. <code>pia-v81-installer-linux.tar.gz</code>) and run the installation script (.e.g. <code># ./pia-v81-installer-linux.sh</code>).<br />
<br />
=== Packages ===<br />
<br />
* {{App|openvpn-pia|The package automates the method listed in the [[#Manual]] section, including renaming the configuartion files to be used with [[OpenVPN#systemd service configuration]], as well as setting up the OpenVPN parameter {{ic|auth-user-pass}} with a file for automatic login. Upon installation read {{ic|/usr/share/doc/openvpn-pia/README}} for setup.|https://www.privateinternetaccess.com/|{{AUR|openvpn-pia}}{{Broken package link|package not found}}}}<br />
* {{App|pia-nm|Installs [[NetworkManager]] configuration files for the VPN, similar to the [[#Official installation script]].|https://www.privateinternetaccess.com/|{{AUR|pia-nm}}{{Broken package link|package not found}}}}<br />
* {{App|[[Private Internet Access/AUR]]|Installs profiles for [[NetworkManager]], [[ConnMan]], and [[OpenVPN]].|https://www.privateinternetaccess.com/|{{AUR|private-internet-access-vpn}}}}<br />
<br />
== Tips and tricks ==<br />
<br />
=== Internet "kill switch" ===<br />
<br />
The following [[iptables]] rules only allow network traffic through the {{ic|tun}} interface, with the exception that traffic is allowed to PIA's DNS servers and to port 1197, which is used in establishing the VPN connection:<br />
<br />
{{hc|/etc/iptables/iptables.rules|<br />
:INPUT DROP [0:0]<br />
:FORWARD DROP [0:0]<br />
:OUTPUT DROP [0:10]<br />
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT<br />
-A INPUT -i lo -j ACCEPT<br />
-A INPUT -i tun+ -j ACCEPT<br />
-A OUTPUT -o lo -j ACCEPT<br />
-A OUTPUT -d 209.222.18.222/32 -j ACCEPT<br />
-A OUTPUT -d 209.222.18.218/32 -j ACCEPT<br />
-A OUTPUT -p udp -m udp --dport 1197 -j ACCEPT<br />
-A OUTPUT -o tun+ -j ACCEPT<br />
-A OUTPUT -j REJECT --reject-with icmp-net-unreachable<br />
COMMIT}}<br />
<br />
This ensures that if you are disconnected from the VPN unknowingly, no network traffic is allowed in or out.<br />
<br />
If you wish to additionally access devices on your LAN, you will need to explicitly allow them. For example, to allow access to devices on {{ic|192.0.0.0/24}}, add the following two rules (before any REJECT rule):<br />
<br />
-A INPUT -s 192.168.0.0/24 -j ACCEPT<br />
-A OUTPUT -d 192.168.0.0/24 -j ACCEPT<br />
<br />
Additionally, the above rules block the ICMP protocol, which is probably not desired. See [https://bbs.archlinux.org/viewtopic.php?id=224655 this thread] for potential pitfalls of using these iptables rules as well as more details.<br />
<br />
=== Setting PIA DNS ===<br />
If you find that Network Manager is controlling your host's DNS settings, and therefore your host cannot resolve any address, you will have to manually set the DNS server and attributes.<br />
You should note a symbolic link when running the following command<br />
<br />
ls -l /etc/resolv.conf<br />
<br />
Remove the symbolic link with {{ic|rm /etc/resolv.conf}}<br />
Then create a new {{ic|/etc/resolv.conf}} and add the following<br />
<br />
{{hc|/etc/resolv.conf |<br />
nameserver 209.222.18.222<br />
nameserver 209.222.18.218}}<br />
<br />
Finally make the file immutable so no other application can modify it<br />
<br />
chattr +i /etc/resolv.conf<br />
<br />
== Troubleshooting ==<br />
<br />
=== I can't connect to OpenVPN using PIA manager, or OpenVPN doesn't work ===<br />
PIA manager still uses OpenVPN under the hood, so even if you don't directly use one of the OpenVPN methods, you still need it. Firstly, check that it's installed. If you used one of the installation scripts, this should be done for you.<br />
<br />
If you're getting errors like {{ic|#<Errno::ECONNREFUSED: Connection refused - connect(2) for "127.0.0.1" port 31749>}}, that probably means TAP/TUN is not currently running. Either your kernel does not have it, in which case install a kernel which does (or compile a fresh one), or it isn't currently running, in which case it needs to be started:<br />
<br />
# modprobe tun</div>Cknight70https://wiki.archlinux.org/index.php?title=List_of_applications/Multimedia&diff=554152List of applications/Multimedia2018-11-10T07:37:27Z<p>Cknight70: /* Video editors */ Added Davinci Resolve</p>
<hr />
<div><noinclude><br />
[[Category:Applications]]<br />
[[Category:Multimedia]]<br />
[[Category:Lists of software]]<br />
[[es:List of applications/Multimedia]]<br />
[[it:List of applications/Multimedia]]<br />
[[ja:アプリケーション一覧/マルチメディア]]<br />
[[ru:List of applications/Multimedia]]<br />
[[zh-hans:List of applications/Multimedia]]<br />
[[zh-hant:List of applications/Multimedia]]<br />
{{List of applications navigation}}<br />
</noinclude><br />
== Multimedia ==<br />
<br />
=== Codecs ===<br />
<br />
See the main article: [[Codecs]].<br />
<br />
=== Image ===<br />
<br />
==== Image viewers ====<br />
<br />
See also [[Wikipedia:Comparison of image viewers]].<br />
<br />
===== Framebuffer image viewers =====<br />
<br />
* {{App|fbi|Image viewer for the linux framebuffer console.|https://www.kraxel.org/blog/linux/fbida/|{{Pkg|fbida}}}}<br />
* {{App|fbv|Very simple graphic file viewer for the framebuffer console.|http://s-tech.elsat.net.pl/fbv/|{{Pkg|fbv}}}}<br />
* {{App|fim|Highly customizable and scriptable framebuffer image viewer based on fbi.|http://www.nongnu.org/fbi-improved/|{{AUR|fim}}}}<br />
* {{App|jfbview|Framebuffer PDF and image viewer based on Imlib2. Features include Vim-like controls, rotation and zoom, zoom-to-fit, and fast multi-threaded rendering.|http://seasonofcode.com/pages/jfbview.html|{{AUR|jfbview}}}}<br />
<br />
===== Graphical image viewers =====<br />
<br />
* {{App|Ephoto|A light image viewer based on EFL.|https://www.enlightenment.org/about-ephoto|{{AUR|ephoto}}}}<br />
* {{App|[[Wikipedia:Eye_of_GNOME|Eye of GNOME]]|Image viewing and cataloging program, which is a part of the GNOME desktop environment.|https://wiki.gnome.org/Apps/EyeOfGnome|{{Pkg|eog}}}}<br />
* {{App|Eye of MATE|Simple graphics viewer for the MATE desktop.|https://github.com/mate-desktop/eom|{{Pkg|eom}}}}<br />
* {{App|EyeSight|Image viewer for the Hawaii desktop environment.|http://hawaiios.org/projects/eyesight/|{{AUR|eyesight}}}}<br />
* {{App|[[feh]]|Fast, lightweight image viewer that uses imlib2.|https://feh.finalrewind.org/|{{Pkg|feh}}}}<br />
* {{App|GalaPix|OpenGL-based image viewer for simultaneously viewing and zooming large collections of image files,|https://github.com/Galapix/galapix|{{AUR|galapix}}}}<br />
* {{App|[[Wikipedia:Geeqie|Geeqie]]|Image browser and viewer (fork of GQview) that adds additional functionality such as support for RAW files.|http://geeqie.org/|{{Pkg|geeqie}}}}<br />
* {{App|GPicView|Simple and fast image viewer for X, which is part of the [[LXDE]] desktop.|http://lxde.sourceforge.net/gpicview/|GTK+ 2: {{Pkg|gpicview}}, GTK+ 3: {{Pkg|gpicview-gtk3}}}}<br />
* {{App|[[Wikipedia:Gwenview|Gwenview]]|Fast and easy to use image viewer for the KDE desktop.|http://gwenview.sourceforge.net/|{{Pkg|gwenview}}}}<br />
* {{App|ida|X11 application (Motif based) for viewing images.|https://www.kraxel.org/blog/linux/fbida/|{{Pkg|fbida}}}}<br />
* {{App|imv|Lightweight image viewer with support for Wayland and animated GIFs which uses FreeImage.|https://www.github.com/eXeC64/imv/|{{Pkg|imv}}}}<br />
* {{App|LxImage-Qt|The LXQt image viewer.|https://github.com/lxde/lximage-qt|{{Pkg|lximage-qt}}}}<br />
* {{App|meh|meh is a small, simple, super fast image viewer using raw XLib.|http://www.johnhawthorn.com/meh/|{{AUR|meh-git}}}}<br />
* {{App|Mirage|PyGTK image viewer featuring support for crop and resize, custom actions and a thumbnail panel.|https://sourceforge.net/projects/mirageiv.berlios/|{{AUR|mirage}}}}<br />
* {{App|nomacs|Qt image viewer. It is feature-rich but starts fast and can be configured to show additional widgets or only the image.|https://nomacs.org/|{{Pkg|nomacs}}}}<br />
* {{App|Phototonic|Fast and functional image viewer and browser (Qt).|https://github.com/oferkv/phototonic/|{{AUR|phototonic}}}}<br />
* {{App|PhotoQt|Fast and highly configurable image viewer with a simple and nice interface.|http://photoqt.org/|{{AUR|photoqt}}}}<br />
* {{App|pqiv|GTK 3 based command-line image viewer with a minimal UI supporting images in compressed archives, rewrite of qiv.|https://github.com/phillipberndt/pqiv/|{{AUR|pqiv}}}}<br />
* {{App|qimgv|Fast and easy to use Qt5 image viewer. Supports webm/mp4 playback via mpv.|https://github.com/easymodo/qimgv/|{{AUR|qimgv}}}}<br />
* {{App|Quick Image Viewer|Very small and fast image viewer based on GTK+ and imlib2.|http://spiegl.de/qiv/|{{Pkg|qiv}}}}<br />
* {{App|Ristretto|Fast and lightweight image viewer for the Xfce desktop environment.|http://docs.xfce.org/apps/ristretto/start|{{Pkg|ristretto}}}}<br />
* {{App|shufti|shufti non-destructively saves and restores the zoom level, rotation, window size, desktop location and viewing area on a per-image/file location basis|https://github.com/danboid/shufti|{{AUR|shufti}}}}<br />
* {{App|[[sxiv]]|Simple image viewer based on imlib2 that works well with tiling window managers.|https://github.com/muennich/sxiv|{{Pkg|sxiv}}}}<br />
* {{App|Viewnior|Minimalistic GTK+ image viewer featuring support for flipping, rotating, animations and configurable mouse actions.|http://siyanpanayotov.com/project/viewnior/|{{Pkg|viewnior}}}}<br />
* {{App|Vimiv|An image viewer with vim-like keybindings. It is written in python3 using the Gtk3 toolkit.|http://karlch.github.io/vimiv|{{Pkg|vimiv}}}}<br />
* {{App|Xloadimage|Classic X image viewer.|http://sioseis.ucsd.edu/xloadimage.html|{{Pkg|xloadimage}}}}<br />
<br />
==== Image organizers ====<br />
<br />
See also [[Wikipedia:Image organizer]].<br />
<br />
* {{App|Deepin Image Viewer|Image viewer and organizer for Deepin desktop.|https://www.deepin.org/en/original/deepin-image-viewer/|{{Pkg|deepin-image-viewer}}}}<br />
* {{App|[[Wikipedia:digiKam|digiKam]]|KDE-based image organizer with built-in editing features via a plugin architecture. digiKam asserts it is more full featured than similar applications with a larger set of image manipulation features including RAW image import and manipulation.|http://www.digikam.org/|{{Pkg|digikam}}}}<br />
* {{App|Frogr|Small application for the GNOME desktop that allows users to manage their accounts in the Flickr image hosting website.|https://wiki.gnome.org/Apps/Frogr|{{AUR|frogr}}}}<br />
* {{App|GNOME Photos|Access, organize, and share your photos on GNOME.|https://wiki.gnome.org/Apps/Photos|{{Pkg|gnome-photos}}}}<br />
* {{App|[[Wikipedia:GThumb|gThumb]]|Image viewer and browser for the GNOME desktop.|https://wiki.gnome.org/Apps/Gthumb|{{Pkg|gthumb}}}}<br />
* {{App|[[Wikipedia:KPhotoAlbum|KPhotoAlbum]]|Digital image cataloging software that supports annotation, browsing, searching and viewing of digital images and videos.|https://www.kphotoalbum.org/|{{Pkg|kphotoalbum}}}}<br />
* {{App|Pantheon Photos|Photo organizer for Pantheon.|https://launchpad.net/pantheon-photos|{{Pkg|pantheon-photos}}}}<br />
* {{App|Rapid Photo Downloader|Download photos and videos from cameras, memory cards and portable storage devices.|http://www.damonlynch.net/rapid/|{{Pkg|rapid-photo-downloader}}}}<br />
* {{App|[[Wikipedia:Shotwell_(software)|Shotwell]]|A digital photo organizer designed for the GNOME desktop environment|https://wiki.gnome.org/Apps/Shotwell|{{Pkg|shotwell}}}}<br />
<br />
==== Image processing ====<br />
<br />
* {{App|CairoSVG|SVG to PNG, PDF, PS converter.|https://cairosvg.org/|{{Pkg|python-cairosvg}}}}<br />
* {{App|Converseen|Batch image converter and resizer.|http://converseen.fasterland.net/|{{Pkg|converseen}}}}<br />
* {{App|[[Wikipedia:dcraw|dcraw]]|Converts many camera RAW formats.|http://www.cybercom.net/~dcoffin/dcraw/|{{Pkg|dcraw}}}}<br />
* {{App|Fyre|Tool for producing computational artwork based on histograms of iterated chaotic functions.|http://fyre.navi.cx/|{{Pkg|fyre}}}}<br />
* {{App|[[Wikipedia:G'MIC|G'MIC]]|Full-featured open-source framework for image processing, providing several different user interfaces to convert/manipulate/filter/visualize generic image datasets, ranging from 1d scalar signals to 3d+t sequences of multi-spectral volumetric images, including 2d color images.|http://www.gmic.eu/|{{Pkg|gmic}}}}<br />
* {{App|[[Wikipedia:GraphicsMagick|GraphicsMagick]]|Fork of ImageMagick designed to have API and command-line stability. It also supports multi-CPU for enhanced performance and thus is used by some large commercial sites (Flickr, etsy) for its performance.|http://www.graphicsmagick.org/|{{Pkg|graphicsmagick}}}}<br />
* {{App|[[ImageMagick]]|Command-line image manipulation program. It is known for its accurate format conversions with support for over 100 formats. Its API enables it to be scripted and it is usually used as a backend processor.|http://www.imagemagick.org/script/index.php|{{Pkg|imagemagick}}}}<br />
<br />
===== Image compression =====<br />
<br />
* {{App|[[Wikipedia:Guetzli|Guetzli]]|A perceptual JPEG encoder, aiming for excellent compression density at high visual quality.|https://github.com/google/guetzli|{{Pkg|guetzli}}}}<br />
* {{App|jpegoptim|JPEG optimization utility providing lossless and lossy compression.|http://www.kokkonen.net/tjko/projects.html#jpegoptim|{{Pkg|jpegoptim}}}}<br />
* {{App|optipng|Lossless PNG compressor.|http://optipng.sourceforge.net/|{{Pkg|optipng}}}}<br />
<br />
==== Raster graphics editors ====<br />
<br />
See also [[Wikipedia:Comparison of raster graphics editors]].<br />
<br />
* {{App|AzPainter|Painting software for illustration drawing.|https://github.com/Symbian9/azpainter|{{AUR|azpainter}}}}<br />
* {{App|Deepin Draw|Lightweight drawing tool for Deepin desktop.|https://github.com/linuxdeepin/deepin-draw|{{Pkg|deepin-draw}}}}<br />
* {{App|[[GIMP]]|Image editing suite in the vein of proprietary editors such as [[Wikipedia:Adobe Photoshop|Adobe Photoshop]]. GIMP ([[GNU]] Image Manipulation Program) has been started in the mid 1990s and has acquired a large number of [[CMYK support in The GIMP|plugins]] and additional tools.|http://www.gimp.org/|{{Pkg|gimp}}}}<br />
* {{App|[[Wikipedia:GNU Paint|Gpaint]]|[[Wikipedia:PC_Paintbrush|Paintbrush]] clone for GNOME.|https://www.gnu.org/software/gpaint/|{{AUR|gpaint}}}}<br />
* {{App|[[Wikipedia:GrafX2|GrafX2]]|Bitmap paint program specialized in 256 color drawing.|http://grafx2.chez.com/|{{Pkg|grafx2}}}}<br />
* {{App|[[Wikipedia:KolourPaint|KolourPaint]]|Free raster graphics editor for KDE, similar to Microsoft's Paint application before Windows 7, but with some additional features such as support for transparency. Part of {{Grp|kde-applications}} and {{Grp|kdegraphics}} groups.|http://kolourpaint.org|{{Pkg|kolourpaint}}}}<br />
* {{App|[[Wikipedia:Krita|Krita]]|Digital painting and illustration software included based on the KDE platform.|http://krita.org/|{{Pkg|krita}}}}<br />
* {{App|mtPaint|Graphics editing program geared towards creating indexed palette images and pixel art.|http://mtpaint.sourceforge.net/|{{Pkg|mtpaint}}}}<br />
* {{App|[[Wikipedia:MyPaint|MyPaint]]|Free software graphics application for digital painters.|http://mypaint.org|{{Pkg|mypaint}}}}<br />
* {{App|PhotoFlare|Simple but powerful image editor originally inspired by PhotoFiltre.|https://photoflare.io/|{{AUR|photoflare}}}}<br />
* {{App|[[Wikipedia:Pinta (software)|Pinta]]|Drawing and editing program modeled after [[Wikipedia:Paint.net|Paint.NET]]. Its goal is to provide a simplified alternative to GIMP for casual users.|http://pinta-project.com/|{{Pkg|pinta}}}}<br />
* {{App|[[Wikipedia:XPaint|XPaint]]|Color image editing tool which features most standard paint program options.|https://sourceforge.net/projects/sf-xpaint/|{{AUR|xpaint}}}}<br />
<br />
Some image viewers and organizers like [[Wikipedia:digiKam|digiKam]], Ephoto, GNOME Photos, [[Wikipedia:GThumb|gThumb]], ida, nomacs, Pantheon Photos, Phototonic and [[Wikipedia:Shotwell_(software)|Shotwell]] also provide some basic image manipulation functionality.<br />
<br />
==== Photo editors ====<br />
<br />
* {{App|[[Wikipedia:darktable|darktable]]|Photography workflow and RAW development application.|http://www.darktable.org/|{{Pkg|darktable}}}}<br />
* {{App|[[Wikipedia:Hugin (software)|Hugin]]|Panorama photo stitcher.|http://hugin.sourceforge.net/|{{Pkg|hugin}}}}<br />
* {{App|[[Wikipedia:LightZone|LightZone]]|Professional-level digital darkroom and photo editor comparable to Photoshop Lightroom.|http://lightzoneproject.org/|{{AUR|lightzone}}}}<br />
* {{App|[[Wikipedia:Luminance HDR|Luminance HDR]]|Open source graphical user interface application that aims to provide a workflow for HDR imaging.|http://qtpfsgui.sourceforge.net/|{{Pkg|luminancehdr}}}}<br />
* {{App|[[Wikipedia:UFRaw|nUFRaw]]|Utility to read and manipulate raw images from digital cameras using DCRaw.|https://sourceforge.net/projects/nufraw/|{{Pkg|gimp-nufraw}}}}<br />
* {{App|Oqapy|Photographic workflow application.|https://oqapy.eu/|{{AUR|oqapy}}}}<br />
* {{App|[[Wikipedia:Rawstudio|Rawstudio]]|Raw-image converter written in GTK+.|https://rawstudio.org/|{{AUR|rawstudio}}}}<br />
* {{App|[[Wikipedia:RawTherapee|RawTherapee]]|A powerful cross-platform raw image processing program.|http://www.rawtherapee.com/|{{Pkg|rawtherapee}}}}<br />
<br />
==== Vector graphics editors ====<br />
<br />
See also [[Wikipedia:Comparison of vector graphics editors]].<br />
<br />
* {{App|[[Wikipedia:Dia (software)|Dia]]|GTK+-based diagram creation program.|https://wiki.gnome.org/Apps/Dia|{{Pkg|dia}}}}<br />
* {{App|draw.io desktop|Diagram drawing application built on web technology. Based on the [https://electronjs.org/ Electron] platform.|https://about.draw.io/|{{AUR|drawio-desktop}}}}<br />
* {{App|Gravit Designer|Proprietary vector design application. Based on the [https://electronjs.org/ Electron] platform.|https://designer.io/|{{AUR|gravit-designer-bin}}}}<br />
* {{App|[[Inkscape]]|Vector graphics editor, with capabilities similar to [[Wikipedia:Adobe Illustrator|Illustrator]], [[Wikipedia:CorelDRAW|CorelDraw]], or [[Wikipedia:Xara X|Xara X]], using the SVG (Scalable Vector Graphics) file format. Inkscape supports many advanced SVG features (markers, clones, alpha blending, etc.) and great care is taken in designing a streamlined interface. It is very easy to edit nodes, perform complex path operations, trace bitmaps and much more. It's developers also aim to maintain a thriving user and developer community by using open, community-oriented development.|http://inkscape.org/|{{Pkg|inkscape}}}}<br />
* {{App|[[Wikipedia:Karbon (software)|Karbon]]|Vector graphics editor, part of the Calligra Suite.|http://www.calligra-suite.org/karbon/|{{Pkg|calligra}}}}<br />
* {{App|[[LibreOffice|LibreOffice Draw]]|Vector graphics editor and diagramming tool included in the LibreOffice suite similar to Microsoft Visio.|https://www.libreoffice.org/discover/draw/|{{Pkg|libreoffice-still}} or {{Pkg|libreoffice-fresh}}}}<br />
* {{App|Mockingbot|Proprietary prototyping & collaboration design tool. Based on the [https://electronjs.org/ Electron] platform.|http://mockingbot.com/|{{AUR|mockingbot}}}}<br />
* {{App|[[OpenOffice|OpenOffice Draw]]|Vector graphics editor and diagramming tool included in the OpenOffice suite.|http://www.openoffice.org/product/draw.html|{{AUR|openoffice}}}}<br />
* {{App|[[Wikipedia:Pencil2D|Pencil Project]]|GUI prototyping and mockup tool. Based on the [https://electronjs.org/ Electron] platform.|http://pencil.evolus.vn/|{{AUR|pencil}}}}<br />
* {{App|[[Wikipedia:SK1 (program)|sK1]]|Replacement for Adobe Illustrator or CorelDraw, oriented for "prepress ready" PostScript & PDF output.|http://sk1project.net/|{{Pkg|sk1}}}}<br />
* {{App|[[Wikipedia:yEd|yEd]]|General-purpose proprietary diagramming program for flowcharts, network diagrams, UML diagrams, BPMN diagrams, mind maps, organization charts, and Entity Relationship diagrams.|https://www.yworks.com/products/yed|{{AUR|yed}}}}<br />
* {{App|[[Wikipedia:Xfig|Xfig]]|Interactive drawing tool.|http://mcj.sourceforge.net/|{{Pkg|xfig}}}}<br />
<br />
==== Font editors ====<br />
<br />
See also [[Wikipedia:Comparison of font editors]].<br />
<br />
* {{App|Birdfont|Font editor which lets you create vector graphics and export TTF, EOT and SVG fonts.|https://birdfont.org/|{{AUR|birdfont}}}}<br />
* {{App|[[Wikipedia:FontForge|FontForge]]|Outline font editor.|https://fontforge.github.io/|{{Pkg|fontforge}}}}<br />
* {{App|TruFont|Font-editing application.|http://trufont.github.io/|{{AUR|trufont-git}}}}<br />
<br />
==== 2D animation ====<br />
<br />
* {{App|OpenStopMotion|Capture program for creating stopmotion video clips.|http://qstopmotion.org/|{{AUR|openstopmotion}}}}<br />
* {{App|[[Wikipedia:Toonz|OpenToonz]]|2D animation creation software.|https://opentoonz.github.io/e/|{{AUR|opentoonz}}}}<br />
* {{App|[[Wikipedia:Pencil2D|Pencil2D]]|Easy, intuitive tool to make 2D hand-drawn animations.|https://www.pencil2d.org/|{{AUR|pencil2d}}}}<br />
* {{App|qStopMotion|Application for creating stop-motion animation movies. The users will be able to create stop-motions from pictures imported from a camera or from the harddrive and export the animation to different video formats such as mpeg or avi.|http://qstopmotion.org/|{{AUR|qstopmotion}}}}<br />
* {{App|Stopmotion|Application to create stop-motion animations. It helps you capture and edit the frames of your animation and export them as a single file.|http://linuxstopmotion.org/|{{AUR|stopmotion}}}}<br />
* {{App|[[Wikipedia:Synfig|Synfig Studio]]|2D animation software, designed as powerful industrial-strength solution for creating film-quality animation using a vector and bitmap artwork.|https://www.synfig.org/|{{AUR|synfigstudio}}}}<br />
* {{App|[[Wikipedia:Tupi (software)|TupiTube Desk]]|Desktop application to create and share 2D animations, focused on kids and teenagers.|https://www.maefloresta.com/|{{AUR|tupitube.desk}}}}<br />
<br />
==== 3D computer graphics ====<br />
<br />
See also [[Wikipedia:Comparison of 3D computer graphics software]].<br />
<br />
* {{App|Art of Illusion|3D modeling and rendering studio written in Java.|http://www.artofillusion.org/|{{AUR|aoi}}}}<br />
* {{App|[[Blender]]|Fully integrated 3D graphics creation suite capable of 3D modeling, texturing, and animation, among other things.|http://www.blender.org/|{{Pkg|blender}}}}<br />
* {{App|Goxel|Open Source 3D voxel editor.|https://guillaumechereau.github.io/goxel/|{{AUR|goxel}}}}<br />
* {{App|LuxRender|Rendering system for physically correct, unbiased image synthesis.|http://luxrender.net/|{{AUR|luxrender-hg}}}}<br />
* {{App|[[Wikipedia:MakeHuman|MakeHuman™]]|Parametrical modeling program for creating human bodies.|http://www.makehuman.org/|{{AUR|makehuman}}}}<br />
* {{App|[[Wikipedia:Sweet_Home_3D|Sweet Home 3D]]|Interior design software application for the planning and development of floor plans|http://sweethome3d.com/|{{Pkg|sweethome3d}}}}<br />
* {{App|[[Wikipedia:POV-Ray|POV-Ray]]|Script-based raytracer for creating 3D graphics.|http://www.povray.org/|{{Pkg|povray}}}}<br />
* {{App|VoxelShop|Extremely intuitive and powerful software to modify and create voxel objects.|https://blackflux.com/node/11|{{AUR|voxelshop}}}}<br />
* {{App|[[Wikipedia:Wings3d|Wings 3D]]|Advanced subdivision modeler that is both powerful and easy to use.|http://www.wings3d.com/|{{Pkg|wings3d}}}}<br />
<br />
==== Color pickers ====<br />
<br />
* {{App|Agave|Colorscheme designer tool for GNOME.|https://web.archive.org/web/20170327063642/http://home.gna.org/colorscheme/|{{Pkg|agave}}}}<br />
* {{App|Chameleon|Simple color picker for X11 which outputs colors to stdout.|https://github.com/seebye/chameleon|{{AUR|chameleon-git}}}}<br />
* {{App|ColorGrab|Cross-platform color picker.|https://github.com/nielssp/colorgrab|{{AUR|colorgrab}}}}<br />
* {{App|Color Picker|Simplistic color picker for the Pantheon desktop.|https://github.com/RonnyDo/ColorPicker|{{AUR|color-picker-git}}}}<br />
* {{App|Deepin Picker|Color picker tool for Deepin desktop.|https://www.deepin.org/en/original/deepin-picker/|{{Pkg|deepin-picker}}}}<br />
* {{App|delicolour|Lightweight GTK+ 3 color finder.|https://github.com/eepp/delicolour|{{AUR|delicolour}}}}<br />
* {{App|gcolor2|Simple GTK+ 2 color selector.|http://gcolor2.sourceforge.net/|{{Pkg|gcolor2}}}}<br />
* {{App|Gcolor3|Simple GTK+ 3 color selector.|https://www.hjdskes.nl/projects/gcolor3/|{{AUR|gcolor3}}}}<br />
* {{App|GPick|Advanced color picker tool.|http://www.gpick.org/|{{Pkg|gpick}}}}<br />
* {{App|KColorChooser|Simple application to select the color from the screen or from a pallete. Part of {{Grp|kdegraphics}}.|https://www.kde.org/applications/graphics/kcolorchooser/|{{Pkg|kcolorchooser}}}}<br />
* {{App|MATE Color Selection|Choose colors from the palette or the screen. Run with {{ic|mate-color-select}}.|https://mate-desktop.org/|{{Pkg|mate-desktop}}}}<br />
* {{App|Pick|Simple color picker tool for the Linux desktop.|https://www.kryogenix.org/code/pick|{{AUR|pick-colour-picker}}}}<br />
* {{App|xcolor|Lightweight color picker for X11.|https://soft.github.io/xcolor/|{{AUR|xcolor}}}}<br />
<br />
==== Screenshot ====<br />
<br />
See [[Screen capture#Screenshot software]].<br />
<br />
==== Digital camera managers ====<br />
<br />
See [[Libgphoto2#Installation]].<br />
<br />
=== Audio ===<br />
<br />
==== Audio systems ====<br />
<br />
See also the main article [[Sound system]] and [[Wikipedia:Sound server]].<br />
<br />
==== Audio players ====<br />
<br />
See also [[Music Player Daemon#Clients]] and [[Wikipedia:Comparison of audio player software]].<br />
<br />
===== Console =====<br />
<br />
* {{App|[[cmus]]|Very feature-rich ncurses-based music player.|https://cmus.github.io/|{{Pkg|cmus}}}}<br />
* {{App|Cplay|Curses front-end for various audio players (ogg123, mpg123, mpg321, splay, madplay, and mikmod, xmp, and sox).|https://directory.fsf.org/wiki/Cplay|{{AUR|cplay}}}}<br />
* {{App|Herrie|Minimalistic console-based music player with native AudioScrobbler support.|https://github.com/EdSchouten/herrie|{{AUR|herrie}}}}<br />
* {{App|[[MOC]]|Ncurses console audio player with support for the MP3, OGG, and WAV formats.|https://moc.daper.net/|{{Pkg|moc}}}}<br />
* {{App|MPFC|Gstreamer-based audio player with curses interface.|https://code.google.com/archive/p/mpfc/|{{AUR|mpfc}}}}<br />
* {{App|[[Wikipedia:Mpg123|mpg123]]|Fast free MP3 console audio player for Linux, FreeBSD, Solaris, HP-UX and nearly all other UNIX systems (also decodes MP1 and MP2 files).|https://www.mpg123.org/|{{Pkg|mpg123}}}}<br />
* {{App|[[pianobar]]|Console-based frontend for the online radio Pandora.|https://6xq.net/projects/pianobar/|{{Pkg|pianobar}}}}<br />
* {{App|vitunes|Curses-based music player and playlist manager with vim-like keybindings.|http://vitunes.org/|{{AUR|vitunes}}}}<br />
* {{App|whistle|Curses-based commandline audio player.|https://github.com/ap0calypse/whistle/|{{AUR|whistle-git}}}}<br />
* {{App|[[Wikipedia:XMMS2|XMMS2]]|Complete rewrite of the popular music player.|https://xmms2.org|{{Pkg|xmms2}}}}<br />
<br />
===== Graphical =====<br />
<br />
====== GStreamer-based ======<br />
<br />
* {{App|[[Wikipedia:Banshee (media player)|Banshee]]|[[Wikipedia:iTunes|iTunes]] clone, built with GTK+ and [[Mono]], feature-rich.|http://banshee.fm/|{{AUR|banshee}}}}<br />
* {{App|[[Wikipedia:Clementine_(software)|Clementine]]|Amarok 1.4 clone, ported to Qt 4.|https://www.clementine-player.org/|{{Pkg|clementine}}}}<br />
* {{App|Cozy|Modern audio book player for Linux using GTK+ 3.|https://github.com/geigi/cozy|{{AUR|cozy-audiobooks}}}}<br />
* {{App|[[Exaile]]|GTK+ clone of Amarok.|http://www.exaile.org/|{{AUR|exaile}}}}<br />
* {{App|GNOME Internet Radio Locator|Easily find live radio programs based on geographical location of radio broadcasters on the Internet.|https://wiki.gnome.org/Apps/InternetRadioLocator|{{AUR|gnome-internet-radio-locator}}}}<br />
* {{App|GNOME Music|Music is the new GNOME music playing application. It aims to combine an elegant and immersive browsing experience with simple and straightforward controls.|https://wiki.gnome.org/Apps/Music|{{Pkg|gnome-music}}}}<br />
* {{App|Gradio|GTK+ 3 application for finding and listening to internet radio stations.|https://github.com/haecker-felix/gradio|{{AUR|gradio}}}}<br />
* {{App|Guayadeque|Full featured media player that can easily manage large collections and uses the GStreamer media framework.|http://guayadeque.org/|{{AUR|guayadeque}}}}<br />
* {{App|Lollypop|A GNOME music player.|https://wiki.gnome.org/Apps/Lollypop|{{Pkg|lollypop}}}}<br />
* {{App|[[Wikipedia:Muine|Muine]]|A music player written in C Sharp.|https://muine.gooeylinux.org/|{{Pkg|muine}}}}<br />
* {{App|Pantheon Music|Simple, fast, and good looking music player. The official elementary music player.|https://github.com/elementary/music|{{Pkg|pantheon-music}}}}<br />
* {{App|Parlatype|Minimal audio player for manual speech transcription, for GNOME. It plays audio sources to transcribe them in your favorite text application.|https://gkarsay.github.io/parlatype/|{{AUR|parlatype}}}}<br />
* {{App|Pithos|Python/GTK Pandora Radio desktop client.|https://pithos.github.io/|{{AUR|pithos}}}}<br />
* {{App|Pragha|GTK+ music manager. (fork of the Consonance Music Manager)|https://pragha-music-player.github.io/|{{Pkg|pragha}}}}<br />
* {{App|[[Wikipedia:Quod Libet (software)|Quod Libet]]|Audio player written with PyGTK and GStreamer with support for regular expressions in playlists.|https://github.com/quodlibet/quodlibet/|{{Pkg|quodlibet}}}}<br />
* {{App|Radiotray-NG|Internet radio player systray applet.|https://github.com/ebruck/radiotray-ng|{{AUR|radiotray-ng}}}}<br />
* {{App|[[Wikipedia:Rhythmbox|Rhythmbox]]|GTK+ clone of iTunes, used by default in GNOME.|https://wiki.gnome.org/Apps/Rhythmbox|{{Pkg|rhythmbox}}}}<br />
* {{App|Sayonara|Small, clear and fast audio player for Linux written in C++, uses the Qt framework. |https://sayonara-player.com/|{{AUR|sayonara-player}}}}<br />
<br />
====== Phonon-based ======<br />
<br />
* {{App|[[Amarok]]|Mature Qt-based player known for its plethora of features.|https://amarok.kde.org/|{{AUR|amarok}}}}<br />
* {{App|[[Wikipedia:JuK|JuK]]|JuK is an audio jukebox application, supporting collections of MP3, Ogg Vorbis, and FLAC audio files.|https://www.kde.org/applications/multimedia/juk/|{{Pkg|juk}}}}<br />
* {{App|Musique|Just another music player, only better.|http://flavio.tordini.org/musique|{{AUR|musique}}}}<br />
* {{App|[[Wikipedia:Tomahawk (software)|Tomahawk]]|Music player application written in C++/Qt. It decouples the name of the song from the source it was shared from - and fulfills the request using all of your available sources.|https://www.tomahawk-player.org/|{{AUR|tomahawk}}}}<br />
* {{App|Yarock|Modern looking music player, packed with features, that doesn’t depend on any specific desktop environment. Yarock is designed to provide an easy and pretty music browser based on cover art.|https://seb-apps.github.io/yarock/|{{AUR|yarock-qt5}}}}<br />
<br />
====== Qt Multimedia-based ======<br />
<br />
* {{App|Babe|Tiny Qt music player to keep your favorite songs at hand.|https://milohr.github.io/BabeIt/|{{Pkg|babe}}}}<br />
* {{App|Deepin Music|Awesome music player with brilliant and tweakful UI Deepin-UI based.|https://www.deepin.org/en/original/deepin-music/|{{Pkg|deepin-music}}}}<br />
* {{App|Elisa|Simple music player by the KDE community aiming to provide a nice experience for its users.|https://community.kde.org/Elisa|{{Pkg|elisa}}}}<br />
<br />
====== Other ======<br />
<br />
* {{App|[[Wikipedia:Aqualung (software)|Aqualung]]|Advanced music player, which plays audio CDs, internet radio streams and podcasts as well as soundfiles in just about any audio format and has the feature of inserting no gaps between adjacent tracks.|https://aqualung.jeremyevans.net/|{{AUR|aqualung}}}}<br />
* {{App|[[Audacious]]|[[Wikipedia:Winamp|Winamp]] clone like Beep and old XMMS versions.|http://audacious-media-player.org/|{{Pkg|audacious}}}}<br />
* {{App|[[Wikipedia:DeaDBeeF|DeaDBeeF]]|Light and fast music player with many features, no GNOME or KDE dependencies, supports console-only, as well as a GTK+ GUI, comes with many plugins, and has a metadata editor.|http://deadbeef.sourceforge.net/|{{Pkg|deadbeef}}}}<br />
* {{App|gmusicbrowser|Open-source jukebox for large collections of MP3/OGG/FLAC files.|https://gmusicbrowser.org/|{{AUR|gmusicbrowser}}}}<br />
* {{App|Goggles Music Manager|Music collection manager and player that automatically categorizes your music, supports gapless playback, features easy tag editing, and internet radio support. Uses the [[Wikipedia:Fox toolkit|Fox toolkit]].|https://gogglesmm.github.io/|{{Pkg|gogglesmm}}}}<br />
* {{App|Google Play Music Desktop Player|Beautiful cross platform desktop player for Google Play Music. Based on the [https://electronjs.org/ Electron] platform.|https://googleplaymusicdesktopplayer.com/|{{AUR|gpmdp}}}}<br />
* {{App|LXMusic|A minimalist xmms2-based music player.|https://wiki.lxde.org/en/LXMusic|GTK+ 2: {{Pkg|lxmusic}}, GTK+ 3: {{Pkg|lxmusic-gtk3}}}}<br />
* {{App|Miam-Player|Cross-platform open source music player.|http://mbach.github.io/Miam-Player/|{{AUR|miam-player}}}}<br />
* {{App|museeks|Minimalistic and easy to use music player. Based on the [https://electronjs.org/ Electron] platform.|https://museeks.io/|{{AUR|museeks-bin}}}}<br />
* {{App|Noson|Fast and smart controller for SONOS devices.|https://janbar.github.io/noson-app/|{{AUR|noson-app}}}}<br />
* {{App|Nuclear|Modern music player focused on streaming from free sources. Based on the [https://electronjs.org/ Electron] platform.|https://nuclear.gumblert.tech/|{{AUR|nuclear-player}}}}<br />
* {{App|Nuvola Player|Integrated Google Music, 8tracks and Hype Machine player.|https://tiliado.eu/nuvolaplayer/|{{AUR|nuvolaplayer-git}}}}<br />
* {{App|[[Wikipedia:qmmp|Qmmp]]|Qt-based multimedia player with a user interface that is similar to Winamp or XMMS.|http://qmmp.ylsoftware.com/|{{Pkg|qmmp}}}}<br />
* {{App|SpotCommander|A remote control for Spotify, optimized for mobile devices. It works on any device with a modern browser, and it's free and open source.|https://olejon.github.io/spotcommander/|{{AUR|spotcommander}}}}<br />
* {{App|[[Spotify]]|Proprietary music streaming service. It supports local playback and streaming from Spotify's vast library (requires a free account).|https://www.spotify.com/|{{AUR|spotify}}}}<br />
* {{App|Upplay|Qt-based UPnP audio control point.|https://lesbonscomptes.com/upplay/|{{AUR|upplay}}}}<br />
<br />
==== Audio tag editors ====<br />
<br />
===== Console =====<br />
<br />
* {{App|[[Beets]]|Music library organizer, tagger and more.|http://beets.io/|{{Pkg|beets}}}}<br />
* {{App|Demlo|Batch music tagger, encoder, renamer and more.|https://ambrevar.bitbucket.io/demlo/|{{AUR|demlo}}}}<br />
* {{App|id3|Command-line utility to edit ID3 1.x and 2.x tags.|https://squell.github.io/id3/|{{AUR|id3}}}}<br />
* {{App|id3ted|Command line id3 tag editor.|https://muennich.github.io/id3ted/|{{AUR|id3ted}}}}<br />
* {{App|id3v2|Command line editor for id3v2 tags.|http://id3v2.sourceforge.net/|{{Pkg|id3v2}}}}<br />
* {{App|MP3Info|MP3 technical info viewer and ID3 1.x tag editor.|https://ibiblio.org/mp3info/|{{Pkg|mp3info}}}}<br />
* {{App|MP3Unicode|Command line utility to convert ID3 tags in mp3 files between different encodings.|http://mp3unicode.sourceforge.net/|{{Pkg|mp3unicode}}}}<br />
* {{App|Taffy|Simple command-line tag editor for many audio formats.|https://github.com/jangler/taffy|{{AUR|taffy}}}}<br />
* {{App|Tagutil|CLI tool to edit music file's tag. It aims to provide both an easy-to-script interface and ease of use interactively.|https://github.com/kAworu/tagutil|{{AUR|tagutil}}}}<br />
<br />
===== Graphical =====<br />
<br />
* {{App|Audio Tag Tool|Tool to edit tags in MP3 and Ogg Vorbis files.|https://github.com/impegoraro/tagtool|{{AUR|tagtool}}}}<br />
* {{App|Coquillo|Metadata editor for various audio formats.|https://github.com/sjuvonen/coquillo|{{AUR|coquillo}}}}<br />
* {{App|[[Wikipedia:EasyTag|EasyTag]]|Utility for viewing, editing and writing ID3 tags of music files, supports many audio formats.|http://easytag.sourceforge.net/|{{Pkg|easytag}}}}<br />
* {{App|[[Wikipedia:Ex Falso (software)|Ex Falso]]|Cross-platform free and open source audio tag editor and library organizer. Run with {{ic|exfalso}}.|https://github.com/quodlibet/quodlibet/|{{Pkg|quodlibet}}}}<br />
* {{App|Kid3|MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV and AIFF files tag editor.|http://kid3.sourceforge.net/|KDE: {{Pkg|kid3}}, Qt: {{Pkg|kid3-qt}}}}<br />
* {{App|KTag Editor|ID3v tag editor developed in Qt5 framework. Supported files are mp3, wav, ogg, wma, flac, asf.|http://karoljkocmaros.blogspot.com/p/ktag-editor.html|{{AUR|ktageditor}}}}<br />
* {{App|MP3Info GUI|MP3 technical info viewer and ID3 1.x tag editor. The graphical interface can be launched with the {{ic|gmp3info}} command.|https://ibiblio.org/mp3info/|{{Pkg|mp3info}}}}<br />
* {{App|[[Wikipedia:MusicBrainz Picard|Picard]]|Cross-platform audio tag editor written in Python (the official [[Wikipedia:MusicBrainz|MusicBrainz]] tagger).|https://picard.musicbrainz.org/|{{Pkg|picard}}}}<br />
* {{App|[[Wikipedia:Puddletag|Puddletag]]|Replacement for the famous MP3tag for Windows.|http://puddletag.sourceforge.net/|{{AUR|puddletag}}}}<br />
* {{App|Qoobar|Universal Qt-based audio tagger (specialized for classical music).|http://qoobar.sourceforge.net/en/index.htm|{{AUR|qoobar}}}}<br />
* {{App|Tag Editor|A tag editor with Qt GUI and command-line interface supporting MP4/M4A/AAC (iTunes), ID3v1/ID3v2, Vorbis, Opus, FLAC and Matroska.|https://github.com/Martchus/tageditor|{{AUR|tageditor}}}}<br />
* {{App|Thunar Media Tags Plugin|Adds special features for media files to the Thunar File Manager, including the ability to edit tags.|http://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin|{{Pkg|thunar-media-tags-plugin}}}}<br />
<br />
==== Lyrics ====<br />
<br />
* {{App|clyrics|Extensible lyrics fetcher, with daemon support for cmus and mocp.|https://github.com/trizen/clyrics|{{AUR|clyrics}}}}<br />
* {{App|LyricsX|Lyrics editor.|https://github.com/timxx/lyricsx|{{AUR|lyricsx}}}}<br />
* {{App|OSD Lyrics|Lyric show compatible with various media players.|https://github.com/osdlyrics/osdlyrics|{{Pkg|osdlyrics}}}}<br />
<br />
==== Audio converters ====<br />
<br />
* {{App|[[Wikipedia:Ecasound|Ecasound]]|Command line tools designed for multitrack audio processing. It can be used for simple tasks like audio playback, recording and format conversions, as well as for multitrack effect processing, mixing, recording and signal recycling.|https://nosignal.fi/ecasound/|{{Pkg|ecasound}}}}<br />
* {{App|fre:ac|Audio converter and CD ripper with support for various popular formats and encoders.|https://freac.org/|{{AUR|freac}}}}<br />
* {{App|Gnac|Audio converter for GNOME.|http://gnac.sourceforge.net/|{{Pkg|gnac}}}}<br />
* {{App|SoundConverter|A graphical application to convert audio files into different formats.|http://soundconverter.org/|{{pkg|soundconverter}}}}<br />
* {{App|soundKonverter|Qt-based GUI front-end to various audio converters.|https://github.com/dfaust/soundkonverter|{{pkg|soundkonverter}}}}<br />
* {{App|[[Wikipedia:SoX|SoX]]|Command line utility that can convert various formats of computer audio files into other formats.|http://sox.sourceforge.net/|{{Pkg|sox}}}}<br />
* {{App|XCFA|Tool to extract the content of audio CDs and convert files to various formats.|http://www.xcfa.tuxfamily.org/|{{AUR|xcfa}}}}<br />
<br />
==== Audio editors ====<br />
<br />
See also [[Wikipedia:Comparison of digital audio editors]].<br />
<br />
* {{App|[[Wikipedia:Audacity (audio editor)|Audacity]]|Program that lets you manipulate digital audio waveforms.|https://www.audacityteam.org/|{{Pkg|audacity}}}}<br />
* {{App|Deepin Voice Recorder|Voice recorder application for Deepin desktop.|https://www.deepin.org/en/original/deepin-voice-recorder/|{{Pkg|deepin-voice-recorder}}}}<br />
* {{App|GNOME Sound Recorder|The Sound Recorder application enables you to record and play .flac, .ogg (OGG audio, or .oga), and .wav sound files.|https://wiki.gnome.org/Apps/SoundRecorder|{{Pkg|gnome-sound-recorder}}}}<br />
* {{App|[[Wikipedia:Gnome Wave Cleaner|Gnome Wave Cleaner]]|Digital audio editor to denoise, dehiss and amplify audio files.|http://gwc.sourceforge.net/|{{AUR|gwc}}}}<br />
* {{App|Kwave|Sound editor for KDE.|http://kwave.sourceforge.net/|{{Pkg|kwave}}}}<br />
* {{App|mhWaveEdit|Graphical program for editing, playing and recording sound files.|https://github.com/magnush/mhwaveedit/|{{AUR|mhwaveedit}}}}<br />
* {{App|[[Wikipedia:Mp3splt|Mp3splt]]|Utility to split mp3, ogg vorbis and native FLAC files selecting a begin and an end time position, without decoding.|http://mp3splt.sourceforge.net/|CLI: {{Pkg|mp3splt}}, GUI: {{Pkg|mp3splt-gtk}}}}<br />
* {{App|Play it Slowly|Play back audio files at a different speed or pitch.|https://29a.ch/playitslowly|{{AUR|playitslowly}}}}<br />
* {{App|[[Wikipedia:Sweep (software)|Sweep]]|Audio editor and live playback tool.|http://www.metadecks.org/software/sweep/|{{Pkg|sweep}}}}<br />
* {{App|[[Wikipedia:WaveSurfer|WaveSurfer]]|Tool for sound visualization and manipulation. Typical applications are speech/sound analysis and sound annotation/transcription.|https://www.speech.kth.se/wavesurfer/|{{AUR|wavesurfer}}}}<br />
<br />
==== Digital audio workstations ====<br />
<br />
See also [[Professional audio]].<br />
<br />
* {{App|[[Wikipedia:Ardour (software)|Ardour]]|Multichannel hard disk recorder and digital audio workstation.|http://ardour.org/|{{Pkg|ardour}}}}<br />
* {{App|Bitwig Studio|Proprietary professional digital audio workstation.|http://bitwig.com/|{{AUR|bitwig-studio}}}}<br />
* {{App|Frinika|Digital audio workstation, features sequencer, soft-synths, realtime effects and audio recording.|http://www.frinika.com/|{{AUR|frinika}}}}<br />
* {{App|[[LMMS]]|Digital audio workstation which allows you to produce music with your computer.|https://lmms.io/|{{Pkg|lmms}}}}<br />
* {{App|[[Wikipedia:MusE|MusE]]|MIDI/Audio sequencer (digital audio workstation) with recording and editing capabilities, aims to be a complete multitrack virtual studio for Linux.|http://muse-sequencer.org/|{{AUR|muse}}}}<br />
* {{App|Non|Modular digital audio workstation composed of four main parts: Timeline, Mixer, Sequencer and Session Manager.|http://non.tuxfamily.org/|{{Grp|non-daw}}}}<br />
* {{App|[[Wikipedia:Qtractor|Qtractor]]|Qt-based hard disk recorder and digital audio workstation application that aims to provide digital audio workstation software simple enough for the average home user, and yet powerful enough for the professional user.|http://qtractor.sourceforge.net/qtractor-index.html|{{Pkg|qtractor}}}}<br />
* {{App|[[Wikipedia:REAPER|REAPER]]|Proprietary digital audio workstation, offering a full multitrack audio and MIDI recording, editing, processing, mixing and mastering toolset.|https://www.reaper.fm/|{{AUR|reaper-bin}}}}<br />
* {{App|[[Wikipedia:Rosegarden|Rosegarden]]|Digital audio workstation program developed with ALSA and Qt that acts as an audio and MIDI sequencer, scorewriter and musical composition and editing tool.|http://www.rosegardenmusic.com/|{{Pkg|rosegarden}}}}<br />
* {{App|[[Wikipedia:Tracktion|Tracktion]]|Proprietary digital audio workstation, specifically designed for the needs of modern music producers.|https://www.tracktion.com/|{{AUR|tracktion-waveform}}}}<br />
* {{App|[[Wikipedia:Traverso DAW|Traverso]]|Multitrack audio recorder and editor with a very clean and intuitive interface which supports ALSA and Jack as the sound driver.|https://traverso-daw.org/|{{AUR|traverso}}}}<br />
<br />
==== Audio analyzers ====<br />
<br />
* {{App|audioprism|Spectrogram tool for PulseAudio input and WAV files.|https://github.com/vsergeev/audioprism|{{AUR|audioprism}}}}<br />
* {{App|[[Wikipedia:BRP-PACU|BRP-PACU]]|Dual channel FFT based acoustic analysis tool to help engineers analyze live professional sound systems using the transfer function.|https://sourceforge.net/projects/brp-pacu/|{{AUR|brp-pacu}}}}<br />
* {{App|FMIT|Graphical utility for tuning your musical instruments, with error and volume history and advanced features.|http://gillesdegottex.github.io/fmit/|{{AUR|fmit}}}}<br />
* {{App|Friture|Real-time audio analyzer.|http://friture.org/|{{AUR|friture}}}}<br />
* {{App|rtspeccy|Real time audio spectrum analyzer.|https://www.uninformativ.de/projects/rtspeccy/|{{AUR|rtspeccy-git}}}}<br />
* {{App|sndpeek|Real-time audio visualization tool.|http://soundlab.cs.princeton.edu/software/sndpeek/|ALSA: {{AUR|sndpeek-alsa}}, JACK: {{AUR|sndpeek-jack}}}}<br />
* {{App|[[Wikipedia:Sonic Visualiser|Sonic Visualiser]]|Viewing and analyzing the contents of music audio files.|https://www.sonicvisualiser.org/|{{Pkg|sonic-visualiser}}}}<br />
* {{App|Spectrum3d|Displays a 3D audio spectrogram in real time from the microphone or an audio file.|http://spectrum3d.sourceforge.net/|{{AUR|spectrum3d}}}}<br />
* {{App|Spek|Helps to analyse your audio files by showing their spectrogram.|http://spek.cc/|{{AUR|spek}}}}<br />
<br />
==== Scorewriters ====<br />
<br />
See also [[LilyPond#Front-ends]] and [[Wikipedia:Comparison of scorewriters]].<br />
<br />
* {{App|[[Wikipedia:Aria Maestosa|Aria Maestosa]]|MIDI sequencer/editor. It lets you compose, edit and play MIDI files with a few clicks in a user-friendly interface offering score, keyboard, guitar, drum and controller views.|http://ariamaestosa.sourceforge.net/|{{AUR|ariamaestosa}}}}<br />
* {{App|[[Wikipedia:Canorus|Canorus]]|Music score editor. It supports an unlimited number and length of staffs, polyphony, a MIDI playback of notes, chord markings, lyrics, import/export filters to formats like MIDI, MusicXML, ABC Music, MusiXTeX and LilyPond.|https://sourceforge.net/projects/canorus/|{{Pkg|canorus}}}}<br />
* {{App|[[Wikipedia:Impro-Visor|Impro-Visor]]|Music notation program designed to help jazz musicians compose and hear solos similar to ones that might be improvised.|https://www.cs.hmc.edu/~keller/jazz/improvisor/|{{AUR|impro-visor}}}}<br />
* {{App|[[LilyPond]]|Music engraving program, devoted to producing the highest-quality sheet music possible.|http://lilypond.org/|{{Pkg|lilypond}}}}<br />
* {{App|[[Wikipedia:MuseScore|MuseScore]]|Create, playback, and print sheet music.|https://musescore.org/|{{Pkg|musescore}}}}<br />
* {{App|[[Wikipedia:TuxGuitar|TuxGuitar]]|Multitrack guitar tablature editor and player.|http://tuxguitar.com.ar/|{{AUR|tuxguitar}}}}<br />
<br />
==== Audio synthesis environments ====<br />
<br />
See also [[Wikipedia:Comparison of audio synthesis environments]].<br />
<br />
* {{App|Blue|Music composition environment for Csound, written in Java.|http://blue.kunstmusik.com/|{{AUR|csound-blue}}}}<br />
* {{App|Cabbage|Framework for audio software development using simple markup text and the Csound audio synthesis language.|http://cabbageaudio.com/|{{AUR|cabbage}}}}<br />
* {{App|[[Wikipedia:ChucK|ChucK]]|Strongly-timed, concurrent, and on-the-fly music programming language.|http://chuck.cs.princeton.edu/|{{Pkg|chuck}}}}<br />
* {{App|[[Wikipedia:Csound|Csound]]|Sound and music computing system.|https://csound.com/|{{Pkg|csound}}}}<br />
* {{App|CsoundQt|Frontend for Csound featuring a highlighting editor with autocomplete, interactive widgets and integrated help.|https://csoundqt.github.io/|{{Pkg|csoundqt}}}}<br />
* {{App|[[Wikipedia:Pure Data|Pure Data]]|Real-time music and multimedia environment.|http://msp.ucsd.edu/software.html|{{Pkg|pd}}}}<br />
* {{App|[[Wikipedia:SuperCollider|SuperCollider]]|Platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound.|https://supercollider.github.io/|{{Pkg|supercollider}}}}<br />
<br />
==== Sound generators ====<br />
<br />
This section contains [[Wikipedia:Drum machine|drum machines]], [[Wikipedia:Software sampler|software samplers]] and [[Wikipedia:Software synthesizer|software synthesizers]].<br />
<br />
* {{App|ams|Alsa Modular Synth. Realtime modular synthesizer and effect processor.|http://alsamodular.sourceforge.net/|{{Pkg|ams}}}}<br />
* {{App|[[Wikipedia:Amsynth|amsynth]]|Analog Modelling SYNTHesizer. Easy-to-use software synthesizer with a classic subtractive synthesizer topology.|https://amsynth.github.io/|{{Pkg|amsynth}}}}<br />
* {{App|[[Wikipedia:Din (din is noise)|DIN]]|Sound synthesizer and musical instrument.|http://dinisnoise.org/|{{Pkg|din}}}}<br />
* {{App|Drumstick|Set of MIDI tools: drum grid, MIDI player, virtual piano.|http://drumstick.sourceforge.net/|{{Pkg|drumstick}}}}<br />
* {{App|[[FluidSynth]]|Real-time software synthesizer based on the SoundFont 2 specifications.|http://www.fluidsynth.org/|{{Pkg|fluidsynth}}}}<br />
* {{App|Gigedit|Graphical instrument editor for sample based virtual instruments, based on the GigaStudio/Gigasampler file format.|http://doc.linuxsampler.org/Gigedit/|{{Pkg|gigedit}}}}<br />
* {{App|Helm|Software synthesizer to create electronic music on your computer.|http://tytel.org/helm/|{{Pkg|helm}}}}<br />
* {{App|[[Wikipedia:Hydrogen (software)|Hydrogen]]|Advanced drum machine to create drum sequences.|https://github.com/hydrogen-music/hydrogen|{{Pkg|hydrogen}}}}<br />
* {{App|JSampler|Java GUI for [[LinuxSampler]] software audio sampler.|http://jsampler.sourceforge.net/|{{Pkg|jsampler}}}}<br />
* {{App|[[Wikipedia:PySynth|PySynth]]|Suite of simple music synthesizers and helper scripts written in Python 3.|https://mdoege.github.io/PySynth/|{{AUR|python-pysynth-git}}}}<br />
* {{App|QMidiArp|Advanced MIDI arpeggiator, programmable step sequencer and LFO.|http://qmidiarp.sourceforge.net/|{{Pkg|qmidiarp}}}}<br />
* {{App|QMidiRoute|MIDI router and processor for ALSA.|http://alsamodular.sourceforge.net/|{{Pkg|qmidiroute}}}}<br />
* {{App|Qsampler|Qt GUI for [[LinuxSampler]] software audio sampler.|https://qsampler.sourceforge.io/|{{Pkg|qsampler}}}}<br />
* {{App|Qsynth|Qt GUI for Fluidsynth.|https://qsynth.sourceforge.io/|{{Pkg|qsynth}}}}<br />
* {{App|[[Timidity|TiMidity++]]|Software synthesizer, which can play MIDI files by converting them into PCM waveform data.|http://timidity.sourceforge.net/|{{Pkg|timidity++}}}}<br />
* {{App|Vee One Suite|Old-school software instruments: synthv1, a polyphonic subtractive synthesizer; samplv1, a polyphonic sampler synthesizer; drumkv1, yet another drum-kit sampler; padthv1, a polyphonic additive synthesizer.|http://www.rncbc.org/|{{Grp|vee-one}}}}<br />
* {{App|VMPK|Virtual MIDI Piano Keyboard. MIDI events generator and receiver. It doesn't produce any sound by itself, but can be used to drive a MIDI synthesizer.|http://vmpk.sourceforge.net/|{{Pkg|vmpk}}}}<br />
* {{App|[[Wikipedia:Yoshimi (synthesizer)|Yoshimi]]|Software synthesizer, a fork of ZynAddSubFX.|http://yoshimi.sourceforge.net/|{{Pkg|yoshimi}}}}<br />
* {{App|[[Wikipedia:ZynAddSubFX|ZynAddSubFX]]|Fully featured software synthesizer capable of making a countless number of instruments, from some common heard from expensive hardware to interesting sounds that you'll boost to an amazing universe of sounds.|http://zynaddsubfx.sourceforge.net/|{{Pkg|zynaddsubfx}}}}<br />
<br />
==== Music trackers ====<br />
<br />
* {{App|[[Wikipedia:Buzztrax|Buzztrax]]|Music studio to compose songs using only a computer with a soundcard.|http://buzztrax.org/|{{AUR|buzztrax}}}}<br />
* {{App|klystrack|Tracker for making C64/NES/Amiga-style chiptunes on a modern platform.|https://kometbomb.github.io/klystrack/|{{AUR|klystrack-git}}}}<br />
* {{App|[[Wikipedia:MilkyTracker|MilkyTracker]]|Music application for creating .MOD and .XM module files.|https://milkytracker.titandemo.org/|{{Pkg|milkytracker}}}}<br />
* {{App|[[Wikipedia:OpenMPT|OpenMPT]]|Tracker software to create and play back some great music on your computer.|https://openmpt.org/|{{AUR|openmpt}}}}<br />
* {{App|Radium|Music editor with a new type of interface.|https://users.notam02.no/~kjetism/radium/|{{AUR|radium}}}}<br />
* {{App|Schism Tracker|Create high quality music without the requirements of specialized, expensive equipment, and with a unique "finger feel" that is difficult to replicate in part.|http://schismtracker.org/|{{AUR|schismtracker}}}}<br />
<br />
==== DJ ====<br />
<br />
* {{App|Giada|Minimal, hardcore audio tool for DJs, live performers and electronic musicians.|https://giadamusic.com/|{{Pkg|giada}}}}<br />
* {{App|IDJC|Powerful yet easy to use source-client for individuals interested in streaming live radio shows over the Internet using Shoutcast or Icecast servers.|http://idjc.sourceforge.net/|{{AUR|idjc}}}}<br />
* {{App|Luppp|Music creation tool, intended for live use. The focus is on real time processing and a fast and intuitive workflow.|http://openavproductions.com/luppp/|{{Pkg|luppp}}}}<br />
* {{App|[[Wikipedia:Mixxx|Mixxx]]|Integrates the tools DJs need to perform creative live mixes with digital music files.|https://mixxx.org/|{{Pkg|mixxx}}}}<br />
* {{App|[[Seq24]]|Minimal loop based MIDI sequencer for a live performance with a very simple interface for editing and playing MIDI 'loops'.|http://filter24.org/seq24/|{{AUR|seq24-bzr}}}}<br />
* {{App|[[Wikipedia:xwax|xwax]]|Digital Vinyl System (DVS) for Linux. It allows DJs and turntablists to playback digital audio files (MP3, Ogg Vorbis, FLAC, AAC and more), controlled using a normal pair of turntables via timecoded vinyls.|http://xwax.org/|{{Pkg|xwax}}}}<br />
<br />
==== Audio effects ====<br />
<br />
* {{App|Calf Plugin Pack for JACK|Process and produce sounds using a set of plugins with JACK interface. ({{ic|calfjackhost}})|https://calf-studio-gear.org/|{{Pkg|calf}}}}<br />
* {{App|Carla|Audio plugin host, with support for many audio drivers and plugin formats.|https://kxstudio.linuxaudio.org/Applications:Carla|{{Pkg|carla}}}}<br />
* {{App|guitarix|Virtual guitar amplifier for JACK.|https://guitarix.org/|{{Pkg|guitarix2}}}}<br />
* {{App|Rakarrack|Richly featured multi-effects processor emulating a guitar effects pedalboard.|http://rakarrack.sourceforge.net/|{{AUR|rakarrack}}}}<br />
<br />
==== Audio visualizers ====<br />
<br />
* {{App|C.A.V.A.|Console-based audio visualizer for ALSA, MPD and PulseAudio.|https://karlstav.github.io/cava/|{{AUR|cava}}}}<br />
* {{App|Cavalcade|GTK+ GUI for C.A.V.A.|https://github.com/worron/cavalcade/|{{AUR|cavalcade}}}}<br />
* {{App|cli-visualizer|Highly configurable CLI-based audio visualizer.|https://github.com/dpayne/cli-visualizer|{{AUR|cli-visualizer}}}}<br />
* {{App|GLava|OpenGL audio spectrum visualizer. Its primary use case is for desktop windows or backgrounds.|https://github.com/wacossusca34/glava|{{AUR|glava-git}}}}<br />
* {{App|GLMViz|Fully configurable OpenGL music visualizer.|https://github.com/hannesha/GLMViz|{{AUR|glmviz-git}}}}<br />
* {{App|[[projectM]]|Music visualizer which uses 3D accelerated iterative image-based rendering.|http://projectm.sourceforge.net/|JACK: {{Pkg|projectm-jack}}, PulseAudio: {{Pkg|projectm-pulseaudio}}}}<br />
* {{App|[[Wikipedia:VSXu|VSXu]]|OpenGL-based (hardware-accelerated), modular programming environment with its main purpose to visualize music and create graphic effects in real-time.|http://www.vsxu.com/|{{AUR|vsxu}}}}<br />
<br />
==== Volume control ====<br />
<br />
See also [[PulseAudio#Front-ends]].<br />
<br />
* {{App|[[Wikipedia:alsamixer|alsamixer]]|Soundcard mixer for ALSA soundcard driver, with ncurses interface.|https://alsa-project.org/|{{Pkg|alsa-utils}}}}<br />
* {{App|ALSA Tray|Provides a systray icon and a command line interface for setting the volume of the ALSA Mixers.|https://projects.flogisoft.com/alsa-tray/|{{AUR|alsa-tray}}}}<br />
* {{App|AlsaVolume|Tray ALSA volume changer written using gtkmm.|https://github.com/Vitozz/cppAlsaVolume|{{AUR|cpp-alsa-volume}}}}<br />
* {{App|AMixST|Volume wheel using ALSA and Qt5.|https://github.com/FenixFyreX/amixst|{{AUR|amixst}}}}<br />
* {{App|GNOME ALSA Mixer|ALSA mixer for GNOME.|https://launchpad.net/gnome-alsamixer|{{Pkg|gnome-alsamixer}}}}<br />
* {{App|GVolWheel|Audio mixer which lets you control the volume through a tray icon.|https://sourceforge.net/projects/gvolwheel/|{{AUR|gvolwheel}}}}<br />
* {{App|KMix|KDE volume control program.|https://kde.org/applications/multimedia/kmix/|{{Pkg|kmix}}}}<br />
* {{App|MATE Volume Control|Audio mixer application and system tray applet for MATE to mix audio and adjust volume levels of various audio mixer devices.|https://github.com/mate-desktop/mate-media|{{Pkg|mate-media}}}}<br />
* {{App|PNMixer|A fork of Obmixer. It has many new features such as ALSA channel selection, connect/disconnect detection, shortcuts, etc.|https://github.com/nicklan/pnmixer/wiki|{{AUR|pnmixer}}}}<br />
* {{App|QasTools|Collection of desktop applications for the Linux sound system ALSA. It provides QasMixer (mixer), QasHctl (HCTL mixer) and QasConfig (configuration browser).|http://xwmw.org/qastools/|{{Pkg|qastools}}}}<br />
* {{App|Retrovol|Retro-looking volume setting tray applet.|https://github.com/pizzasgood/retrovol|{{AUR|retrovol}}}}<br />
* {{App|[[Volnoti]]|A lightweight volume notification daemon for GNU/Linux and other POSIX operating systems.|https://github.com/davidbrazdil/volnoti|{{AUR|volnoti}}}}<br />
* {{App|Volti|A GTK application for controlling audio volume from system tray with an internal mixer and support for multimedia keys that uses only ALSA.|https://github.com/gen2brain/volti|{{AUR|volti}}}}<br />
* {{App|Volume Icon|Another volume control for your system tray with channel selection, themes and an external mixer.|http://softwarebakery.com/maato/volumeicon.html|{{Pkg|volumeicon}}}}<br />
* {{App|VolWheel|A little application which lets you control the sound volume easily through a tray icon you can scroll on.|http://oliwer.net/b/volwheel.html|{{Pkg|volwheel}}}}<br />
* {{App|Xfce ALSA Panel Plugin|Simple ALSA volume control plugin for [[Xfce]]4 panel.|https://github.com/equeim/xfce4-alsa-plugin|{{AUR|xfce4-alsa-plugin}}}}<br />
<br />
==== CD ripping ====<br />
<br />
See [[Optical disc drive#Audio CD]].<br />
<br />
=== Video ===<br />
<br />
==== Video players ====<br />
<br />
See also [[Wikipedia:Comparison of video player software]].<br />
<br />
===== Console =====<br />
<br />
* {{App|[[FFmpeg|FFplay]]|Very simple and portable media player using the FFmpeg libraries and the SDL library.|http://ffmpeg.org/|{{Pkg|ffmpeg}}}}<br />
* {{App|[[GStreamer|gst-play-1.0]]|Simple command line playback testing tool for GStreamer.|https://gstreamer.freedesktop.org/|{{Pkg|gst-plugins-base-libs}}}}<br />
* {{App|[[MPlayer]]|Video player that supports a complete and versatile array of video and audio formats.|http://www.mplayerhq.hu/design7/news.html|{{Pkg|mplayer}}}}<br />
* {{App|[[mpv]]|Movie player based on MPlayer and mplayer2.|https://mpv.io/|{{Pkg|mpv}}}}<br />
* {{App|[[VLC media player]]|Command-line version of the famous video player that can play smoothly high definition videos in the TTY. The rc interface can be launched with {{ic|vlc -I rc}}, and the ncurses interface can be launched with {{ic|vlc -I ncurses}}.|https://www.videolan.org/vlc/|{{Pkg|vlc}}}}<br />
<br />
===== Graphical =====<br />
<br />
====== GStreamer-based ======<br />
<br />
* {{App|GNOME Twitch|Twitch client for GNOME using [[GStreamer]].|http://gnome-twitch.vinszent.com/|{{Pkg|gnome-twitch}}}}<br />
* {{App|[[Wikipedia:GNOME Videos|GNOME Videos]]|Media player (audio and video) for the GNOME desktop that uses [[GStreamer]]. Part of {{Grp|gnome}}.|https://wiki.gnome.org/Apps/Videos|{{Pkg|totem}}}}<br />
* {{App|Movie Monad|Free and simple to use video player made with Haskell using [[GStreamer]] and GTK+. Precompiled and no Haskell dependency in run-time. |https://lettier.github.io/movie-monad/|{{AUR|movie-monad}}}}<br />
* {{App|Pantheon Videos|Video player and library app designed for elementary OS using [[GStreamer]].|https://github.com/elementary/videos|{{Pkg|pantheon-videos}}}}<br />
* {{App|Parole|Modern media player based on the [[GStreamer]] framework.|http://docs.xfce.org/apps/parole/start|{{Pkg|parole}}}}<br />
* {{App|Rage|Video and audio player written with Enlightenment Foundation Libraries with some extra bells and whistles. Uses [[GStreamer]]|https://www.enlightenment.org/about-rage|{{AUR|rage}}}}<br />
* {{App|Snappy|Powerful media player with a minimalistic interface that uses [[GStreamer]].|https://wiki.gnome.org/Apps/Snappy|{{Pkg|snappy-player}}}}<br />
* {{App|Spivak|Karaoke player based on [[GStreamer]] and Qt5.|https://github.com/gyunaev/spivak|{{AUR|spivak}}}}<br />
* {{App|Xnoise|GTK+ and [[GStreamer]]-based media player for both audio and video with "a slick GUI, great speed and lots of features." (development ceased)|http://www.xnoise-media-player.com/|{{Pkg|xnoise}}}}<br />
<br />
====== mpv-based ======<br />
<br />
* {{App|Baka MPlayer|Free and open source, cross-platform, [[mpv]] based multimedia player (Qt 5).|http://bakamplayer.u8sand.net/|{{Pkg|baka-mplayer}}}}<br />
* {{App|Deepin Movie|Movie player for Deepin desktop based on [[mpv]].|https://www.deepin.org/en/original/deepin-movie/|{{Pkg|deepin-movie}}}}<br />
* {{App|GNOME MPV|Simple frontend for [[mpv]] (GTK+ 3).|https://gnome-mpv.github.io/|{{Pkg|gnome-mpv}}}}<br />
* {{App|Kawaii-Player|Audio/video manager and multimedia player (based on [[mpv]]) with PC-to-PC casting feature, along with functionalities of portable media server and torrent streaming server.|https://github.com/kanishka-linux/kawaii-player|{{AUR|kawaii-player}}}}<br />
* {{App|KittehPlayer|A YouTube-like video player based on Qt, QML and [[mpv]].|https://github.com/NamedKitten/KittehPlayer|{{AUR|kittehplayer}}}}<br />
* {{App|Media Player Classic Qute Theater|Clone of [[Wikipedia:Media Player Classic|Media Player Classic]] reimplimented in Qt and based on [[mpv]].|https://github.com/cmdrkotori/mpc-qt|{{AUR|mpc-qt}}}}<br />
* {{App|[[mpv]]|Very basic GUI for mpv. Can be launched with {{ic|mpv --player-operation-mode&#61;pseudo-gui}}.|https://mpv.io/|{{Pkg|mpv}}}}<br />
* {{App|[[Wikipedia:SMPlayer|SMPlayer]]|Qt multimedia player with extra features (CSS themes, YouTube integration, etc.) based on [[mpv]]. It can use [[MPlayer]] as alternative backend.|http://smplayer.sourceforge.net/|{{Pkg|smplayer}}}}<br />
* {{App|xt7-player-mpv|Qt/Gambas GUI to [[mpv]] with a rich set of configurable options including filters and drivers, ladspa plugins support as well as library/playlist managment, YouTube, online radios, podcasts, DVB-T and more.|https://github.com/kokoko3k/xt7-player-mpv|{{AUR|xt7-player-mpv}}}}<br />
<br />
====== MPlayer-based ======<br />
<br />
* {{App|GNOME MPlayer|Simple GTK+-based GUI for [[MPlayer]].|http://kdekorte.googlepages.com/gnomemplayer|{{Pkg|gnome-mplayer}}}}<br />
* {{App|[[Wikipedia:KMPlayer|KMPlayer]]|Simple KDE frontend for [[MPlayer]] and video player plugin for Konqueror. It can use [[Phonon]] as alternative backend.|http://kmplayer.kde.org/|{{Pkg|kmplayer}}}}<br />
* {{App|KPlayer|Multimedia player for KDE4 using [[MPlayer]] as a backend.|http://kplayer.sourceforge.net/|{{AUR|kplayer}}}}<br />
<br />
====== Other ======<br />
<br />
* {{App|[[Wikipedia:Dragon Player|Dragon Player]]|Simple video player for KDE based on [[Phonon]]. Part of the {{Grp|kdemultimedia}} group.|https://www.kde.org/applications/multimedia/dragonplayer/|{{Pkg|dragon}}}}<br />
* {{App|[[Wikipedia:Kaffeine|Kaffeine]]|Very versatile KDE media player that, by default, utilizes [[VLC]] as its backend and has excellent support of digital TV (DVB).|https://www.kde.org/applications/multimedia/kaffeine/|{{Pkg|kaffeine}}}}<br />
* {{App|Kaku|Highly integrated music player supports different online platform like YouTube, SoundCloud, Vimeo and more. Based on the [https://electronjs.org/ Electron] platform.|http://kaku.rocks/|{{AUR|kaku-bin}}}}<br />
* {{App|[[Kodi]]|Media player and entertainment hub for digital media.|https://kodi.tv/|{{Pkg|kodi}}}}<br />
* {{App|Minitube|YouTube desktop application written in C++ using [[Phonon]] and Qt.|https://flavio.tordini.org/minitube|{{Pkg|minitube}}}}<br />
* {{App|QMPlay2|Qt based video player. It can play and stream all formats supported by [[FFmpeg]] and libmodplug. It has on integrated module system, which includes a YouTube browser.|http://zaps166.sourceforge.net/?app&#61;QMPlay2|{{AUR|qmplay2}}}}<br />
* {{App|QtAV Player|Simple media player based on QtAV and [[FFmpeg]]. Run with {{ic|Player}} or {{ic|QMLPlayer}}.|http://www.qtav.org/|{{Pkg|qtav}}}}<br />
* {{App|[[Wikipedia:tvtime|tvtime]]|High quality television application for use with video capture cards.|https://linuxtv.org/|{{Pkg|tvtime}}}}<br />
* {{App|[[VLC media player]]|Middleweight video player with support for a wide variety of audio and video formats.|https://www.videolan.org/vlc/|{{Pkg|vlc}}}}<br />
* {{App|[[Wikipedia:xine|xine]]|Free multimedia player.|http://www.xine-project.org|{{Pkg|xine-ui}}}}<br />
<br />
==== Video converters ====<br />
<br />
See also [[Wikipedia:Comparison of video converters]].<br />
<br />
===== Console =====<br />
<br />
* {{App|[[Wikipedia:Avidemux|Avidemux CLI]]|Free video editor designed for simple cutting, filtering and encoding tasks.|http://fixounet.free.fr/avidemux/|{{Pkg|avidemux-cli}}}}<br />
* {{App|[[FFmpeg]]|Complete, cross-platform solution to record, convert and stream audio and video.|http://ffmpeg.org/|{{Pkg|ffmpeg}}}}<br />
* {{App|[[Wikipedia:HandBrake|HandBrake CLI]]|Simple yet powerful video transcoder ideal for batch mkv/x264 ripping.|http://handbrake.fr/|{{Pkg|handbrake-cli}}}}<br />
* {{App|[[Wikipedia:MEncoder|MEncoder]]|Free command line video decoding, encoding and filtering tool.|http://mplayerhq.hu/|{{Pkg|mencoder}}}}<br />
* {{App|[[Wikipedia:MKVToolNix|MKVToolNix CLI]]|Set of tools to create, edit and inspect Matroska files.|https://mkvtoolnix.download/|{{Pkg|mkvtoolnix-cli}}}}<br />
* {{App|Transcode|Command line tool for video stream processing.|https://bitbucket.org/france/transcode-tcforge|{{Pkg|transcode}}}}<br />
<br />
===== Graphical =====<br />
<br />
* {{App|Ciano|Simple multimedia file converter.|https://github.com/robertsanseries/ciano|{{AUR|ciano-git}}}}<br />
* {{App|Curlew|Easy to use multimedia converter written in Python and GTK3 and uses FFmpeg.|https://curlew.sourceforge.io/|{{AUR|curlew}}}}<br />
* {{App|FFmpegYAG|Advanced GUI for the popular FFmpeg audio/video encoding tool.|https://sourceforge.net/projects/ffmpegyag/|{{AUR|ffmpegyag}}}}<br />
* {{App|FF Multi Converter|Simple graphical application which enables you to convert audio, video, image and document files between all popular formats, by utilizing other command-line tools.|https://sites.google.com/site/ffmulticonverter/|{{AUR|ffmulticonverter}}}}<br />
* {{App|[[Wikipedia:HandBrake|HandBrake]]|Simple yet powerful video transcoder ideal for batch mkv/x264 ripping. GTK+ version.|http://handbrake.fr/|{{Pkg|handbrake}}}}<br />
* {{App|[[Wikipedia:MKVToolNix|MKVToolNix GUI]]|Qt based GUI to create, edit and inspect Matroska files.|https://mkvtoolnix.download/|{{Pkg|mkvtoolnix-gui}}}}<br />
* {{App|QWinFF|Qt5 GUI for FFmpeg that can read audio and video files in various formats and convert them into other formats.|http://qwinff.github.io/|{{AUR|qwinff}}}}<br />
* {{App|traGtor|Convert all your audio and video files through FFmpeg without using a terminal.|http://mein-neues-blog.de/tragtor-gui-for-ffmpeg/|{{AUR|tragtor}}}}<br />
* {{App|Transmageddon|Simple python application for transcoding video into formats supported by GStreamer.|http://www.linuxrising.org/ |{{Pkg|transmageddon}}}}<br />
* {{App|WinFF|Graphical video and audio batch converter using FFmpeg.|https://www.biggmatt.com/winff/|{{AUR|winff}}}}<br />
<br />
==== Video editors ====<br />
<br />
See also [[Wikipedia:Comparison of video editing software]].<br />
<br />
* {{App|[[Wikipedia:Avidemux|Avidemux]]|Free video editor designed for simple cutting, filtering and encoding tasks.|http://fixounet.free.fr/avidemux/| {{Pkg|avidemux-qt}}}}<br />
* {{App|[[Wikipedia:Blender_(software)#Video_editing|Blender]]|Fully integrated 3D graphics creation suite with a built-in non-linear video editor.|http://www.blender.org/|{{Pkg|blender}}}}<br />
* {{App|[[Wikipedia:Cinelerra|Cinelerra (Community Version)]]|Professional video editing and compositing environment.|http://cinelerra-cv.org/|{{Pkg|cinelerra-cv}}}}<br />
* {{App|[[Wikipedia:Da_Vinci_Systems#da_Vinci_Resolve|Davinci Resolve]]|Professional A/V post-production software suite.|https://www.blackmagicdesign.com/products/davinciresolve/|{{AUR|davinci-resolve}}}}<br />
* {{App|[[Wikipedia:Flowblade|Flowblade]]|Multitrack non-linear video editor for Linux, designed to provide a fast, robust editing experience.|https://github.com/jliljebl/flowblade|{{AUR|flowblade}}}}<br />
* {{App|[[Wikipedia:Kdenlive|Kdenlive]]|Non-linear video editor designed for basic to semi-professional work.|http://kdenlive.org/|{{Pkg|kdenlive}}}}<br />
* {{App|[[Wikipedia:Lightworks|Lightworks]]|Professional proprietary non-linear editing system for editing and mastering digital video in various formats.|http://www.lwks.com/|{{AUR|lwks}}}}<br />
* {{App|[[Wikipedia:LiVES|LiVES]]|Video editor and VJ (live performance) platform.|http://lives-video.com/|{{AUR|lives}}}}<br />
* {{App|[[Wikipedia:Natron (software)|Natron]]|Open-source compositing software. Node-graph based. Similar in functionalities to Adobe After Effects and Nuke by The Foundry.|https://natrongithub.github.io/|{{AUR|natron}}}}<br />
* {{App|[[Wikipedia:OpenShot_Video_Editor|OpenShot]]|Non-linear video editor based on MLT framework.|http://www.openshotvideo.com/|{{Pkg|openshot}}}}<br />
* {{App|[[Wikipedia:Pitivi|Pitivi]]|Video editor designed to be intuitive and integrate well in the GNOME desktop.|http://www.pitivi.org/ |{{Pkg|pitivi}}}}<br />
* {{App|[[Wikipedia:Shotcut|Shotcut]]|Shotcut is a free, open source, cross-platform video editor.|http://www.shotcut.org/ |{{Pkg|shotcut}}}}<br />
* {{App|VidCutter|Fast lossless media cutter + joiner w/ frame-accurate SmartCut options powered by mpv, FFmpeg via a sleek Qt5 GUI.|https://vidcutter.ozmartians.com/|{{AUR|vidcutter}}}}<br />
<br />
==== Subtitles ====<br />
<br />
See also [[Wikipedia:Comparison of subtitle editors]].<br />
<br />
* {{App|[[Wikipedia:Aegisub|Aegisub]]|Subtitle editor.|https://github.com/Aegisub/Aegisub|{{Pkg|aegisub}}}}<br />
* {{App|Gaupol|Full-featured subtitle editor.|https://otsaloma.io/gaupol/|{{Pkg|gaupol}}}}<br />
* {{App|[[Wikipedia:Gnome Subtitles|Gnome Subtitles]]|Video subtitle editor for GNOME.|http://www.gnomesubtitles.org/|{{Pkg|gnome-subtitles}}}}<br />
* {{App|Jubler|Open-source multiplatform subtitle editor written in Java.|http://www.jubler.org|{{AUR|jubler}}}}<br />
* {{App|Penguin Subtitle Player|Standalone subtitle player that provides a translucent window which always stays on the top so subtitles can be shown on top of the video without blocking anything.|https://github.com/carsonip/Penguin-Subtitle-Player|{{AUR|penguin-subtitle-player-git}}}}<br />
* {{App|subdl|Command-line tool for downloading subtitles from opensubtitles.org.|https://github.com/akexakex/subdl|{{Pkg|subdl}}}}<br />
* {{App|SubDownloader|Automatic download/upload of subtitles using fast hashing.|https://github.com/subdownloader/subdownloader|{{Pkg|subdownloader}}}}<br />
* {{App|Subtitle Composer|Subtitle editor with Qt 5 based GUI supporting various formats, features different player backends, able to display wave form.|https://github.com/maxrd2/subtitlecomposer|{{AUR|subtitlecomposer}}}}<br />
* {{App|[[Wikipedia:Subtitle_Edit|Subtitle Edit]]|Subtitle editing program. Written in C# using mono.|https://github.com/SubtitleEdit/subtitleedit|{{AUR|subtitleedit}}}}<br />
* {{App|Subtitle Editor|GTK+3 tool to edit subtitles for GNU/Linux/*BSD.|http://kitone.github.io/subtitleeditor/|{{Pkg|subtitleeditor}}}}<br />
* {{App|SubtitlesPrinter|Print subtitles above a X-screen, independently of the video player.|https://github.com/OlivierMarty/SubtitlesPrinter|{{AUR|subtitles-printer-git}}}}<br />
<br />
==== Screencast ====<br />
<br />
See [[Screen capture#Screencast software]].<br />
<br />
==== Webcam ====<br />
<br />
See also [[FFmpeg#Recording webcam]] and [[Wikipedia:Comparison of webcam software]].<br />
<br />
* {{App|[[Wikipedia:Cheese (software)|Cheese]]|Take photos and videos with your webcam, with fun graphical effects.|https://wiki.gnome.org/Apps/Cheese|{{Pkg|cheese}}}}<br />
* {{App|fswebcam|Small and simple command line webcam software that generates images for a webcam.|https://www.sanslogic.co.uk/fswebcam/|{{AUR|fswebcam}}}}<br />
* {{App|[[Wikipedia:Guvcview|Guvcview]]|Simple interface for capturing and viewing video from v4l2 devices.|http://guvcview.sourceforge.net/|GTK+: {{Pkg|guvcview}}, Qt: {{Pkg|guvcview-qt}}}}<br />
* {{App|Kamoso|Webcam recorder from KDE community.|https://userbase.kde.org/Kamoso|{{Pkg|kamoso}}}}<br />
* {{App|MJPG-streamer|Command line application which can be used to stream M-JPEG over an IP-based network from a webcam to various types of viewers.|https://github.com/jacksonliam/mjpg-streamer|{{AUR|mjpg-streamer}}}}<br />
* {{App|[[Motion]]|Highly configurable program that monitors video signals from many types of cameras. It is able to detect if a significant part of the picture has changed; in other words, it can detect motion.|https://motion-project.github.io/|{{AUR|motion}}}}<br />
* {{App|Pantheon Camera|Camera app designed for elementary OS.|https://github.com/elementary/camera|{{AUR|pantheon-camera-git}}}}<br />
* {{App|QtCAM|Webcam software with more than 10 image control settings, extension settings and color space switching.|https://www.e-consystems.com/opensource-linux-webcam-software-application.asp|{{AUR|qtcam-git}}}}<br />
* {{App|v4l2ucp|Universal control panel for V4L2 devices.|http://v4l2ucp.sourceforge.net/|{{Pkg|v4l2ucp}}}}<br />
* {{App|v4l-utils|Provides a series of utilities for media devices.|https://linuxtv.org/|{{Pkg|v4l-utils}}}}<br />
* {{App|Webcamoid|Full featured webcam suite.|https://webcamoid.github.io/|{{AUR|webcamoid}}}}<br />
* {{App|ZArt|GUI for G'MIC real-time manipulations on the output of a webcam.|https://gmic.eu/|{{Pkg|zart}}}}<br />
<br />
==== DVD authoring ====<br />
<br />
See also [[Wikipedia:List of DVD authoring applications]].<br />
<br />
* {{App|Bombono DVD|DVD authoring program with nice and clean GUI.|http://www.bombono.org/|{{AUR|bombono-dvd}}}}<br />
* {{App|[[Wikipedia:DeVeDe|Devede]]|Program to create VideoDVDs and CDs.|http://www.rastersoft.com/programas/devede.html|{{Pkg|devede}}}}<br />
* {{App|[[Wikipedia:DVDStyler|DVDStyler]]|DVD authoring application for the creation of professional-looking DVDs.|https://www.dvdstyler.org/|{{AUR|dvdstyler}}}}<br />
<br />
==== DVD ripping ====<br />
<br />
See [[Optical disc drive#DVD-Video]].<br />
<br />
=== Collection managers ===<br />
<br />
* {{App|Data Crow|Media cataloger and media organizer.|http://datacrow.net/|{{AUR|datacrow}}}}<br />
* {{App|FileBot|The ultimate tool for organizing and renaming your movies, tv shows or anime, and music well as downloading subtitles and artwork.|https://github.com/filebot/filebot|{{AUR|filebot}}}}<br />
* {{App|[[Wikipedia:GCstar|GCstar]]|GNOME application for organizing various collections (board games, comic books, movies, stamps, etc.).|http://www.gcstar.org/|{{AUR|gcstar}}}}<br />
* {{App|Griffith|Movie collection manager application.|https://gitlab.com/Strit/griffith|{{AUR|griffith}}}}<br />
* {{App|MediaElch|Media manager for Kodi. Information about movies, TV shows, concerts and music are stored as nfo files.|https://www.kvibes.de/en/mediaelch/|{{Pkg|mediaelch}}}}<br />
* {{App|[[Wikipedia:Tellico|Tellico]]|KDE application for organizing various collections (books, video, music, coins, etc.).|http://tellico-project.org/|{{Pkg|tellico}}}}<br />
* {{App|tinyMediaManager|Media management tool to provide metadata for Kodi.|https://tinymediamanager.org/|{{AUR|tiny-media-manager}}}}<br />
* {{App|vMovieDB|Movie collection manager for the Gnome desktop.|https://sourceforge.net/projects/vmoviedb/|{{Pkg|vmoviedb}}}}<br />
<br />
=== Media servers ===<br />
<br />
* {{App|Airsonic|Web-based media streamer, providing ubiquitous access to your music. (Fork of Subsonic.)|https://airsonic.github.io/|{{AUR|airsonic}}}}<br />
* {{App|[[Emby]]|Proprietary media server, which automatically converts and streams your media on-the-fly to play on any device.|https://emby.media/|{{Pkg|emby-server}}}}<br />
* {{App|forked-daapd|DAAP (iTunes) and MPD media server with support for AirPlay devices, Apple Remote, Chromecast, Spotify and internet radio.|http://ejurgensen.github.io/forked-daapd/|{{AUR|forked-daapd}}}}<br />
* {{App|Gerbera|UPnP Media Server to stream your media to devices on your home network. (Fork of MediaTomb.)|https://gerbera.io/|{{AUR|gerbera}}}}<br />
* {{App|[[Icecast]]|Streaming media (audio/video) server which currently supports Ogg (Vorbis and Theora), Opus, WebM and MP3 streams.|https://icecast.org/|{{Pkg|icecast}}}}<br />
* {{App|[[Plex]]|Proprietary media server, which organizes your personal video, music, and photo collections and streams them to all of your devices.|https://www.plex.tv/|{{AUR|plex-media-server}}}}<br />
* {{App|[[ReadyMedia]]|Simple media server software, with the aim of being fully compliant with DLNA/UPnP-AV clients.|https://sourceforge.net/projects/minidlna/|{{Pkg|minidlna}}}}<br />
* {{App|[[Rygel]]|UPnP AV MediaServer and MediaRenderer that allows you to easily share audio, video and pictures, and control of media player on your home network.|https://wiki.gnome.org/Projects/Rygel|{{Pkg|rygel}}}}<br />
* {{App|Serviio|Proprietary media server, which allows you to stream your media files (music, video or images) to renderer devices (e.g. a TV set, Bluray player, games console or mobile phone) on your connected home network.|http://serviio.org/|{{AUR|serviio}}}}<br />
* {{App|[[Subsonic]]|Proprietary media server to stream from your own computer.|http://www.subsonic.org/|{{AUR|subsonic}}}}<br />
* {{App|[[Tvheadend]]|TV streaming server and recorder supporting DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, ISDB-T, IPTV, SAT>IP and HDHomeRun as input sources.|https://tvheadend.org/|{{AUR|tvheadend}}}}<br />
* {{App|[[Universal Media Server]]|UPnP media server, which is capable of sharing video, audio and images between most modern devices. (Fork of PS3 Media Server.)|http://www.universalmediaserver.com/|{{AUR|ums}}}}<br />
<br />
=== Metadata ===<br />
<br />
* {{App|[[Wikipedia:ExifTool|ExifTool]]|Command-line application for reading, writing and editing meta information in a wide variety of files.|https://sno.phy.queensu.ca/~phil/exiftool/|{{Pkg|perl-image-exiftool}}}}<br />
* {{App|Exiv2|Command line utility to manage image metadata. It provides fast and easy read and write access to the Exif, IPTC and XMP metadata and the ICC Profile embedded within digital images in various formats.|http://exiv2.org/|{{Pkg|exiv2}}}}<br />
* {{App|[[Wikipedia:FFmpeg|ffprobe]]|Gather information from multimedia streams and print it in human- and machine-readable fashion.|https://ffmpeg.org/ffprobe.html|{{Pkg|ffmpeg}}}}<br />
* {{App|jhead|Exif jpeg header manipulation tool.|http://sentex.net/~mwandel/jhead/|{{Pkg|jhead}}}}<br />
* {{App|MediaConch|Implementation checker, policy checker, reporter, and fixer.|https://mediaarea.net/MediaConch|CLI: {{AUR|mediaconch}}, GUI: {{AUR|mediaconch-gui}}}}<br />
* {{App|[[Wikipedia:MediaInfo|MediaInfo]]|Convenient unified display of the most relevant technical and tag data for video and audio files.|https://mediaarea.net/en/MediaInfo|CLI: {{Pkg|mediainfo}}, GUI: {{Pkg|mediainfo-gui}}}}<br />
* {{App|pyExifToolGUI|Graphical frontend for ExifTool, which reads and writes all kind of metadata tags from/to image files.|https://hvdwolf.github.io/pyExifToolGUI/|{{AUR|pyexiftoolgui-git}}}}<br />
* {{App|[[Wikipedia:libsndfile|sndfile-info]]|Obtaining information about the contents of an audio file.|http://mega-nerd.com/libsndfile/|{{Pkg|libsndfile}}}}<br />
<br />
=== Mobile device managers ===<br />
<br />
* {{App|Android File Transfer|Interactive [[Media Transfer Protocol]] client with Qt5 GUI.|https://whoozle.github.io/android-file-transfer-linux/|{{Pkg|android-file-transfer}}}}<br />
* {{App|[[Wikipedia:Gnokii|gnokii]]|Tools and user space driver for use with mobile phones.|http://www.gnokii.org/|{{Pkg|gnokii}}}}<br />
* {{App|gMTP|Simple MP3 and media player client for [[Media Transfer Protocol]].|https://gmtp.sourceforge.io/|{{Pkg|gmtp}}}}<br />
* {{App|GNOME Phone Manager|Control your mobile phone from your GNOME desktop.|https://wiki.gnome.org/PhoneManager|{{Pkg|gnome-phone-manager}}}}<br />
* {{App|[[Wikipedia:gtkpod|gtkpod]]|GUI for Apple's iPod using GTK+. It allows you to import your existing iTunes database, add songs, podcasts, videos and cover art, and to edit ID3 tags.|https://sourceforge.net/projects/gtkpod/|{{AUR|gtkpod}}}}<br />
* {{App|KDE Connect|Aims to communicate all your devices.|https://community.kde.org/KDEConnect|{{Pkg|kdeconnect}}}}<br />
* {{App|Modem Manager GUI|Control EDGE/3G/4G broadband modem specific functions.|http://linuxonly.ru/page/modem-manager-gui|{{Pkg|modem-manager-gui}}}}<br />
* {{App|Wammu|Manage data in your cell phone such as contacts, calendar or messages.|https://wammu.eu/|{{Pkg|wammu}}}}<br />
<br />
=== Optical disc burning ===<br />
<br />
See [[Optical disc drive#Burning CD/DVD/BD with a GUI]].</div>Cknight70https://wiki.archlinux.org/index.php?title=Steam/Game-specific_troubleshooting&diff=544963Steam/Game-specific troubleshooting2018-09-29T22:39:40Z<p>Cknight70: Added another fix to Alien Isolation</p>
<hr />
<div>[[Category:Gaming]]<br />
[[ja:Steam/ゲーム別のトラブルシューティング]]<br />
== Introduction ==<br />
<br />
See [[Steam/Troubleshooting]] first.<br />
<br />
This page assumes familiarity with the [[Steam#Directory structure]], [[Steam#Launch options]], [[environment variables]], the [[Steam runtime]] and [[Steam/Troubleshooting#Debugging shared libraries|shared libraries]]. The {{ic|''GAME''}} pseudo-variable is used to refer to a game's directory. When the text reads "''run the game with {{ic|1=FOO=bar}}''" it is implied that you either update your launch options or run the game from the command-line with the environment variable.<br />
<br />
== Contributing ==<br />
<br />
* Use "game directory" or the {{ic|''GAME''}} pseudo-variable to refer to a game's directory.<br />
* Link bug reports and sources of workarounds.<br />
<br />
== Other sources ==<br />
<br />
The following links offer even more fixes and tweaks for various games which would otherwise exceed this article's purpose:<br />
<br />
* [https://pcgamingwiki.com/wiki/Home PC Gaming Wiki]<br />
<br />
== Common steps ==<br />
<br />
=== OpenSSL 1.0 setup ===<br />
<br />
Some Steam games are built against OpenSSL 1.0. ({{bug|53618}})<br />
<br />
Install {{Pkg|lib32-openssl-1.0}} and run the game with {{ic|1=LD_LIBRARY_PATH=/usr/lib/openssl-1.0}}.<br />
<br />
=== Adobe Air setup ===<br />
<br />
The package {{AUR|adobe-air-sdk}} installs Adobe Air not in the place where the game expects it to be, fix this by creating the following symlink:<br />
<br />
# ln -s "/opt/adobe-air-sdk/runtimes/air/linux/Adobe AIR" "/opt/Adobe AIR"<br />
<br />
Adobe AIR requires you to accept its EULA by creating the file {{ic|~/.appdata/Adobe/AIR/eulaAccepted}} containing {{ic|2}}.<br />
<br />
=== Steam Link ===<br />
<br />
Currently Steam Link does not work with Wayland. You will only see a blank screen or even flickering when connecting to a Steam host running on Wayland. So you have to disable Wayland in /etc/gdm/custom.conf:<br />
<br />
WaylandEnable=false<br />
<br />
And reboot before trying again.<br />
<br />
== Games ==<br />
<br />
=== Alien Isolation ===<br />
<br />
==== Missing libpcre.so.3 and libidn.so.11 ====<br />
<br />
$ ln -s /usr/lib/libpcre.so '''GAME''/lib/x86_64/libpcre.so.3'<br />
$ ln -s /usr/lib/libidn.so '''GAME''/lib/x86_64/libidn.so.11'<br />
<br />
Append {{ic|./lib/x86_64}} to your {{ic|LD_LIBRARY_PATH}}.[https://steamcommunity.com/app/214490/discussions/0/154644705028020291/]<br />
<br />
=== Amnesia: The Dark Descent ===<br />
<br />
Dependencies:<br />
[https://steamcommunity.com/app/221410/discussions/0/864957183198111387/]<br />
<br />
* {{AUR|lib32-freealut}}<br />
* {{pkg|lib32-glu}}<br />
* {{pkg|lib32-libxmu}}<br />
* {{pkg|lib32-sdl_ttf}}<br />
<br />
=== And Yet It Moves ===<br />
<br />
Dependencies:<br />
<br />
* {{Pkg|lib32-libjpeg6-turbo}}<br />
* {{Pkg|lib32-libpng12}}<br />
* {{Pkg|lib32-libtheora}}<br />
* {{Pkg|lib32-libtiff4}}<br />
<br />
==== Game does not start ====<br />
<br />
When the game refuses to launch and prints one of the following error messages:<br />
<br />
readlink: extra operand ‘Yet’<br>Try 'readlink --help' for more information.<br />
<br />
This script must be run as a user with write priviledges to game directory<br />
<br />
Open {{ic|''GAME''/AndYetItMovesSteam.sh}} and surround {{ic|${BASH_SOURCE[0]} }} in the following line with double quotes.<br />
<br />
ayim_dir="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")"<br />
<br />
=== Anodyne ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|adobe-air-sdk}}, follow [[#Adobe Air setup]]<br />
* {{pkg|xterm}} (probably not required)<br />
<br />
==== Play with a controller: joy2key configuration ====<br />
<br />
Configuration example to play Anodyne with an XBox 360 Wireless Controller<br />
<br />
COMMON<br />
-dev /dev/input/js0<br />
-X<br />
-thresh -18000 18000 -18000 18000 -18000 18000 -18000 18000 -18000 18000 -18000 18000 -18000 18000 -18000 18000<br />
-axis Left Right Up Down blank blank blank blank blank blank blank blank Left Right Up Down<br />
-buttons c x Return<br />
<br />
Save this to {{ic|~/.joy2keyrc}} and start joy2key after you start Anodyne<br />
<br />
joy2key -rcfile ~/.joy2keyrc<br />
<br />
=== Anomaly Warzone Earth ===<br />
<br />
==== Leave fullsrceen ====<br />
<br />
There are no ingame settings for this, but fullscreen can be toggled with Alt-Enter<br />
<br />
==== Infinite loading ====<br />
<br />
Create file {{ic|loadfix.c}} next to the game executable: [https://steamcommunity.com/app/282070/discussions/0/610573751159186268/?ctp=4#c530647080133257413 src]<br />
<br />
#define _GNU_SOURCE <br />
#include <dlfcn.h> <br />
#include <semaphore.h> <br />
#include <stdio.h> <br />
#include <time.h> <br />
#include <unistd.h> <br />
static int (*_realSemTimedWait)(sem_t *, const struct timespec *) = NULL; <br />
<br />
int sem_timedwait(sem_t *sem, const struct timespec *abs_timeout)<br />
{ <br />
if (abs_timeout->tv_nsec >= 1000000000)<br />
{ <br />
//fprintf(stderr, "to: %lu:%lu\n", abs_timeout->tv_sec, abs_timeout->tv_nsec); <br />
((struct timespec *)abs_timeout)->tv_nsec -= 1000000000; <br />
((struct timespec *)abs_timeout)->tv_sec++; <br />
} <br />
return _realSemTimedWait(sem, abs_timeout); <br />
} <br />
<br />
__attribute__((constructor)) void init(void) <br />
{<br />
_realSemTimedWait = dlsym(RTLD_NEXT, "sem_timedwait");<br />
}<br />
<br />
Compile with {{ic|gcc -m32 -o loadfix.so loadfix.c -ldl -shared -fPIC -Wall -Wextra}}<br />
<br />
Launch with {{ic|1=LD_PRELOAD=$LD_PRELOAD:./loadfix.so %command%}}<br />
<br />
==== Gamepad not working ====<br />
<br />
You have to enable keyboard control and map gamepad to keys.<br />
<br />
Config for Steam: {{ic|steam://controllerconfig/91200/1498735506}}<br />
<br />
=== Aquaria ===<br />
<br />
==== Mouse pointer gets stuck in one direction ====<br />
<br />
If the mouse pointer gets stuck in one direction, make sure {{ic|''GAME''/usersettings.xml}} contains {{ic|1=<JoystickEnabled on="0" />}}.<br />
<br />
If that does not fix the issue, try unplugging any joysticks or joystick adapter devices you have plugged in.<br />
<br />
=== ARK: Survival Evolved ===<br />
<br />
==== Game does not start, displays text window with unreadable text ====<br />
<br />
Run the game with {{ic|1=MESA_GL_VERSION_OVERRIDE=4.0 MESA_GLSL_VERSION_OVERRIDE=400}}.<br />
<br />
==== Gray water ====<br />
<br />
Download the TheCenter map and copy {{ic|Water_DepthBlur_MIC.uasset}} from that map into TheIsland as described [https://www.gamingonlinux.com/articles/heres-a-way-to-fix-the-broken-water-in-ark-survival-evolved-on-linux.10530 here].<br />
<br />
Ragnarok uses TheIsland's texture, so the same procedure fixes the issue on Ragnarok as well.<br />
<br />
==== Segmentation fault on startup ====<br />
<br />
Caused by the games packaged libopenal. Use system libopenal to solve the segfault by running the game with with {{ic|1=LD_PRELOAD=/usr/lib/libopenal.so.1}}<br />
<br />
=== Audiosurf 2 ===<br />
<br />
==== error. unable to load song <filename> ,came back with zero duration ====<br />
<br />
If you get this in your log, install {{pkg|pulseaudio-alsa}}.<br />
<br />
=== BADLAND: Game of the Year Edition ===<br />
<br />
Refer to [[#Missing libcurl.so.4 or version CURL_OPENSSL_3 not found]].<br />
<br />
=== Beat Cop ===<br />
<br />
==== "BeatCop.x86_64" is not responding ====<br />
<br />
Run {{ic|BeatCop.x86}} instead of {{ic|BeatCop.x86_64}}.<br />
<br />
=== Binding of Isaac: Rebirth ===<br />
<br />
==== No sound ====<br />
<br />
{{Note|This also helps with Never Alone (Kisima Ingitchuna) and No Time to Explain.}}<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
Adjust the audio levels in the game options.<br />
<br />
=== BioShock Infinite ===<br />
<br />
==== Game launching on wrong monitor in fullscreen mode ====<br />
<br />
Add the following launch option:<br />
--eon_force_display=1<br />
<br />
Various more fixes and tweaks can be found [https://pcgamingwiki.com/wiki/BioShock_Infinite here]<br />
<br />
=== BLACKHOLE ===<br />
<br />
Refer to [[#Missing libcurl.so.4 or version CURL_OPENSSL_3 not found]].<br />
<br />
=== Black Mesa ===<br />
<br />
Install {{AUR|lib32-gperftools}} for 32bit version of libtcmalloc_minimal.so.4 which is needed [https://steamcommunity.com/app/362890/discussions/1/340412628175324858/?ctp=7 Source].<br />
<br />
=== Block'hood ===<br />
<br />
==== White screen on startup ====<br />
<br />
When launched the game may only display a white screen with no interface and no way to play the game. Add "-screen-fullscreen 0" to launch options.<br />
<br />
=== The Book of Unwritten Tales ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|lib32-jasper}}<br />
* {{AUR|lib32-libxaw}}<br />
<br />
If the game does not start, uncheck: ''Properties > Enable Steam Community In-Game''.<br />
<br />
The game is known to segfault when opening the settings and possibly during or before playing. A workaround from the [http://steamcommunity.com/app/221410/discussions/3/846939071081758230/#p2 Steam discussions] is to replace the game's {{ic|RenderSystem_GL.so}} with one from Debian's repositories. To do that download [https://launchpad.net/ubuntu/+archive/primary/+files/libogre-1.7.4_1.7.4-3_i386.deb this deb file], and extract it with {{AUR|dpkg}}:<br />
<br />
$ dpkg -x libogre-*.deb outdir<br />
<br />
Now replace {{ic|''GAME''/lib/32/RenderSystem_GL.so}} with the one extracted from the {{ic|.deb}} package.<br />
<br />
=== BRAIN/OUT ===<br />
<br />
If the game does not start with error message saying "invalid app configuration".<br />
Change directory to game folder:<br />
<br />
$ cd ~/.steam/steam/steamapps/common/BrainOut/<br />
<br />
Run game directly:<br />
<br />
$ java -jar brainout-steam.jar<br />
<br />
You need to have steam running in the background.<br />
<br />
=== The Book of Unwritten Tales: The Critter Chronicles ===<br />
<br />
See [[#The Book of Unwritten Tales]].<br />
<br />
To prevent the game from crashing at the end credits, change the size of the credits image as described [http://steamcommunity.com/app/221830/discussions/0/828925849276110960/#c810921273836530791 here].<br />
<br />
=== Borderlands 2 ===<br />
<br />
==== Migrating saves from other platforms ====<br />
<br />
Borderlands 2 does not support cross-platform Steam Cloud syncing,<br />
you have to manually copy the files between platforms.<br />
Save locations can be found [https://pcgamingwiki.com/wiki/Borderlands_2#Game_data here].<br />
Make sure your user can access the files.<br />
<br />
==== Using Ctrl Key ====<br />
<br />
Borderlands 2 does not allow the {{ic|Ctrl}} key to be used by default. The game seems to be accessing keycodes and not keysyms, therefore xmodmap has no affect. A workaround is using ''setkeycodes'' to map the Ctrl-scancode to some other key, as described in [[Map scancodes to keycodes#Using setkeycodes]]. I use {{ic|setkeycodes 0x1d 56}} (as root) to map Ctrl to Alt before starting the game and {{ic|setkeycodes 0x1d 29}} to restore the default.<br />
<br />
==== Logging into SHiFT ====<br />
<br />
Out of the box you will not be able to log into SHiFT since the game expects certificates to be in {{ic|/usr/lib/ssl}}, which is where Ubuntu stores them. Arch however uses {{ic|/etc/ssl}}.<br />
To resolve the problem, run the game with {{ic|1=SSL_CERT_DIR=/etc/ssl/certs}}.<br />
<br />
==== Game crashes nearly instantly ====<br />
<br />
The game crashes in libopenal directly after launch.<br />
<br />
Possible solution 0: Run the game with the {{ic|-nostartupmovies}} flag. It no longer crashes in libopenal with a general protection error.<br />
<br />
Possible solution 1: As of lib32-openal version 1.18.0-1, the game crashes instantly. The possible solutions are to downgrade lib32-openal to 1.17.2-1, or to start the game with {{ic|LD_PRELOAD<nowiki>=</nowiki>'$HOME/.steam/root/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libopenal.so.1'}}.<br />
<br />
In case there are messages like this in the terminal:<br />
<br />
[ 671.617205] Borderlands2[2772]: segfault at 0 ip (null) sp 00000000ff9a462c error 14 in Borderlands2[8048000+235a000]<br />
<br />
The following change may help ([http://steamcommunity.com/app/49520/discussions/0/348292787746982160/ source]):<br />
LD_PRELOAD='./libcxxrt.so:/usr/$LIB/libstdc++.so.6' %command%<br />
<br />
Possible solution 2: Launch steam as {{ic|steam-native}} as described in [[Steam/Troubleshooting #Steam native runtime|#Steam native runtime]]. If the game still fails to launch even after installing the {{Pkg|steam-native-runtime}} meta package, then you might be missing some libraries. You can find those missing libraries as described in [[Steam/Troubleshooting #Debugging shared libraries|#Debugging shared libraries]].<br />
<br />
=== Borderlands: The Pre-Sequel ===<br />
<br />
See [[#Borderlands 2]].<br />
<br />
==== Keyboard not working ====<br />
<br />
This can occur with certain window managers e.g. [[dwm]]. Try a different [[window manager]].<br />
<br />
==== Not starting via Steam ====<br />
<br />
If the game appears as ''Running'', then syncs and closes when you launch it from Steam, try creating a {{ic|steam_appid.txt}} in the game directory<br />
containing {{ic|261640}}. This should resolve the issue and let you start the game directly from the game directory. If that does not work, try using the {{Pkg|steam-native-runtime}}.<br />
<br />
=== Cities in Motion 2 ===<br />
<br />
==== Dialog boxes fail to display properly ====<br />
<br />
You will not be able to read or see anything, and you will have this in your logs:<br />
Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 69: non-double matrix element<br />
Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 69: wrong number of matrix elements<br />
<br />
Workaround for the bug {{Bug|35039}} is available [http://bpaste.net/show/167019/ here] {{Dead link|2017|05|25}} (replace {{ic|/etc/fonts/conf.d/10-scale-bitmap-fonts.conf}}).<br />
<br />
=== Cities Skylines ===<br />
<br />
==== Textures not rendering properly ====<br />
<br />
Run the game with {{ic|1=UNITY_DISABLE_GRAPHICS_DRIVER_WORKAROUNDS=yes}}.<br />
<br />
=== Civilization V ===<br />
<br />
Run the game with {{ic|1=LD_PRELOAD='./libcxxrt.so:/usr/$LIB/libstdc++.so.6' %command%}}.[https://github.com/ValveSoftware/steam-for-linux/issues/4379]<br />
<br />
==== Stuttering sound with PulseAudio ====<br />
<br />
See [[PulseAudio/Troubleshooting#Laggy sound]].<br />
<br />
==== Game crashes seconds after loading a map ====<br />
<br />
If you have a CPU with more than 8 threads (such as AMD Ryzen), set {{ic|MaxSimultaneousThreads}} to {{ic|16}} in {{ic|config.ini}} in game directory.[https://www.reddit.com/r/civ5/comments/5z77jr/game_crashes_randomly_on_linux_amd_ryzen/]<br />
<br />
==== Game crashes after intro video with "Unable to load texture (LoadingBaseGame.dds)" ====<br />
<br />
The issue is a result of the game calling some file in a case-insensitive manner.<br />
<br />
The solution is either to install the game on a case-insensitive file system like VFAT, or on a mount point for {{AUR|ciopfs}}.<br />
<br />
==== Game crashes on startup with an error in libpulsecommon-12.0.so" ====<br />
<br />
Run the game with {{ic|1=LD_PRELOAD=/usr/lib32/libopenal.so.1 %command%}}<br />
<br />
=== Civilization: Beyond earth ===<br />
<br />
If you are getting an instant crash/close upon launch, make sure you have the following packages installed:<br />
<br />
* {{aur|lib32-intel-tbb}}<br />
* {{pkg|lib32-libcurl-compat}}<br />
* {{pkg|lib32-libcurl-gnutls}}<br />
* {{pkg|lib32-openal}}<br />
<br />
==== Segfault after a few minutes ====<br />
Backtrace:<br />
#0 0x08b71d06 in FireGrafix::DynamicsLock<Graphics::BuildingSkinnedDataDynamicConsts>::DynamicsLock(Graphics::SurfaceSet**, FireGrafix::SurfaceSetPoolAllocator*, unsigned short) ()<br />
#1 0x08c25ffc in cvLandmarkVisSystem::cvLandmarkVisDynamicConstantUpdaterSS::HandleBuildingShaderSkinned(Graphics::FGXShaderPackageInstanceView*, FireGrafix::FGXModelNode*, FGXVector4*) ()<br />
#2 0x08c25f34 in cvLandmarkVisSystem::cvLandmarkVisDynamicConstantUpdaterSS::UpdateNode(Graphics::FGXShaderPackageInstanceView*, FireGrafix::FGXModelNode*, FGXVector4*) ()<br />
#3 0x08c25e2c in FireGrafix::FGXModelRenderByNodeSSExample_Shadow<cvLandmarkVisSystem::cvLandmarkVisDynamicConstantUpdaterSS, 2, FireGrafix::FGXModelRenderEndSuperclass>::RenderNode(unsigned int*, FireGrafix::FGX_SPIV_GENERIC*, FireGrafix::FGXModelNode*, FGXVector4*) ()<br />
#4 0x08c24ff5 in cvLandmarkVisSystem::LandmarkRenderJob::Execute(unsigned int) ()<br />
#5 0x093d26d9 in Platform::JobTask::execute() ()<br />
#6 0xf749f3c0 in ?? () from /usr/lib32/libtbb.so.2<br />
#7 0xf7497551 in ?? () from /usr/lib32/libtbb.so.2<br />
#8 0xf7495fc3 in ?? () from /usr/lib32/libtbb.so.2<br />
#9 0xf7491b7e in ?? () from /usr/lib32/libtbb.so.2<br />
#10 0xf7491db7 in ?? () from /usr/lib32/libtbb.so.2<br />
#11 0xf78f4346 in start_thread () from /usr/lib32/libpthread.so.0<br />
#12 0xf7716026 in clone () from /usr/lib32/libc.so.6<br />
<br />
Segfault is caused by {{aur|lib32-intel-tbb}}. To fix the issue:<br />
# Download [https://packages.ubuntu.com/trusty/i386/libtbb2/download libtbb2 deb-package] from one of the Ubuntu mirrors.<br />
# Unpack {{ic|libtbb.so.2}} from {{ic|libtbb2_4.2_20130725-1.1ubuntu1_i386.deb/data.tar.xz/usr/lib}} into the game directory.<br />
# Run the game with {{ic|1=LD_PRELOAD='./libtbb.so.2'}}.<br />
<br />
=== Civilization VI ===<br />
<br />
Either run with steam-native or {{ic|1=env LD_PRELOAD='./libcxxrt.so:/usr/$LIB/libstdc++.so.6'}}. The latter will disable the Steam overlay.<br />
<br />
Follow [[#OpenSSL 1.0 setup]].<br />
<br />
==== If Segfault Immediately on Start ====<br />
<br />
This is a strange corner case which happens infrequently at best (and the prerequisites for reproducing it are unknown), but the crash would look like this:<br />
<br />
# Immediate segfault on start, before any windows get created<br />
# The game creates {{ic|~/.local/share/aspyr-media/Sid Meier's Civilization VI/AppOptions.txt}}<br />
# The string {{ic|AppHost::BugSubmissionPackager::BugSubmissionPackager}} appears inhttp://store.steampowered.com/app/310080/Hatoful_Boyfriend/ the backtrace output when running the game under {{pkg|gdb}}<br />
## To run under {{pkg|gdb}}, first launch a shell and change into the game directory.<br />
## Then {{ic|echo 289070 > steam_appid.txt}} ''(otherwise the game won't launch outside of Steam itself)''<br />
## Then run something like {{ic|gdb -ex run -ex bt -ex quit --args ./Civ6 ./Civ6}}<br />
## The relevant info towards the end of the output should look like this:<br />
Thread 3 "Civ6" received signal SIGSEGV, Segmentation fault.<br />
[Switching to Thread 0x7fffe5d06700 (LWP 12315)]<br />
0x000000000201121e in AppHost::BugSubmissionPackager::BugSubmissionPackager(unsigned long, String::BasicT<Platform::StaticHeapAllocator<5, 0>, (String::Encoding)4> const&, String::BasicT<Platform::StaticHeapAllocator<5, 0>, (String::Encoding)0> const&, AppHost::ModuleVersionInfo const&) ()<br />
#0 0x000000000201121e in AppHost::BugSubmissionPackager::BugSubmissionPackager(unsigned long, String::BasicT<Platform::StaticHeapAllocator<5, 0>, (String::Encoding)4> const&, String::BasicT<Platform::StaticHeapAllocator<5, 0>, (String::Encoding)0> const&, AppHost::ModuleVersionInfo const&) ()<br />
#1 0x000000000200c796 in AppHost::_INTERNAL::SetupFXSPlatform(AppHost::AppEnvironment const*, AppHost::AppOptions*)<br />
()<br />
#2 0x000000000200fea0 in AppHost::RunApp(int, char**, AppHost::Application*) ()<br />
#3 0x000000000200f9bc in AppHost::RunApp(char*, AppHost::Application*) ()<br />
#4 0x0000000001112d98 in WinMain ()<br />
#5 0x00000000010bdab0 in ?? ()<br />
#6 0x00000000010bfb31 in ThreadHANDLE::ThreadProc(void*) ()<br />
#7 0x00007ffff473e08a in start_thread () from /usr/lib/libpthread.so.0<br />
#8 0x00007ffff38f747f in clone () from /usr/lib/libc.so.6<br />
<br />
If all of that is the case for you, the fix is pretty simple. Edit {{ic|~/.local/share/aspyr-media/Sid Meier's Civilization VI/AppOptions.txt}} and change the line reading {{ic|EnableBugCollection 1}} to {{ic|EnableBugCollection 0}}.<br />
<br />
Presumably this fix will prevent any automated bug reports from reaching Aspyr, should you encounter crashes/bugs in the future, but it will at least let the game launch properly.<br />
<br />
=== Deus Ex: Mankind divided ===<br />
<br />
Follow [[#OpenSSL 1.0 setup]].<br />
<br />
Requires {{Pkg|librtmp0}}.<br />
<br />
Also if you use Bumblebee set your [[launch option]]s to:<br />
<br />
LD_PRELOAD="$LD_PRELOAD:libpthread.so.0:libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 optirun %command%<br />
<br />
=== The Clockwork Man ===<br />
<br />
Requires {{pkg|lib32-libidn}} (pulled in by {{pkg|steam-native-runtime}}).<br />
<br />
=== Company of Heroes 2 ===<br />
<br />
==== Missing libpcre.so.3 ====<br />
<br />
Like with [[#Alien Isolation]] you need to symlink {{ic|/usr/lib/libpcre.so}} to {{ic|''GAME''/lib/''arch''/libpcre.so.3}}, otherwise the game will fail to start.<br />
<br />
=== Cossacks 3 ===<br />
<br />
==== No sound ====<br />
<br />
Use the steam-runtime, e.g. set the [https://support.steampowered.com/kb_article.php?ref=1040-JWMT-2947 launch options] to:<br />
<br />
~/.steam/root/ubuntu12_32/steam-runtime/run.sh %command%<br />
<br />
==== Flashing screen with primus ====<br />
<br />
Set {{ic|1=PRIMUS_SYNC=2}}in the launch options.<br />
<br />
=== Counter-Strike: Source (CS:S) ===<br />
<br />
==== Invisible symbols, special characters and cyrillic letters ====<br />
<br />
Any special character will produce an empty space mark in the game, main menu and game console. In practice, any characters other than latin ones are not working. The problem is that {{ic|Bitstream Vera Sans}} is configured as the system primary default font for latin sans-serif fonts.<br />
<br />
First, make sure that per-user font customization files are enabled, i.e. the following file exist:<br />
<br />
/etc/fonts/conf.d/50-user.conf<br />
<br />
Next, create {{ic|fonts.conf}} file in your fontconfig directory with the following content or if the file already exist, append only the alias section to the file:<br />
<br />
{{hc|~/.config/fontconfig/fonts.conf|2=<br />
<?xml version="1.0"?><br />
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"><br />
<fontconfig><br />
<alias><br />
<family>sans-serif</family><br />
<prefer><br />
<family>DejaVu Sans</family><br />
<family>Verdana</family><br />
<family>Arial</family><br />
<family>Albany AMT</family><br />
<family>Luxi Sans</family><br />
<family>Nimbus Sans L</family><br />
<family>Nimbus Sans</family><br />
<family>Helvetica</family><br />
<family>Lucida Sans Unicode</family><br />
<family>BPG Glaho International</family> <!-- lat,cyr,arab,geor --><br />
<family>Tahoma</family> <!-- lat,cyr,greek,heb,arab,thai --><br />
</prefer><br />
</alias><br />
</fontconfig><br />
}}<br />
<br />
=== Counter-Strike: Global Offensive (CS:GO) ===<br />
<br />
==== Game starts on the wrong screen ====<br />
<br />
[https://github.com/ValveSoftware/csgo-osx-linux/issues/60 csgo-osx-linux issue #60]<br />
<br />
If it happens, go into fullscreen windowed or windowed mode and drag the window to the correct monitor. Then go back into fullscreen, the game should now be on the correct monitor.<br />
<br />
==== Cannot reach bottom of the screen on menus ====<br />
<br />
[https://github.com/ValveSoftware/csgo-osx-linux/issues/594 csgo-osx-linux issue #594]<br />
<br />
If you have a secondary monitor you might have a part of your lower screen you cannot reach in menus.<br />
If on Gnome you can try to open the overview (Super key) and drag the game to the other monitor and back.<br />
<br />
If you are not on Gnome or dragging the window back and forth did not work you can try to [[install]] {{pkg|wmctrl}} and run this command, where X and Y is the offset of the window and H and W is the size.<br />
wmctrl -r "Counter-Strike: Global Offensive - OpenGL" -e 0,X,Y,H,W<br />
<br />
'''Example''': SecondaryMonitor: on the left 2560x1600, GamingMonitor: on the right 2560x1440).<br />
wmctrl -r "Counter-Strike: Global Offensive - OpenGL" -e 0,2560,0,1600,1200<br />
Here X and Y is 0,2560 to move the window to the monitor on the right and H and W 1600,1200 is set to match the in-game resolution.<br />
<br />
==== Sound is played slightly delayed ====<br />
<br />
[https://github.com/ValveSoftware/csgo-osx-linux/issues/45 csgo-osx-linux issue #45]<br />
<br />
See [[PulseAudio/Troubleshooting#Laggy sound]] for a possible solution.<br />
<br />
==== Mouse not working in-game ====<br />
<br />
If your mouse works in the main menu but not in-game, run the game with {{ic|1=SDL_VIDEO_X11_DGAMOUSE=0}}.<br />
[https://bbs.archlinux.org/viewtopic.php?id=184905]<br />
<br />
==== Brightness slider not working ====<br />
<br />
[[Install]] {{pkg|xorg-xrandr}} and run {{ic|xrandr}} to find out the name of your connected display output.<br />
<br />
Edit {{ic|''GAME''/csgo.sh}} and add the following lines (adapt ''output_name''):<br />
<br />
'''# gamma correction'''<br />
'''xrandr --output ''output_name'' --gamma 1.6:1.6:1.6 # play with values if required'''<br />
STATUS=42<br />
while [$STATUS -eq 42]; do<br />
...<br />
done<br />
'''# restore gamma'''<br />
'''xrandr --output ''output_name'' --gamma 1:1:1'''<br />
exit $STATUS<br />
<br />
==== Microphone not working ====<br />
<br />
[https://github.com/ValveSoftware/csgo-osx-linux/issues/573#issuecomment-174016722 csgo-osx-linux issue #573]<br />
<br />
CS:GO uses the default PulseAudio sound device ignoring what is configured in Steam settings.<br />
<br />
First find out the source name of your microphone (it should start with {{ic|alsa_input.}}):<br />
$ pacmd list-sources<br />
<br />
Then set the default device (change the name accordingly):<br />
$ pacmd set-default-source ''device_name''<br />
<br />
Also lower the microphone level to 60% otherwise you will get some nasty background noise and you will be difficult to understand (change the name accordingly):<br />
$ pacmd set-source-volume ''device_name'' 0x6000<br />
<br />
==== Mouse is unrensponsive or moves slowly ====<br />
<br />
Set launch options to:<br />
vblank_mode=0 %command%<br />
<br />
Works with almost any other game.<br />
<br />
=== Creeper World 3: Arc Eternal ===<br />
<br />
==== Game does not start ====<br />
Search for Player.log<br />
(might be in ~/.config/unity3d/Knuckle Cracker LLC/Creeper World 3/ )<br />
<br />
If it says somewhere in Player.log<br />
"FMOD failed to get number of drivers ... An error occured that wasn't supposed to. Contact support."<br />
Unity is probably having problem with some pulse audio libraries. <br />
<br />
Fix that worked for me:<br />
Remove or rename all instances of libpulse-simple* files.<br />
<br />
Places to look for them:<br />
/usr/lib<br />
/usr/lib32<br />
~/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/<br />
~/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/<br />
<br />
=== Crusader Kings II ===<br />
<br />
x86_64 dependencies:<br />
<br />
* {{pkg|lib32-openssl}}<br />
<br />
==== No audio ====<br />
<br />
SDL uses [[PulseAudio]] by default, so to use it with [[ALSA]] you need to set:<br />
<br />
{{hc|~/.pam_environment|2=SDL_AUDIODRIVER=alsa}}<br />
<br />
==== Oddly sized starting window ====<br />
<br />
You can make full screen mode the default by setting {{ic|1=fullscreen=yes}} in {{ic|~/.paradoxinteractive/Crusader Kings II/settings.txt}}.<br />
<br />
==== DLCs not detected ====<br />
<br />
If the DLC tab in the launcher is not selectable, rename the {{ic|DLC}} directory in the game directory to {{ic|dlc}}.<br />
<br />
=== Crypt of the NecroDancer ===<br />
<br />
==== Crashes after splash screen ====<br />
<br />
The following error occurs if launching Steam from the terminal.<br />
<br />
FMOD ERROR: UpdateFMOD SystemUpdate: This command failed because System::init or System::setDriver was not called.<br />
<br />
This error is solved by installing {{pkg|pulseaudio-alsa}}.<br />
<br />
=== The Curious Expedition ===<br />
<br />
==== Game stuck on loading screen ====<br />
<br />
The Electron shipped with this game is too old for Arch Linux.<br />
<br />
Install {{pkg|electron}} and run the game with {{ic|electron resources/app.asar}}.<br />
<br />
=== Death Road To Canada ===<br />
<br />
==== No music ====<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
=== Defender's Quest: Valley of the Forgotten ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|adobe-air-sdk}}, follow [[#Adobe Air setup]]<br />
* {{pkg|xterm}}<br />
* {{pkg|lib32-libcanberra}}<br />
<br />
=== Dirt ===<br />
<br />
Follow [[#OpenSSL 1.0 setup]].<br />
<br />
=== Dirt Rally ===<br />
<br />
Prepend {{ic|lib/x86_64}} to your {{ic|LD_LIBRARY_PATH}}, otherwise the game will fail to start.<br />
<br />
{{Note|The order of the paths is important. {{ic|$LD_LIBRARY_PATH}} must be the last entry or it won't work.}}<br />
<br />
=== Divinity: Original Sin - Enhanced Edition ===<br />
<br />
==== Game does not start when using Bumblebee optirun or primusrun ====<br />
<br />
Edit {{ic|''GAME''/runner.sh}} to use primusrun:<br />
LD_LIBRARY_PATH="." primusrun ./EoCApp<br />
<br />
==== Game does not work with amdgpu ====<br />
<br />
It is a known bug and they have no intention of fixing it, see [https://bugs.freedesktop.org/show_bug.cgi?id=93551 the bug].<br />
<br />
Workaround:<br />
<br />
Get the following file:<br />
https://bugs.freedesktop.org/attachment.cgi?id=125302<br />
and rename it to {{ic|shim.c}}<br />
<br />
Then execute <br />
$ gcc -shared -fpic shim.c -o divhack.so<br />
<br />
Next, start ''steam'' and open a console, change to the diviniti directory with <br />
$ cd ~/.steam/steam/steamapps/common/Divinity Original Sin Enhanced Edition<br />
<br />
Edit the contained {{ic|runner.sh}} as follows:<br />
<br />
{{bc|1=export MESA_GL_VERSION_OVERRIDE=4.2<br />
export MESA_GLSL_VERSION_OVERRIDE=420<br />
export LD_PRELOAD=/path/to/divhack.so<br />
export LD_LIBRARY_PATH="."<br />
./EoCApp}}<br />
<br />
Then just start the game.<br />
In case it still crashes on loading you may also need to add<br />
<br />
{{bc|1=export allow_glsl_extension_directive_midshader=true}}<br />
<br />
=== Don't Starve ===<br />
<br />
Dependencies:<br />
<br />
* {{pkg|lib32-flashplugin}}{{Broken package link|{{aur-mirror|lib32-flashplugin}}}}<br />
* {{pkg|lib32-libcurl-gnutls}}<br />
<br />
==== No sound ====<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
In the game, go to the options and adjust the audio levels.<br />
<br />
=== Doki Doki Literature Club ===<br />
<br />
Linux version is shipped with the Windows version, but can only be installed with Steam Play.<br />
<br />
Native version can be started with this launch option: {{ic|./DDLC.sh # %command%}}<br />
<br />
=== Dota 2 ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|libudev0}}<br />
* {{pkg|libpng12}}<br />
<br />
==== In-game font is unreadable ====<br />
<br />
Run the game with {{ic|1=MESA_GL_VERSION_OVERRIDE=2.1}}.<br />
<br />
==== Error with libpangoft2 ====<br />
<br />
# [[Install]] the {{pkg|pango}} package.<br />
# Remove {{ic|libpango-1.0.so}} and {{ic|libpangoft2-1.0.so}} in {{ic|''GAME''/game/bin/linuxsteamrt64}}.<br />
# If you are using Bumblebee add {{ic|1=LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 optiru}} to your [[launch option]]s.<br />
<br />
==== The game does not start ====<br />
<br />
If you run the game from the terminal and, although no error is shown, try disabling: ''Steam > Settings > In-Game > Enable Steam Community In-Game''.<br />
<br />
Apparently the game [[#The Book of Unwritten Tales]] has the same problem. It also describes a workaround that is untested in Dota 2.<br />
<br />
==== Game runs on the wrong screen ====<br />
<br />
: [https://github.com/ValveSoftware/Dota-2/issues/11 GitHub Dota 2 issue #11]<br />
<br />
==== Game does not start with libxcb-dri3 error message ====<br />
<br />
After a recent Mesa update, Dota 2 stopped working. The error message is:<br />
<br />
SDL_GL_LoadLibrary(NULL) failed: Failed loading libGL.so.1: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_fd<br />
<br />
==== Steam overlay ====<br />
<br />
Steam distributes a copy of libxcb which is incompatible with the latest xorg libxcb. See [https://github.com/ValveSoftware/steam-for-linux/issues/3199], [https://github.com/ValveSoftware/steam-for-linux/issues/3093].<br />
<br />
==== Chinese tips and player names not shown ====<br />
<br />
The Chinese characters in tips and player names are displayed as block characters.<br />
<br />
The problem is caused by the font packages: {{pkg|ttf-dejavu}}, {{pkg|ttf-liberation}} and {{aur|ttf-ms-fonts}}.<br />
<br />
: [https://github.com/ValveSoftware/Dota-2/issues/1688 GitHub Steam issue #1688] {{Dead link|2017|05|25}}<br />
<br />
==== Chinese input method problem ====<br />
<br />
Dota2 is compatible with [[IBus]] .<br />
<br />
=== Devil Daggers ===<br />
<br />
Refer to [[#Missing libcurl.so.4 or version CURL_OPENSSL_3 not found]].<br />
<br />
=== Drox Operative ===<br />
<br />
If the game fails to start with "Couldn't find Database/database.dbl!", manually extract the assets. assets003.zip will overwrite some files from the previous files.<br />
<br />
$ cd "~/.steam/root/steamapps/common/Drox Operative/Assets"<br />
$ unzip assets00[123].zip<br />
<br />
=== Dwarfs F2P ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|lib32-libgdiplus}}{{Broken package link|{{aur-mirror|lib32-libgdiplus}}}}<br />
<br />
==== Game does not start ====<br />
<br />
There was a bug that stopped Steam from fetching all the needed files. It should be resolved, if you still bump into this problem, try verifying integrity of game cache from game properties, local files tab.<br />
<br />
If the game still crashes at startup, edit {{ic|''GAME''/Run.sh}} and change<br />
<br />
export LD_LIBRARY_PATH=.:${LD_LIBRARY_PATH}<br />
<br />
to<br />
<br />
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:.<br />
<br />
{{Note|This file may be overwritten by updates or by verifying integrity of game cache. You may need to modify it again.}}<br />
<br />
If these do not help, you may have outdated libraries in the game installation folder that are crashing the game on startup. Try removing the following files from the game directory:<br />
<br />
libX11.so.6 libsteam.so libtier0_s.so libvstdlib_s.so steamclient.so<br />
<br />
==== Game crashes ====<br />
<br />
In some cases, the game crashes about 2 minutes before the end of every arcade. This bug has been reported, but there's no known solution to it.<br />
<br />
=== Dynamite Jack ===<br />
<br />
Requires {{Pkg|lib32-sdl}}.<br />
<br />
==== Sound Issues ====<br />
<br />
When running on 64-bit Arch Linux, there may be "pops and hisses" when running Dynamite Jack. This could be caused by not having {{ic|1=STEAM_RUNTIME=0}} set. (However, even with {{ic|1=STEAM_RUNTIME=0}} set, the game may still sometimes start with this issue. Exiting and restarting the game seems to make the problem go away.)<br />
<br />
==== Game does not start ====<br />
<br />
If running steam with the {{ic|1=STEAM_RUNTIME=0}}, Dynamite Jack may have a problem starting. Check the steam error messages for this message:<br />
<br />
/home/$USER/.steam/root/steamapps/common/Dynamite Jack/bin/main: error while loading shared libraries: libSDL-1.2.so.0: cannot open shared object file: No such file or directory<br />
<br />
Install {{pkg|lib32-sdl}} from [[multilib]] and Dynamite Jack should start up.<br />
<br />
=== Empire Total War ===<br />
<br />
==== Weird unreadable fonts ====<br />
<br />
Open {{ic|~/.local/share/feral-interactive/Empire/preferences}}, then find {{ic|UsePBOSurfaces}} and change it from 1 to 0.<br />
<br />
=== Euro Truck Simulator 2 ===<br />
<br />
==== Shows only a black screen ====<br />
<br />
Select safe mode when the game starts up.<br />
<br />
=== Firewatch ===<br />
<br />
If Firewatch starts but doesn't show anything try running Steam with<br />
<br />
`STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 steam`<br />
<br />
=== Football Manager 2014 ===<br />
<br />
This game will not run when installed on an [[XFS]] or reiserfs filesystem. Workaround is to install on an ext4 filesystem.<br />
<br />
=== FORCED ===<br />
<br />
Requires {{pkg|lib32-glu}}.<br />
<br />
This game has 32-bit and 64-bit binaries. For some reason, Steam will launch the 32-bit binary even on 64-bit Arch Linux.<br />
When manually launching the 64-bit binary, the game starts, but cannot connect to Steam account, so you cannot play.<br />
So install 32-bits dependencies, and launch the game from Steam.<br />
<br />
=== For the King ===<br />
<br />
For steam-native --<br />
<br />
Starts with black page. Requires to be told to use the libSDL2 shipping with Steam<br />
<br />
Add to Steam launch options for game. <br />
<br />
LD_PRELOAD=~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 %command%<br />
<br />
Note however, that this disables the Steam overlay as a side effect.<br />
<br />
For steam-runtime --<br />
<br />
It works out of the box.<br />
<br />
For the full experience, run FTK via steam-runtime instead of steam-native.<br />
<br />
=== FTL: Faster than Light ===<br />
<br />
==== Compatibility ====<br />
<br />
After installation, FTL may fail to run due to a 'Text file busy' error (characterised in Steam by your portrait border going green then blue again). The easiest way to mend this is to just reboot your system. Upon logging back in FTL should run.<br />
<br />
The Steam overlay in FTL does not function as it is not a 3D accelerated game. Because of this the desktop notifications will be visible. If playing in fullscreen, therefore, these notifications in some systems may steal focus and revert you back to windowed mode with no way of going back to fullscreen without relaunching. The binaries for FTL on Steam have no DRM and it is possible to run the game ''without'' Steam running, so in some cases that may be optimum - just ensure that you launch FTL via the launcher script in {{ic|''GAME''/data/}} rather than the FTL binary in the $arch directory.<br />
<br />
==== Problems with open-source video driver ====<br />
<br />
FTL may fail to run if you are using an opensource driver for your video card. There are two solutions: install a proprietary video driver or delete (rename if you are unsure) the library "libstdc++.so.6" inside {{ic|''GAME''/data/amd64/lib}}. This is if you are using a 64bit system. In case you are using a 32bit system you have to remove (rename) the same library located into {{ic|''GAME''/data/x86/lib}}.<br />
<br />
=== Game Dev Tycoon ===<br />
<br />
==== Game does not start ====<br />
<br />
You might get an error about missing {{ic|libudev.so.0}}.<br />
<br />
Run the game with {{ic|1=LD_PRELOAD=/usr/lib/libudev.so.1}}.<br />
<br />
=== Garry's Mod ===<br />
<br />
==== Game does not start ====<br />
<br />
When an error about a missing {{ic|client.so}} appears, try the following:<br />
<br />
$ cd ~/.steam/root/steamapps/common/GarrysMod/bin/<br />
$ ln -s libawesomium-1-7.so.0 libawesomium-1-7.so.2<br />
$ ln -s ../garrysmod/bin/client.so ./<br />
<br />
If the error mentions a missing library for {{ic|libgcrypt.so.11}}, install {{pkg|lib32-libgcrypt15}}.<br />
<br />
==== Opening some menus causes the game to crash ====<br />
<br />
Most menus work fine, but ones with checkboxes (LAN multiplayer, mounted games list) do not work at all. This is a bug in the menu code.<br />
<br />
If you prefer the default menu style and do not mind a hacky solution: [https://github.com/Facepunch/garrysmod-issues/issues/86#issuecomment-30935491 Simon311] has written code with instructions to fix it.<br />
<br />
If you do not care for the default menu style and want a more stable but feature-incomplete solution, Facepunch developer [https://github.com/robotboy655/gmod-lua-menu robotboy655] has written a new menu.<br />
<br />
==== Game crashes after attempting to join server ====<br />
<br />
While in the process of joining a server, downloading resources, etc, the game seems to hang and after a while, perhaps during the "sending client info" portion the game crashes, usually without any error messages. Error does not give much information, however, the process for Garry's mod is killed.<br />
<br />
This issue arises more often when joining servers with many addons like DarkRP servers specifically.<br />
<br />
The problem seems to correlate with a weak GPU and the game is timing out from the server, so if the GPU is the problem, lowering the graphics settings to the minimum should fix the problem.<br />
<br />
The problem seems to be related to RAM usage, once you hit around 2GB of RAM used, the game will crash. Servers with many addons have much more RAM usage, and lowering graphics settings to the minimum lowers RAM usage and mitigates crashes.<br />
<br />
=== Gods will be watching ===<br />
<br />
Follow [[#OpenSSL 1.0 setup]].<br />
<br />
=== GRID Autosport ===<br />
<br />
Follow [[#OpenSSL 1.0 setup]].<br />
<br />
==== Black screen when trying to play ====<br />
<br />
Run the game with {{ic|1=LC_ALL=C}}.<br />
<br />
=== Hack 'n' Slash ===<br />
<br />
==== Crashes when trying to load a game ====<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
=== Hacker Evolution ===<br />
<br />
Requires {{Pkg|lib32-sdl2_mixer}}.<br />
<br />
=== Half-Life 2 and episodes ===<br />
<br />
==== Cyrillic fonts problem ====<br />
<br />
This problem can be solved by deleting "Helvetica" font.<br />
<br />
=== Hammerwatch ===<br />
<br />
==== The game does not start via Steam ====<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
==== No sound ====<br />
<br />
Hammerwatch opens with a popup: "Sound Error" -- "Could not initialize OpenAL, no sounds will be played. Try updating your OpenAL drivers."<br />
<br />
OpenAL, which Hammerwatch uses, defaults to PulseAudio. To change that, add the following line to {{ic|/etc/openal/alsoft.conf}}:<br />
<br />
drivers=alsa,pulse<br />
<br />
This way, Hammerwatch will use ALSA. This solution was found [https://stackoverflow.com/questions/9547396/what-does-al-lib-pulseaudio-c612-context-did-not-connect-access-denied-me here].<br />
<br />
=== Harvest: Massive Encounter ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|lib32-sfml}}<br />
* {{Pkg|lib32-libjpeg6-turbo}}<br />
* {{Pkg|lib32-nvidia-cg-toolkit}}<br />
* {{pkg|lib32-gtk2}}<br />
* {{pkg|lib32-libvorbis}}<br />
* {{pkg|lib32-openal}}<br />
<br />
==== Compatibility ====<br />
<br />
If the game refuses to launch and throws you into a library installer loop, run the {{ic|Harvest}} executable instead of the {{ic|run_harvest}} script.<br />
<br />
=== Hatoful Boyfriend ===<br />
<br />
==== Japanese text invisible ====<br />
<br />
Install {{pkg|wqy-microhei}} and {{pkg|wqy-microhei-lite}}.<br />
<br />
=== HuniePop ===<br />
<br />
==== Game crashes upon launch ====<br />
<br />
Install {{pkg|lsb-release}}.<br />
<br />
=== Hyper Light Drifter ===<br />
<br />
==== The controller does not work ====<br />
<br />
[[Install]] {{pkg|lib32-sdl2}} and run the game with {{ic|1=LD_PRELOAD=libSDL2.so}}.<br />
<br />
See the following Steam Community discussions:<br />
<br />
* [https://steamcommunity.com/app/257850/discussions/1/365163686036494421 Controller Issues]<br />
* [https://steamcommunity.com/app/257850/discussions/1/365163686045397160/ Common Bugs + Known Issues]<br />
<br />
It is suggested to run the ''next_update'' branch to get new fixes,<br />
there however currently is a libcurl segfault keeping it from starting without special workarounds.<br />
<br />
==== Missing libcurl.so.4 or version CURL_OPENSSL_3 not found ====<br />
<br />
[[Install]] {{pkg|lib32-libcurl-compat}} and run the game with {{ic|1=LD_PRELOAD=libcurl.so.3}}.<br />
<br />
=== The Impossible Game ===<br />
<br />
Dependencies:<br />
<br />
* {{pkg|lib32-sdl2}}<br />
* {{pkg|lib32-sdl2_image}}<br />
<br />
=== The Inner World ===<br />
<br />
Requires {{AUR|java-commons-codec}} for sound support.<br />
<br />
==== Bringing up the inventory or main menu ====<br />
<br />
Hold the tab key.<br />
<br />
===== Cutscenes =====<br />
<br />
The game has cutscenes. It starts directly with a cutscene before you start the actual game in the backyard. To see these cutscenes you need to use Oracle's [[Java]] instead of the OpenJDK.<br />
<br />
Furthermore you need the package {{aur|ffmpeg-compat-55}}.<br />
<br />
There seem to be problems with the Steam overlay. Try to run the game directly with {{ic|''GAME''/TIW_start.sh}}.<br />
<br />
Note that cutscenes open in a new window. So pay attention to that and switch to the new window to enjoy the movies.<br />
<br />
See the [http://steamcommunity.com/app/251430/discussions/0/611701360817206606/#c611701360827509770 Steam Forums] for details.<br />
<br />
=== Interloper ===<br />
<br />
Requires {{pkg|alsa-lib}}.<br />
<br />
==== Game does not start ====<br />
<br />
The game can sometimes segfault due to an incompatibility with the Steam Runtime's {{ic|libasound.so.2}}.<br />
<br />
=== Invisible Apartment ===<br />
<br />
Requires {{pkg|qt5-multimedia}}.<br />
<br />
==== Game does not start ====<br />
<br />
If the game does not run when you launch it via Steam, try to directly run {{ic|./ia1}} in the game directory.<br />
<br />
=== Joe Danger 2: The Movie ===<br />
<br />
Requires {{pkg|lib32-libpulse}}.<br />
<br />
==== Compatibility ====<br />
<br />
Game only worked after obtaining from the [https://www.humblebundle.com/ Humble Bundle] directly and {{pkg|lib32-libpulse}} was installed.<br />
<br />
=== Kerbal Space Program ===<br />
<br />
See [[Kerbal Space Program]].<br />
<br />
=== Killing Floor ===<br />
<br />
==== Cannot change screen resolution ====<br />
<br />
If trying to modify the resolution in-game crashes your desktop environment, edit {{ic|~/.killingfloor/System/KillingFloor.ini}}:<br />
<br />
[WinDrv.WindowsClient]<br />
WindowedViewportX=''width''<br />
WindowedViewportY=''height''<br />
FullscreenViewportX=''width''<br />
FullscreenViewportY=''height''<br />
MenuViewportX=''width''<br />
MenuViewportY=''height''<br />
<br />
[SDLDrv.SDLClient]<br />
WindowedViewportX=''width''<br />
WindowedViewportY=''height''<br />
FullscreenViewportX=''width''<br />
FullscreenViewportY=''height''<br />
MenuViewportX=''width''<br />
MenuViewportY=''height''<br />
<br />
==== Windowed mode ====<br />
<br />
Uncheck fullscreen in the options menu, and press {{ic|Ctrl+g}} to stop mouse capturing.<br />
<br />
==== Stuttering sound ====<br />
<br />
KillingFloor comes with its own OpenAL library {{ic|''GAME''/System/openal.so}}.<br />
<br />
Back it up, [[install]] {{pkg|openal}} or {{pkg|lib32-openal}} (if using a 64bit system).<br />
<br />
Then symlink the installed system library ({{ic|/usr/lib32/libopenal.so.1}} or {{ic|/usr/lib/libopenal.so.1}}) to {{ic|openal.so}}.<br />
<br />
=== Left for Dead 2 ===<br />
<br />
==== Missing Chinese font ====<br />
<br />
L4D2 Requires {{Pkg|wqy-zenhei}}. Or add the following lines to {{ic|~/.config/fontconfig/fonts.conf}}<br />
<br />
<match target="pattern"><br />
<test qual="any" name="family"><br />
<string>WenQuanYi Zen Hei</string><br />
</test><br />
<edit name="family" mode="assign" binding="same"><br />
<string>Source Han Sans CN</string><br />
</edit><br />
</match><br />
<br />
=== Lethal League ===<br />
<br />
Requires {{Pkg|lib32-glew1.10}}.<br />
<br />
=== Life is Strange ===<br />
<br />
Requires {{Pkg|librtmp0}}, {{Pkg|sdl2_image}}.<br />
<br />
=== Little Racers STREET ===<br />
<br />
Install {{Pkg|sdl2_mixer}}.<br />
<br />
Move/backup {{ic|''GAME''/lib64/libSDL2_mixer-2.0.so.0}}.<br />
<br />
Symlink {{ic|/usr/lib/libSDL2_mixer-2.0.so.0}} to {{ic|''GAME''/lib64/libSDL2_mixer-2.0.so.0}}.<br />
<br />
=== The Long Dark ===<br />
<br />
==== Game does not start ====<br />
<br />
The 64-bit version fails to start. Either use the 32-bit version {{ic|tld.x86}} in the game directory or start the 64-bit version like so:<br />
<br />
LD_PRELOAD=~/.steam/root/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 ./tld.x86_64<br />
<br />
==== Game starts, but some overlay text is missing and cutscenes shows black screen ====<br />
<br />
In addition to the command above, add the following to the Steam launch command:<br />
<br />
-screen-fullscreen 0 -screen-width WIDTH_PIXELS -screen-height HEIGHT_PIXELS<br />
<br />
For example, if you have a screen resolution of 1280x720 and are launching the x64 version from the terminal (within the directory which contains the binaries), the full command would be:<br />
<br />
LD_PRELOAD=~/.steam/root/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 ./tld.x86_64 -screen-fullscreen 0 -screen-width 1280 -screen-height 720<br />
<br />
and from Steam, the complete game [[launch option]]s would be:<br />
<br />
LD_PRELOAD=~/.steam/root/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 %command% -screen-fullscreen 0 -screen-width 1280 -screen-height 720<br />
<br />
==== Cutscenes are still black ====<br />
<br />
Turn off Vertical Sync in the Display options, and/or set POST FX to Low in the Quality options, and/or turn global Quality options down a notch.<br />
<br />
==== Cursor disappears ====<br />
<br />
Go to Options > Controls, and set mouse locking to unlocked.<br />
<br />
The options is visible only if you're navigating using your (invisible) mouse. It will not show up when navigating with a controller.<br />
One solution is to go to Options -> Controls with a controller before switching to the mouse and trying to blindly it the setting.<br />
<br />
=== Magicka 2 ===<br />
<br />
==== Indefinitely stuck at start ====<br />
<br />
The game does not start if the output of the command "ip -s link" is longer than 4096 characters. That is because, in the function bitsquid::network_info(char*), where they query the networking information, they do not handle that case correctly.<br />
See [https://i.imgur.com/AOTLoTY.png this picture] for reference.<br />
It was reported to upstream (Pieces Interactive) but Magicka 2 does not seem to be maintained anymore.<br />
<br />
A dirty fix is to wrap your ip binary, as such:<br />
<br />
{{bc|<br />
#!/bin/bash<br />
<nowiki>if [[ $@ == "-s link" ]]; then</nowiki><br />
echo "<paste a smaller subset of the normal output>"<br />
else<br />
/path/to/your/real/ip "$@"<br />
fi<br />
}}<br />
<br />
=== Mark of the Ninja ===<br />
<br />
==== Bad sound ====<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
=== Metro: Last Light ===<br />
<br />
The game does not allow you to change its resolution on a multi-monitor setup on GNOME with the AMD Catalyst drivers. A temporary workaround is to disable the side monitors.<br />
Jason over at [http://unencumberedbyfacts.com/2013/11/20/multiple-monitor-gaming-on-linux/ unencumbered by facts] managed to get it working with his multi-monitor setup using a single display server, he however is using Nvidia.<br />
<br />
=== Metro: 2033 Redux ===<br />
<br />
==== No sound ====<br />
<br />
The game does not properly support [[PulseAudio]], so you will have to use ALSA.<br />
Run the game with {{ic|1=SDL_AUDIODRIVER=alsa}}.<br />
Create the file {{ic|~/.asoundrc}}. Get your card/device number with {{ic|aplay -l}}.<br />
Add the following to your {{ic|~/.asoundrc}} (replace card and device no with the one you got from {{ic|aplay -l}})<br />
<br />
pcm.!default { <br />
type hw<br />
card 0<br />
device 0<br />
}<br />
<br />
ctl.!default {<br />
type hw<br />
card 0<br />
device 0 <br />
}<br />
<br />
Before starting the game make sure to kill PulseAudio with {{ic|pulseaudio -k}}.<br />
<br />
=== No image ===<br />
<br />
Try setting {{ic|r_fullscreen off}} in {{ic|~/.local/share/Steam/steamapps/common/Metro 2033 Redux/user.cfg}}.<br />
<br />
=== Middle-earth: Shadow of Mordor ===<br />
<br />
==== Floating heads ====<br />
<br />
Run the game with {{ic|1=__GL_ShaderPortabilityWarnings=0}}.<br />
<br />
=== Mount & Blade: Warband ===<br />
<br />
==== Segmentation fault (core dumped) with wayland ====<br />
<br />
Use [[Xorg]] instead.<br />
<br />
==== DLC Chooser ====<br />
<br />
Requires {{aur|lib32-nas}}.<br />
<br />
==== Crash on startup ====<br />
<br />
Set launch options to: <br />
LD_LIBRARY_PATH="." %command%<br />
<br />
=== Move or Die ===<br />
<br />
==== No Sound ====<br />
<br />
Install {{pkg|lib32-pulse}}{{Broken package link|package not found}}.<br />
<br />
=== Multiwinia ===<br />
<br />
Requires {{pkg|lib32-openal}}.<br />
<br />
==== Crash on startup ====<br />
<br />
If Multiwinia crashes on startup on X64 systems, force launching the 32-bit executable by replacing {{ic|''GAME''/run_steam.sh}} with the following script:<br />
<br />
{{bc|<br />
#!/bin/sh<br />
./multiwinia.bin.x86<br />
}}<br />
<br />
See [https://steamcommunity.com/app/1530/discussions/0/864969481950542663/#c558746995160431396].<br />
<br />
=== Natural Selection 2 ===<br />
<br />
{{Pkg|sndio}} is required, furthermore, you must also execute<br />
$ ln -s /usr/lib/libsndio.so x64/libsndio.so.6.1<br />
within the root of the NS2 directory.<br />
This is because NS2 uses an older outdated version of sndio, but it is still compatible with the new version, thankfully.<br />
<br />
For a more minimal solution, one can attempt to set the audio driver used through the environment variable {{ic|SDL_AUDIODRIVER}}. For example, {{ic|1=SDL_AUDIODRIVER=sndio}} or {{ic|1=SDL_AUDIODRIVER=alsa}}.<br />
<br />
The environment variable {{ic|SDL_VIDEODRIVER}} must not be set to {{ic|wayland}}.<br />
Try setting {{ic|SDL_VIDEODRIVER}} to {{ic|x11}} if it still does not work.<br />
<br />
=== Nuclear Throne ===<br />
<br />
==== Missing libcurl.so.4 or version CURL_OPENSSL_3 not found ====<br />
<br />
[[Install]] {{pkg|lib32-libcurl-compat}} and run the game with {{ic|1=LD_PRELOAD=libcurl.so.3}}.<br />
<br />
=== Oxygen Not Included ===<br />
<br />
==== World generation hangs ====<br />
<br />
This problem occurs with locales that use comas instead of dots to separate decimals.<br />
<br />
Set launch options in steam to {{ic|1=LANG=C %command%}}.[http://steamcommunity.com/app/457140/discussions/3/1488866180617243731/#c1488866813753688864]<br />
<br />
=== Penumbra: Overture ===<br />
<br />
Dependencies:<br />
<br />
* {{pkg|lib32-glu}}<br />
* {{pkg|lib32-libvorbis}}<br />
* {{pkg|lib32-libxft}}<br />
* {{pkg|lib32-openal}}<br />
* {{pkg|lib32-sdl_image}}<br />
* {{pkg|lib32-sdl_ttf}}<br />
<br />
==== Windowed mode ====<br />
<br />
There is no in-game option to change to the windowed mode, you will have to edit {{ic|~/.frictionalgames/Penumbra/Overture/settings.cfg}} to activate it.<br />
<br />
Find {{ic|FullScreen&#61;"true"}} and change it to {{ic|FullScreen&#61;"false"}}, after this the game should start in windowed mode.<br />
<br />
=== The Polynomial ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|ilmbase102-libs}}{{Broken package link|{{aur-mirror|ilmbase102-libs}}}}<br />
* {{AUR|openexr170-libs}}{{Broken package link|{{aur-mirror|openexr170-libs}}}}<br />
<br />
[https://github.com/ValveSoftware/steam-for-linux/issues/2721 Steam for Linux issue #2721]<br />
<br />
==== Segfaults during program start on 64-bit systems ====<br />
<br />
The game segfaults during program start because of the {{ic|LD_LIBRARY_PATH}} setting in the launcher script. Edit {{ic|''GAME''/Polynomial64}}, and comment out the {{ic|LD_LIBRARY_PATH}} variable. Make sure to put the {{ic|./bin/Polynomial64 "$@"}} command on a new line.<br />
<br />
=== Portal 2 ===<br />
<br />
==== Game does not start ====<br />
<br />
Several OpenGL-related errors (such as {{ic|PROBLEM: You appear to have OpenGL 1.4.0, but we need at least 2.0.0!}} or {{ic|libGL error: driver pointer missing}}) are caused by Portal&nbsp;2 bundling an old libstdc++ file. This error is especially common with open source Radeon drivers ({{ic|radeonsi}}).<br />
<br />
A problem with libstdc can be fixed by running the game with {{ic|1=LD_PRELOAD='/usr/$LIB/libstdc++.so.6'}}.<br />
<br />
==== Resolution too low ====<br />
<br />
When the game starts with a resolution so low that you cannot reach the game settings,<br />
run the game in windowed mode using the {{ic|-windowed}} flag.<br />
<br />
==== Missing non Latin font ====<br />
<br />
The phenomenon is no menu in Portal. Portal and Portal2 use Helvetica, add the following lines to {{ic|~/.config/fontconfig/fonts.conf}}:<br />
<br />
<match target="pattern"><br />
<test qual="any" name="family"><br />
<string>Helvetica</string><br />
</test><br />
<edit name="family" mode="assign" binding="same"><br />
<string>Source Han Sans CN</string><br />
</edit><br />
</match><br />
<br />
You can replace "Source Han Sans CN" by your favoriate and existing font.<br />
<br />
=== Prison Architect ===<br />
<br />
==== ALSA error when using PulseAudio ====<br />
<br />
The error:<br />
<br />
{{ic|ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave}}<br />
<br />
was resolved by installing:<br />
<br />
* {{pkg|pulseaudio-alsa}}<br />
* {{pkg|lib32-libpulse}}<br />
<br />
per [[PulseAudio#ALSA]].<br />
<br />
=== Project Zomboid ===<br />
<br />
Requires {{pkg|jre7-openjdk}}.<br />
<br />
==== No sound ====<br />
<br />
Prepend {{ic|/usr/lib}} to {{ic|LD_LIBRARY_PATH}}.<br />
<br />
In the game, go to the options and set all audio to the proper volume.<br />
<br />
=== Pyre ===<br />
<br />
==== Game does not start ====<br />
<br />
Remove {{ic|''GAME''/lib64/libSDL2-2.0.so.0}}.<br />
<br />
If this doesn't work, downgrade sdl2.<br />
<br />
$ pacman -U https://archive.archlinux.org/packages/s/sdl2/sdl2-2.0.6-2-x86_64.pkg.tar.xz<br />
<br />
Then add sdl2 to IgnorePkg in {{ic|/etc/pacman.conf}}.<br />
<br />
{{ic|1=IgnorePkg = sdl2}}<br />
<br />
=== Redshirt ===<br />
<br />
Requires {{pkg|lib32-libpulse}} if you use PulseAudio.<br />
<br />
=== Revenge of the Titans ===<br />
<br />
Requires {{pkg|libxtst}} and {{pkg|lib32-libxtst}}.<br />
<br />
=== Risk of Rain ===<br />
<br />
Requires {{pkg|lib32-libcurl-compat}}.<br />
Refer to [[#Missing libcurl.so.4 or version CURL_OPENSSL_3 not found]].<br />
<br />
=== Rock Boshers DX: Directors Cut ===<br />
<br />
Requires {{Pkg|lib32-libcaca}}.<br />
<br />
=== Saints Row IV ===<br />
<br />
==== Game fails to launch after update to new Nvidia drivers ====<br />
<br />
{{Accuracy|General settings not specific to this game}}<br />
<br />
Run the game with {{ic|/usr/lib32/libGLX_nvidia.so}} appended to the {{ic|LD_PRELOAD}}.<br />
<br />
==== Game causes GPU lockup with mesa drivers ====<br />
<br />
Saints Rows IV can cause a GPU lockup when trying to play on certain AMD<br />
hardware using open source drivers: [https://bugs.freedesktop.org/show_bug.cgi?id=93475 Bug 93475].<br />
<br />
A workaround is to run the game with {{ic|1=R600_DEBUG=nosb}}.<br />
<br />
=== Serious Sam 3: BFE ===<br />
<br />
==== No audio ====<br />
<br />
Try running:<br />
<br />
# mkdir -p /usr/lib/i386-linux-gnu/alsa-lib/<br />
# ln -s /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so /usr/lib/i386-linux-gnu/alsa-lib/<br />
<br />
If that does not work, try tweaking {{ic|~/.alsoftrc}} as proposed by the [http://steamcommunity.com/app/221410/discussions/3/846940248238406974/ Steam community] (Serious Sam 3: BFE uses OpenAL to output sound). If you are not using Pulse Audio, you may want to write the following configuration:<br />
<br />
{{hc|~/.alsoftrc|<nowiki><br />
[general]<br />
drivers = alsa<br />
[alsa]<br />
device = default<br />
capture = default<br />
mmap = true<br />
</nowiki>}}<br />
<br />
=== Slay the Spire ===<br />
<br />
If the game does not start or crashes at startup, install {{pkg|xorg-xrandr}}.<br />
<br />
If the game does not move sink input, you can edit the following file to allow sink moves:<br />
<br />
{{hc|~/.alsoftrc|<nowiki><br />
[pulse]<br />
allow-moves=yes<br />
</nowiki>}}<br />
<br />
=== Songbringer ===<br />
<br />
==== Launch error with Wayland ====<br />
<br />
Install {{pkg|glfw-x11}} and run the game with {{ic|1=LD_PRELOAD=/usr/lib/libglfw.so.3}}.<br />
<br />
=== Space Pirates and Zombies ===<br />
<br />
Requires {{pkg|lib32-openal}}.<br />
<br />
==== No audio ====<br />
<br />
Try running:<br />
<br />
# mkdir -p /usr/lib/i386-linux-gnu/alsa-lib/<br />
# ln -s /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so /usr/lib/i386-linux-gnu/alsa-lib/<br />
<br />
If that does not work, try tweaking {{ic|~/.alsoftrc}} as proposed by the Steam community (Serious Sam 3: BFE uses OpenAL to output sound). If you are not using Pulse Audio, you may want to write the following configuration:<br />
<br />
{{hc|~/.alsoftrc|<nowiki><br />
[general]<br />
drivers = alsa<br />
[alsa]<br />
device = default<br />
capture = default<br />
mmap = true<br />
</nowiki>}}<br />
<br />
=== Spacechem ===<br />
<br />
Dependencies:<br />
<br />
* {{Pkg|lib32-sdl_mixer}}<br />
* {{pkg|lib32-sdl_image}}<br />
* {{pkg|lib32-sqlite}}<br />
<br />
==== Game crash ====<br />
<br />
The shipped x86 version of Spacechem does not work on x64 with the game's own libSDL* files, and crashes with some strange output.<br />
<br />
To solve this just remove the three files {{ic|libSDL-1.2.so.0}}, {{ic|libSDL_image-1.2.so.0}}, {{ic|libSDL_mixer-1.2.so.0}} from the game directory.<br />
<br />
=== Splice ===<br />
<br />
Requires {{pkg|glu}}.<br />
<br />
=== The Stanley Parable ===<br />
<br />
==== Game won't start ====<br />
<br />
As discussed in the Steam store page, remove {{ic|bin/libstdc++.so.6}} from the game folder.<br />
<br />
=== Shadow Tactics: Blades of the Shogun ===<br />
<br />
Dependencies:<br />
<br />
* {{pkg|lib32-libstdc++5}}<br />
* {{pkg|lib32-libxcursor}}<br />
* {{pkg|lib32-libxrandr}}<br />
<br />
=== Steel Storm: Burning Retribution ===<br />
<br />
==== Start with black screen ====<br />
<br />
The game by default tries to launch in fullscreen mode with a resolution of 1024x768,<br />
which doesn't work on some devices (for example the Samsung Series9 laptop with Intel hd4000 video).<br />
<br />
Run the game in windowed mode by using the {{ic|-window}} flag. Then change the resolution in-game.<br />
<br />
=== Stellaris ===<br />
<br />
==== No window opening, only sound ====<br />
<br />
Happens with some AMD GPU and mesa combination, set multi_sampling=0 in ~/.local/share/Paradox\ Interactive/Stellaris/settings.txt.<br />
<br />
==== Immediate crash to desktop ====<br />
<br />
It seems that Stellaris requires a 32bit libnss_sss.so.2 to operate. You can confirm if this is your problem by running <br />
# strace ~/.local/share/Steam/steamapps/common/Stellaris/stellaris 2>&1 | grep sss <br />
and seeing if you get output like <br />
# openat(AT_FDCWD, "/usr/lib32/tls/i686/sse2/libnss_sss.so.2", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)<br />
<br />
If this is indeed your problem, download the libnss-sss package from Ubuntu's repository [https://packages.ubuntu.com/bionic/i386/libnss-sss/download], extract the libnss_sss.so.2 from the downloaded package, and place it at ~/.local/share/Steam/steamapps/common/Stellaris. The game should now load properly.<br />
<br />
=== Stephen's Sausage Roll ===<br />
<br />
==== No sound ====<br />
<br />
If using [[Steam/Troubleshooting#Native runtime|native libraries]]{{Broken section link}} and {{pkg|libpulse}} is installed, Unity may try to use that library for sound and fail.<br />
To test if this is the problem, try removing {{pkg|libpulse}} or renaming the package files that are named {{ic|libpulse-simple*}}. To see which {{pkg|libpulse}} files are relevant, run:<br />
<br />
{{hc|$ pacman -Qql libpulse <nowiki>|</nowiki> grep /usr/lib/libpulse-simple|<br />
/usr/lib/libpulse-simple.so<br />
/usr/lib/libpulse-simple.so.0<br />
/usr/lib/libpulse-simple.so.0.1.0}}<br />
<br />
If renaming any of those files works for you, you can proceed with the following instructions (revert any renaming you just did). Browse to the game's directory:<br />
<br />
$ cd "$HOME/.steam/root/steamapps/common/Stephen's Sausage Roll"<br />
<br />
And create a sub-directory that we can use to hold 0-byte look-alike library files:<br />
<br />
$ mkdir noload/<br />
<br />
Use {{ic|touch}} to create 0-byte versions of the above files that we want the dynamic linker to skip, e.g.:<br />
<br />
$ touch noload/{libpulse-simple.so,libpulse-simple.so.0,libpulse-simple.so.0.1.0}<br />
<br />
{{Note|Only a 0-byte {{ic|libpulse-simple.so.0}} file may be required.}}<br />
<br />
After you have created these 0-byte files, you can now attempt to run the game binary directly, telling the dynamic linker to use our 0-byte files:<br />
<br />
$ LD_LIBRARY_PATH="noload/:$LD_LIBRARY_PATH" ./Sausage.x86_64<br />
<br />
If everything works up to this point, prepend {{ic|noload/}} to your {{ic|LD_LIBRARY_PATH}}.<br />
<br />
Again, this should work because Steam checks for a {{ic|noload/}} directory relative to the game's directory. The dynamic linker should respect the {{ic|$LD_LIBRARY_PATH}} variable and fail to load the necessary {{pkg|libpulse}} files. The game should then fallback to plain ALSA.<br />
<br />
=== Superbrothers: Sword & Sworcery EP ===<br />
<br />
Dependencies:<br />
<br />
* {{pkg|lib32-glu}}<br />
* {{pkg|lib32-libpulse}} if you use PulseAudio<br />
<br />
The game bundles an outdated version of libstdc++ which prevents the game from starting. [http://steamcommunity.com/app/204060/discussions/0/364039785161291413] The following can be observed when you run Steam and S&S from the terminal:<br />
<br />
libGL error: unable to load driver: i965_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: i965<br />
libGL error: unable to load driver: i965_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: i965<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
To solve this problem remove {{ic|''GAME''/lib/libstdc++.so.6*}}. After that the game will use the libstdc++ from Steam.<br />
<br />
=== System Shock 2 ===<br />
<br />
You get these errors when running it with the native client:<br />
<br />
C:\windows\system32\winedevice.exe: symbol lookup error: /usr/lib32/libX11.so.6: undefined symbol: xcb_wait_for_reply64<br />
C:\windows\system32\wineboot.exe: symbol lookup error: /usr/lib32/libX11.so.6: undefined symbol: xcb_wait_for_reply64<br />
<br />
Just delete or rename the libxcb library it got shipped with:<br />
<br />
mv /mnt/olhdd/steam/steamapps/common/SS2/lib/libxcb.so.1{,.old}<br />
mv /mnt/olhdd/steam/steamapps/common/SS2/lib/libxcb.so.1.1.0{,.old}<br />
<br />
==== Game won't launch ====<br />
<br />
If you encounter the game not launching do the following:<br />
<br />
Cut & Paste libsteam_api.so from the "SS2/Bin" folder within the main steam common folder and transfer it to "SS2" main game folder not the sub folder "SS2/bin"<br />
<br />
After Cut & Paste put LD_PRELOAD='/usr/$LIB/libxcb.so.1' %command% into the Launch options <br />
<br />
Once all of these have been implemented the game should work after hitting play on steam.<br />
<br />
==== Resolution fix ====<br />
<br />
You may encounter some resolution problems with this game on steam not working properly in full screen mode. Do the following:<br />
<br />
Open cam.cfg in the SS2 folder you may have to search for it via the search mode while in the game folder:<br />
<br />
Place game_screen_size 1024 768 or game_screen_size 1920 1080 depending on your resolution & put game_full_screen 1 into bottom of the cam.cfg file. <br />
<br />
Then go to cam_ext.cfg and next to the display setting place a simi-colon prefix next to the use_d3d_display option so it should be like this ;use_d3d_display it should then properly not go off-screen and should stay full screen within the active main screen.<br />
<br />
=== Tabletop Simulator ===<br />
<br />
==== CJK characters not showing in game ====<br />
<br />
Install {{pkg|wqy-microhei}} and {{pkg|wqy-microhei-lite}}.<br />
<br />
=== Team Fortress 2 ===<br />
<br />
Requires {{Pkg|lib32-libpng12}}.<br />
<br />
==== HRTF setup ====<br />
<br />
Assuming HRTF (head-related transfer function) has been properly set up in the operating system, HRTF won't be enabled unless you disable the original processing. To do so, use<br />
<br />
dsp_slow_cpu 1<br />
<br />
For best results, also change the following:<br />
<br />
snd_spatialize_roundrobin 1<br />
dsp_enhance_stereo 0<br />
snd_pitchquality 1<br />
<br />
==== Loading screen freeze ====<br />
<br />
If you are a non-English (speaking) user, you have to enable "en_US.UTF-8" in the locale.gen! Generate a new locale after that.<br />
<br />
==== No audio ====<br />
<br />
It happens if there is no PulseAudio in your system.<br />
If you want to use [[ALSA]], you need to launch Steam or the game directly with {{ic|1=SDL_AUDIODRIVER=alsa}}<br />
(From [http://steamcommunity.com/app/221410/discussions/0/882966056462819091/#c882966056470753683 SteamCommunity]).<br />
<br />
If it still does not work, you may also need to set the environment variable AUDIODEV. For instance {{ic|1=AUDIODEV=Live}}. Use {{ic|aplay -l}} to list the available sound cards.<br />
<br />
==== Slow loading textures ====<br />
<br />
If you are using Chris' FPS Configs or any other FPS config, you may have set {{ic|mat_picmip}} to {{ic|2}}. This spawns multiple threads for texture loading, which may cause more jittering and lag on Linux, especially on alternative kernels. Try setting it to {{ic|-1}}, the default.<br />
<br />
=== Terraria ===<br />
<br />
See the KNOWN ISSUES & WORKAROUNDS section of the [http://forums.terraria.org/index.php?threads/terraria-1-3-0-8-can-mac-linux-come-out-play.30287/ release announcement].<br />
<br />
=== This War of Mine ===<br />
<br />
==== Game does not start ====<br />
<br />
This happens because of an incompatibility with the newer version of {{ic|lib32-curl}}. To fix the problem , set your [[launch option]]s to:<br />
LD_PRELOAD=./libcurl.so.4 %command%<br />
<br />
==== Sound glitches with Steam native ====<br />
<br />
The bundled {{ic|libOpenAL}} might not work correctly, try symlinking {{ic|/usr/lib32/libopenal.so}} to {{ic|''GAME''/libOpenAL.so}}.<br />
<br />
=== Ticket to Ride ===<br />
<br />
Dependencies:<br />
<br />
* {{AUR|lib32-gstreamer0.10-base}}<br />
* {{AUR|lib32-pangox-compat}}<br />
<br />
As lib32-gstreamer0.10-base is quite hard to build you can use [[Unofficial_user_repositories#alucryd-multilib|alucryd-multilib]] repo for this package<br />
<br />
=== The Tiny Bang Story ===<br />
<br />
==== Missing libGLEW.so.1.6 ====<br />
<br />
# ln -s /usr/lib32/libGLEW.so.1.10.0 /usr/lib32/libGLEW.so.1.6<br />
<br />
=== Tomb Raider ===<br />
<br />
==== Game immediately closes when running with steam-native ====<br />
<br />
Tomb Raider has a very heavy amount of dependency on the Steam runtime, the easiest solution is to just run it using the runtime.<br />
<br />
==== Steam Controller not working in-game====<br />
<br />
If your Steam Controller is correctly recognized and paired but still not working in-game try the following:<br />
<br />
* In Steam, non Big Screen, go to ''Settings > Account > Beta participation > Change...'' and in the dropdown select box select Steam Beta Update<br />
* Restart Steam<br />
* Go to Big Screen and start Tomb Raider<br />
<br />
Correctly recognized means you can control the desktop mouse and Steam in Big Picture mode and the controller is shown in the Big Picture settings.<br />
<br />
<br />
=== Torchlight 2 ===<br />
<br />
==== Libfreetype/libfontconfig Incompatibility ====<br />
<br />
If you are experiencing issues with launching Torchlight 2, it could be due to using a newer libfontconfig than the game currently supports.<br />
<br />
Right click the game in Steam, and set the following as it's launch option:<br />
<br />
LD_PRELOAD=/usr/lib/libfreetype.so.6 %command%<br />
<br />
then attempt launching the game. <br />
<br />
Alternately, re-naming or deleting these 2 files will force it to use your system's libraries:<br />
<br />
Torchlight 2/game/lib/libfreetype.so.6<br />
Torchlight 2/game/lib64/libfreetype.so.6<br />
<br />
==== Locale incompatibility ====<br />
<br />
Some users report that Torchlight 2 does not work if you do not have en_US.UTF8 in your locale. <br />
<br />
Double check you have generated the locale needed in [[Steam#Installation|Steam Installation Requirements]].<br />
<br />
=== Tower Unite ===<br />
<br />
==== Graphical Glitches ====<br />
<br />
This is a known issue, and it occurs because the shaders had not been ported to Linux yet by the developers.<br />
To minimize glitches and make the game playable add {{ic|-opengl4}} to your [[launch option]]s,<br />
set Ocean Quality to "Potato" and Effects Quality to "Low" in the game settings.<br />
<br />
=== Towns / Towns Demo ===<br />
<br />
Requires [[Java]].<br />
<br />
=== Transistor ===<br />
<br />
==== Crash on launch / FMOD binding crash / audio issues ====<br />
<br />
Run the game with:<br />
<br />
LD_PRELOAD='/usr/lib/libstdc++.so.6:/usr/lib/libgcc_s.so.1:/usr/lib/libxcb.so.1:/usr/lib/libasound.so.2'<br />
<br />
Otherwise, run the game via shell and set up proper audio device for FMOD, as discussed in [https://steamcommunity.com/app/237930/discussions/2/620695877176333955/].<br />
<br />
Also, check out this thread [https://steamcommunity.com/app/237930/discussions/2/492378265893557247/].<br />
<br />
=== Transmissions: Element 120 ===<br />
<br />
Dependencies:<br />
<br />
* {{Pkg|lib32-libgcrypt15}}<br />
* {{pkg|lib32-libpng12}}<br />
<br />
==== Troubleshooting ====<br />
<br />
Make sure you have all libraries installed. Above the standard set required by Steam runtime, the game requires few additional ones. The typical error message that indicates that is<br />
<br />
AppFramework : Unable to load module vguimatsurface.so!<br />
<br />
To find missing dependencies go into the game directory and run:<br />
<br />
LD_LIBRARY_PATH=bin ldd bin/vguimatsurface.so<br />
<br />
Look for entries that say ''not found''.<br />
<br />
=== Trine 2 ===<br />
<br />
Dependencies:<br />
<br />
* {{pkg|lib32-glu}}<br />
* {{pkg|lib32-libxxf86vm}}<br />
* {{pkg|lib32-openal}}<br />
* {{pkg|xorg-xwininfo}}<br />
* {{pkg|lib32-libdrm}}<br />
<br />
* {{pkg|lib32-libpng12}}<br />
* {{pkg|lib32-libwrap}}<br />
<br />
==== Colors ====<br />
<br />
If colors are wrong with FOSS drivers (r600g at least), try to run the game in windowed mode, rendering will be corrected. ([https://bugs.freedesktop.org/show_bug.cgi?id=60553 bug report])<br />
<br />
==== Sound ====<br />
<br />
{{Accuracy|General settings not specific to this game}}<br />
<br />
If sound plays choppy, try:<br />
<br />
{{hc|/etc/openal/alsoft.conf|<nowiki><br />
drivers=pulse,alsa<br />
frequency=48000<br />
</nowiki>}}<br />
<br />
==== Resolution ====<br />
<br />
If the game resolution is wrong when using a dual monitor setup and you can't see the whole window edit {{ic|~/.frozenbyte/Trine2/options.txt}} and change the options {{ic|ForceFullscreenWidth}} and {{ic|ForceFullscreenHeight}} to the resolution of your monitor on which you want to play the game.<br />
<br />
=== Tropico 5 ===<br />
<br />
==== Blank screen with sound only on startup ====<br />
<br />
Run the game with {{ic|1=MESA_GL_VERSION_OVERRIDE=4.0 MESA_GLSL_VERSION_OVERRIDE=400}}.<br />
<br />
=== Unity of Command ===<br />
<br />
Requires {{pkg|lib32-pango}}.<br />
<br />
==== Squares ====<br />
<br />
If squares are shown instead of text, try removing {{ic|''GAME''/bin/libpangoft2-1.0.so.0}}.<br />
<br />
==== No audio ====<br />
<br />
If you get this error:<br />
<br />
ALSA lib dlmisc.c:254:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/i386-linux-gnu/alsa-lib/libasound_module_pcm_pulse.so<br />
<br />
Try running:<br />
<br />
# mkdir -p /usr/lib/i386-linux-gnu/alsa-lib/<br />
# ln -s /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so /usr/lib/i386-linux-gnu/alsa-lib/<br />
<br />
=== Unity3D ===<br />
<br />
Games based on the Unity3D engine, like ''War For The Overworld'' or ''Pixel Piracy'' may need the package {{pkg|lsb-release}} to understand that they run on Linux and work properly.<br />
<br />
==== Locale settings ====<br />
<br />
Games made in C# often have a problem with some locales (e.g. Russian, German) because developers don't specify locale-agnostic number formatting. This can result in some game screens loading only partially, problems with online features or other bugs.<br />
<br />
To work around this, run the game with {{ic|1=LC_ALL=C}}.<br />
<br />
Affected games: ''FORCED, Gone Home, Ichi, Nimble Quest, Syder Arcade''.<br />
<br />
==== Unity 5 sound problems ====<br />
<br />
The sound system in Unity 5 changed and to be able to play games created with it you must most likely install and run [[PulseAudio]].<br />
<br />
Another solution is to disable the Steam runtime: in the launch options for the game, write this: {{ic|1=LD_LIBRARY_PATH="" %command%}}<br />
<br />
Another solution is to prevent Unity from trying to use pulseaudio using {{AUR|pulsenomore}} package from the [[AUR]]. Once it is installed, use the following as launch options :{{ic|/usr/bin/pulsenomore %command%}}<br />
<br />
Affected games: ''Kerbal Space Program, SUPERHOT, ClusterTruck''<br />
<br />
==== Game launching on wrong monitor in fullscreen mode ====<br />
<br />
Unity games that do not support monitor selection will most likely launch the game on a wrong monitor.<br />
<br />
The problem is that Unity games write the default parameter {{ic|1=<pref name="UnitySelectMonitor" type="int">-1</pref>}} to the game config file.<br />
<br />
This will lead to the game launching on a non-primary monitor.<br />
<br />
When changing to value into {{ic|1=<pref name="UnitySelectMonitor" type="int">'''0'''</pref>}} for the according game, the game will start on the correct (primary) monitor.<br />
<br />
A Unity game config file usually resides in {{ic|~/.config/unity3d/''CompanyName''/''ProductName''/prefs}}.<br />
<br />
Affected games: ''Cities: Skylines, Tabletop Simulator, Assault Android Cactus, Wasteland 2, Tyranny, Beat Cop''.<br />
<br />
Be aware that some games do not support setting that parameter, it will simply be ignored. This is the case for ''Pillars of Eternity'', ''Kentucky Route Zero'', ''Sunless Sea''.<br />
<br />
==== Chinese/Japanese/Korean display bug ====<br />
<br />
Install {{pkg|wqy-microhei}} and {{pkg|wqy-microhei-lite}}. Then<br />
<br />
#fc-cache -fv<br />
<br />
==== Game does not respond ====<br />
<br />
Add the following line to your [[launch option]]s :<br />
<br />
SDL_DYNAMIC_API=/usr/lib/libSDL2-2.0.so %command%<br />
<br />
=== Unrest ===<br />
<br />
Requires {{pkg|fluidsynth}}.<br />
<br />
=== Volgarr the Viking ===<br />
<br />
Delete the {{ic|lib}} directory in the game directory to get rid of the libGL errors.<br />
<br />
=== War Thunder ===<br />
<br />
==== No audio ====<br />
<br />
If there is no audio after launching the game, install {{pkg|pulseaudio-alsa}}.<br />
<br />
==== Blank screen ====<br />
<br />
If having a green or blank screen on startup, run the game with {{ic|1=MESA_GL_VERSION_OVERRIDE=4.1COMPAT}}. [https://forum.warthunder.com/index.php?/topic/267809-linux-potential-workaround-for-mesa-drivers-black-screen/] [http://forum.warthunder.com/index.php?search_term=0030709&app=core&module=search&do=search&fromMainBar=1&search_app=forums%3Aforum%3A920&sort_field=&sort_order=&search_in=posts]<br />
<br />
=== Warhammer 40,000: Dawn of War II ===<br />
<br />
Dependencies:<br />
<br />
* {{Pkg|alsa-lib}}<br />
* {{Pkg|librtmp0}}<br />
<br />
The start script does not point to the right direction of {{ic|libasound.so.2}}.<br />
<br />
To fix it open {{ic|''GAME''/DawnOfWar2.sh}} and replace the following lines:<br />
<br />
{{bc|<nowiki>HAS_LSB_RELEASE=$(command -v lsb_release)<br />
if [ -n "${HAS_LSB_RELEASE}" ] && [ "$(lsb_release -c | cut -f2)" = "trusty" ]; then<br />
LD_PRELOAD_ADDITIONS="/usr/lib/x86_64-linux-gnu/libasound.so.2:${LD_PRELOAD_ADDITIONS}"<br />
fi </nowiki>}}<br />
<br />
with:<br />
<br />
{{bc|1=LD_PRELOAD_ADDITIONS="/usr/lib64/libasound.so.2:${LD_PRELOAD_ADDITIONS}"}}<br />
<br />
=== We Were Here ===<br />
<br />
==== Stuck on black screen or logo on launch ====<br />
<br />
Add {{ic|-screen-fullscreen 0}} to launch options. [https://steamcommunity.com/app/582500/discussions/1/1470840994974091613/]<br />
<br />
=== Worms W.M.D ===<br />
<br />
The game includes several workarounds in the {{ic|Run.sh}} script, however these may not work and it is easy to get the game running without this script.<br />
<br />
First, try running the game directly from its game directory using {{ic|Worms W.M.Dx64}}. If you get a "No such file or directory" error about libcurl-gnutls, install {{pkg|libcurl-gnutls}}. If the game crashes after playing the intro movies, add the Steam Runtime dbus libraries to the game's library directory:<br />
<br />
$ ln -s ~/.steam/steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/*dbus* ~/.steam/steam/steamapps/common/WormsWMD/lib<br />
<br />
Now the game should run using the default "Play Worms W.M.D" option. See also Steam community discussions [https://steamcommunity.com/app/327030/discussions/2/133257959065155871/] and [https://steamcommunity.com/app/327030/discussions/1/343785380902286766/].<br />
<br />
On some systems there are terrain bugs where holes in terrain are not rendered properly and worms can fall through terrain unexpectedly. These bugs can make the game unplayable in many situations and there is no known fix for them.<br />
<br />
=== Witcher 2: Assassin of Kings ===<br />
<br />
Dependencies:<br />
<br />
* {{Pkg|lib32-gnutls}}<br />
* {{Pkg|lib32-libcurl-compat}}<br />
* {{Pkg|lib32-libcurl-gnutls}}<br />
* {{Pkg|lib32-sdl2_image}}<br />
* {{Pkg|lib32-sdl2}}<br />
<br />
==== Game does not start ====<br />
<br />
If the game does not run, enable error messages:<br />
<br />
$ LIBGL_DEBUG=verbose ./witcher2<br />
<br />
=== Wizardry 6: Bane of the Cosmic Forge ===<br />
<br />
Requires [[DOSBox]].<br />
<br />
To fix the crash at start, open {{ic|''GAME''/dosbox_linux/launch_wizardry6.sh}} and:<br />
<br />
# comment the line {{ic|1=export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./libs}}<br />
# change the beginning of the line starting with {{ic|exec ./dosbox}} to {{ic|exec dosbox}}<br />
<br />
=== World of Goo ===<br />
<br />
==== Changing resolution ====<br />
To change the game resolution edit the ''Graphics display'' section in {{ic|''GAME''/properties/config.txt}}. For example:<br />
<br />
<nowiki><!-- Graphics display --></nowiki><br />
<param name="screen_width" value="1680" /><br />
<param name="screen_height" value="1050" /><br />
<param name="color_depth" value="0" /><br />
<param name="fullscreen" value="true" /><br />
<param name="ui_inset" value="10" /><br />
<br />
=== X3: Terran Conflict ===<br />
<br />
==== Game crashes on startup ==== <br />
<br />
The game may crash on startup because it's linked to libz version 1.2.9, while the latest version of this library in Arch Linux is higher. The following message in the terminals appears in this case:<br />
./X3TC_config: lib/libz.so.1: version 'ZLIB_1.2.9' not found (required by /usr/lib32/libpng16.so.16<br />
<br />
Running the game with {{ic|1=LD_PRELOAD='/usr/lib32/libz.so.1.2.11'}} may help.<br />
<br />
=== XCOM ===<br />
<br />
Dependencies:<br />
<br />
* {{Pkg|librtmp0}}<br />
* {{Pkg|sdl2_image}} (required to enable keyboard functionality in-game)<br />
<br />
==== Hangs on startup ====<br />
<br />
If you are running a [[hybrid graphics]] system, try:<br />
<br />
__GL_THREADED_OPTIMIZATIONS=0 primusrun %command%<br />
<br />
==== Graphical glitches on Intel HD ====<br />
<br />
XCOM: Enemy Unknown may not recognize the SDL2 shared libraries shipped with the Steam runtime.<br />
Check if the binary finds all required files and install missing packages if necessary ({{Pkg|sdl2}} and {{Pkg|sdl2_image}}).<br />
<br />
{{bc|ldd binaries/linux/game.x86_64 | grep "not found"}}</div>Cknight70https://wiki.archlinux.org/index.php?title=Screen_capture&diff=510869Screen capture2018-02-15T17:37:46Z<p>Cknight70: Added Kshare to the list</p>
<hr />
<div>[[Category:Image manipulation]]<br />
[[cs:Taking a screenshot]]<br />
[[es:Taking a screenshot]]<br />
[[fr:Capture d'écran]]<br />
[[ja:スクリーンショットの取得]]<br />
[[ru:Taking a screenshot]]<br />
[[zh-hans:Taking a screenshot]]<br />
{{Related articles start}}<br />
{{Related|Extra keyboard keys}}<br />
{{Related articles end}}<br />
This article explains different methods to take [[Wikipedia:Screenshot|screenshots]] on your system.<br />
<br />
== Dedicated software ==<br />
<br />
* {{App|Deepin Screenshot|A quite easy-to-use screenshot tool. Features: global hotkey to trigger screenshot tool, take screenshot of a selected area, easy to add text and line drawings onto the screenshot. Python/Qt5 based.|https://www.deepin.org/|{{Pkg|deepin-screenshot}}}}<br />
* {{App|Escrotum|Screen capture using pygtk, inspired by scrot.|https://github.com/Roger/escrotum|{{AUR|escrotum-git}}}}<br />
* {{App|Flameshot|QT5 based software for interactive screenshot taking. Select the desired area, draw with different tools and enjoy the customization capabilities.|https://github.com/lupoDharkael/flameshot|{{AUR|flameshot}}}}<br />
* {{App|gnome-screenshot|Despite its name its dependencies are only dconf, gtk3, and libcanberra.|http://gnome.org|{{Pkg|gnome-screenshot}}}}<br />
* {{App|gscreenshot|Simple GTK screenshot utility with delays, selection, and copy-to-clipboard functionality.|https://github.com/thenaterhood/gscreenshot|{{AUR|gscreenshot}}}}<br />
* {{App|imgur-screenshot|Take screenshot selection, upload to [http://imgur.com imgur]. + more cool things|https://github.com/jomo/imgur-screenshot|{{AUR|imgur-screenshot-git}}}}<br />
* {{App|KShare|A ShareX inspired cross platform utility written with Qt.|https://kshare.arsenarsen.com|{{AUR|kshare}}}}<br />
* {{App|Lightscreen|Lightscreen is a simple tool to automate the tedious process of saving and cataloging screenshots, it operates as a hidden background process that is invoked with one (or multiple) hotkeys and then saves a screenshot file to disk according to the user's preferences.|http://lightscreen.com.ar|{{AUR|lightscreen}}}}<br />
* {{App|maim|A simple command line utility that takes screenshots. It's meant to replace scrot and performs better than scrot in many ways.|https://github.com/naelstrof/maim|{{Pkg|maim}}}}<br />
* {{App|screencloud| allows you to take a screenshot of the entire screen or to select an area and then uploading the screenshot to [http://imgur.com imgur]+auth. has plugins and system tray. |http://screencloud.net/|{{AUR|screencloud}}}}<br />
* {{App|screengrab|Cross-platform application designed to quickly take screenshots (Qt).|http://screengrab.doomer.org/|{{AUR|screengrab}}}}<br />
* {{App|[[Wikipedia:Scrot|Scrot]]|Simple command-line screenshot utility for X.|http://freecode.com/projects/scrot|{{Pkg|scrot}}}}<br />
* {{App|Shutter|Rich screenshot and editing program. Supports [https://hyp.is/AVQUNTRUH9ZO4OKSlue9/askubuntu.com/questions/252281/how-do-i-take-screenshots-with-a-delay/260178 delay]. |http://shutter-project.org/|{{AUR|shutter}}}}<br />
* {{App|Spectacle|[[KDE]] application for taking screenshots. It is capable of capturing images of the whole desktop, a single window, a section of a window, a selected rectangular region or a freehand region. Part of {{Grp|kdegraphics}}.|https://github.com/KDE/spectacle/|{{Pkg|spectacle}}}}<br />
* {{App|Xfce4 Screenshooter|This application allows you to capture the entire screen, the active window or a selected region. You can set the delay that elapses before the screenshot is taken and the action that will be done with the screenshot: save it to a PNG file, copy it to the clipboard, open it using another application, or host it on free online image hosting services Imgur and ZimageZ. Part of {{Grp|xfce4-goodies}}.|http://goodies.xfce.org/projects/applications/xfce4-screenshooter|{{Pkg|xfce4-screenshooter}}}}<br />
* {{App|xwd|X Window System image dumping utility|http://xorg.freedesktop.org/|{{Pkg|xorg-xwd}}}}<br />
<br />
== Packages including a screenshot utility ==<br />
<br />
* {{App|[[Wikipedia:GIMP|GIMP]]|Image editing suite in the vein of proprietary editors such as [[Wikipedia:Adobe Photoshop|Adobe Photoshop]]. GIMP ([[GNU]] Image Manipulation Program) has been started in the mid 1990s and has acquired a large number of [[CMYK support in The GIMP|plugins]] and additional tools.|http://www.gimp.org/|{{Pkg|gimp}}}}<br />
* {{App|[[Wikipedia:GraphicsMagick|GraphicsMagick]]|Fork of ImageMagick designed to have API and command-line stability. It also supports multi-CPU for enhanced performance and thus is used by some large commercial sites (Flickr, etsy) for its performance.|http://www.graphicsmagick.org/|{{Pkg|graphicsmagick}}}}<br />
* {{App|[[Wikipedia:ImageMagick|ImageMagick]]|Command-line image manipulation program. It is known for its accurate format conversions with support for over 100 formats. Its API enables it to be scripted and it is usually used as a backend processor.|http://www.imagemagick.org/script/index.php|{{Pkg|imagemagick}}}}<br />
* {{App|Imlib2|Library that does image file loading and saving as well as rendering, manipulation, arbitrary polygon support.|http://sourceforge.net/projects/enlightenment/|{{Pkg|imlib2}}}}<br />
* {{App|MATE Utils|Common MATE utilities for viewing disk usage, logs and fonts, taking screenshots, managing dictionaries and searching files.|http://mate-desktop.org|{{Pkg|mate-utils}}}}<br />
<br />
== Details: general methods ==<br />
<br />
=== ImageMagick/GraphicsMagick ===<br />
<br />
An easy way to take a screenshot of your current system is using the {{ic|import}} command:<br />
$ import -window root screenshot.jpg<br />
<br />
{{ic|import}} is part of the {{Pkg|imagemagick}} package.<br />
<br />
Running {{ic|import}} without the {{ic|-window}} option allows selecting a window or an arbitrary region interactively.<br />
<br />
{{Note|If you prefer '''graphicsmagick''' alternative, just prepend "gm", e.g. {{ic|$ gm import -window root screenshot.jpg}}.}}<br />
<br />
==== Screenshot of multiple X screens ====<br />
<br />
If you run twinview or dualhead, simply take the screenshot twice and use {{Ic|imagemagick}} to paste them together:<br />
{{bc|<br />
import -window root -display :0.0 -screen /tmp/0.png<br />
import -window root -display :0.1 -screen /tmp/1.png<br />
convert +append /tmp/0.png /tmp/1.png screenshot.png<br />
rm /tmp/{0,1}.png<br />
}}<br />
<br />
==== Screenshot of individual Xinerama heads ====<br />
<br />
Xinerama-based multi-head setups have only one virtual screen. If the physical screens are different in height, you will find dead space in the screenshot. In this case, you may want to take screenshot of each physical screen individually. As long as Xinerama information is available from the X server, the following will work:<br />
{{bc|<nowiki><br />
#!/bin/sh<br />
xdpyinfo -ext XINERAMA | sed '/^ head #/!d;s///' |<br />
while IFS=' :x@,' read i w h x y; do<br />
import -window root -crop ${w}x$h+$x+$y head_$i.png<br />
done<br />
</nowiki>}}<br />
<br />
==== Screenshot of the active/focused window ====<br />
<br />
The following script takes a screenshot of the currently focused window. It works with EWMH/NetWM compatible X Window Managers. To avoid overwriting previous screenshots, the current date is used as the filename.<br />
{{bc|<nowiki><br />
#!/bin/sh<br />
activeWinLine=$(xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)")<br />
activeWinId=${activeWinLine:40}<br />
import -window "$activeWinId" /tmp/$(date +%F_%H%M%S_%N).png<br />
</nowiki>}}<br />
<br />
Alternatively, the following should work regardless of EWMH support:<br />
$ import -window "$(xdotool getwindowfocus -f)" /tmp/$(date +%F_%H%M%S_%N).png<br />
<br />
{{Note|If screenshots of some programs (dwb and zathura) appear blank, try appending {{ic|-frame}} or removing {{ic|-f}} from the {{ic|xdotool}} command.}}<br />
<br />
=== GIMP ===<br />
<br />
You also can take screenshots with GIMP (''File > Create > Screenshot''...).<br />
<br />
=== xwd ===<br />
<br />
Take a screenshot of the root window:<br />
$ xwd -root -out screenshot.xwd<br />
<br />
{{Note|The methods for taking shots of active windows with {{ic|import}} can also be used with {{ic|xwd}}.}}<br />
<br />
=== scrot ===<br />
<br />
{{Pkg|scrot}} enables taking screenshots from the CLI and offers features such as a user-definable time delay. Unless instructed otherwise, it saves the file in the current working directory.<br />
$ scrot -t 20 -d 5<br />
<br />
The above command saves a dated {{ic|.png}} file, along with a thumbnail (20% of original), for Web posting. It provides a 5 second delay before capturing in this instance.<br />
<br />
You can also use standard date and time formatting when saving to a file. e.g.,<br />
$ scrot ~/screenshots/%Y-%m-%d-%T-screenshot.png<br />
<br />
saves the screenshot in a filename with the current year, month, date, hours, minutes, and seconds to a folder in your home directory called "screenshots" <br />
<br />
See {{man|1|scrot}} for more information. You can simply automate the file to uploaded like so [https://github.com/kaihendry/Kai-s--HOME/tree/master/bin].<br />
<br />
{{Note|In some window managers ({{AUR|dwm}}, {{Pkg|xmonad}} and possibly others) {{ic|scrot -s}} does not work properly when running via window manager's keyboard shortcut, this can be worked around by prepending scrot invocation with a short pause {{ic|sleep 0.2; scrot -s}}.}}<br />
<br />
=== escrotum ===<br />
<br />
{{AUR|escrotum-git}} screen capture using pygtk, inspired by scrot<br />
<br />
Created because scrot has glitches when selection mode is used with refreshing windows.<br />
<br />
Because the command line interface its almost the same as scrot, can be used as a replacement of it.<br />
<br />
=== imlib2 ===<br />
<br />
{{Pkg|imlib2}} provides a binary {{ic|imlib2_grab}} to take screenshots. To take a screenshot of the full screen, type:<br />
$ imlib2_grab screenshot.png<br />
<br />
Note that {{Pkg|scrot}} actually uses {{ic|imlib2}}.<br />
<br />
=== maim ===<br />
<br />
{{Pkg|maim}} is aimed to be an improved scrot.<br />
<br />
Takes screenshots of your desktop using [https://github.com/naelstrof/slop slop] for regions. It's meant to overcome shortcomings of scrot.<br />
<br />
=== FFmpeg ===<br />
<br />
[[FFmpeg]] provides an x11grab device that allows the screen to be captured in X11.<br />
<br />
Take a screenshot on a ''width'' x ''height'' display:<br />
<br />
$ ffmpeg -f x11grab -video_size ''width''x''height'' -i $DISPLAY -vframes 1 screen.png<br />
<br />
Here, the PNG codec is used as it's lossless and suitable for screenshots, but any image codec can be used.<br />
<br />
The same device allows for screencasting (on a display with a refresh rate of ''rate'' HZ):<br />
<br />
$ ffmpeg -f x11grab -video_size ''width''x''height'' -framerate ''rate'' -i $DISPLAY -c:v libx264 -preset ultrafast cast.mkv<br />
<br />
Here, the x264 codec with the fastest possible encoding speed is used. Other codecs can be used; if writing each frame is too slow (either due to inadequate disk performance or slow encoding), then frames will be dropped and video output will be choppy.<br />
<br />
=== Weston ===<br />
<br />
In the [[Wayland#Weston|Weston]] Wayland compositor, screenshots can be taking by pressing {{ic|Super+s}}, which are stored in Weston's current working directory. Screencasts are also supported; recording is started and stopped by pressing {{ic|Super+r}}, which will create a file called {{ic|capture.wcap}} in Weston's current working directory. The capture can be decoded to YUV format by running {{ic|wcap-decode --yuv4mpeg2 capture.wcap}}; the output of this command can be written to a file or piped into FFmpeg for further processing.<br />
<br />
== Details: desktop environment specific ==<br />
<br />
=== Spectacle ===<br />
<br />
If you use [[KDE]], you might want to use {{ic|Spectacle}}.<br />
<br />
Spectacle is provided by the {{Pkg|spectacle}}.<br />
<br />
=== Xfce Screenshooter ===<br />
<br />
If you use [[Xfce]] you can install {{Pkg|xfce4-screenshooter}} and then add a keyboard binding:<br />
<br />
''Xfce Menu > Settings > Keyboard > Application Shortcuts''<br />
<br />
If you want to skip the Screenshot prompt, type {{ic|$ xfce4-screenshooter -h}} in terminal for the options.<br />
<br />
=== GNOME ===<br />
<br />
[[GNOME]] users can press {{ic|Prnt Scr}} or ''Apps > Accessories > Take Screenshot''. You may need to install {{Pkg|gnome-screenshot}}.<br />
<br />
=== Cinnamon ===<br />
The default installation of [[Cinnamon]] does not provide a screenshot utility. Installing {{Pkg|gnome-screenshot}} will enable screenshots through the ''Menu > Accessories > Screenshot'' or by pressing {{ic|Prnt Scr}}.<br />
<br />
=== Other desktop environments or window managers ===<br />
<br />
For other desktop environments such as [[LXDE]] or window managers such as [[Openbox]] and [[Compiz]], one can add the above commands to the hotkey to take the screenshot. For example,<br />
$ import -window root ~/Pictures/$(date '+%Y%m%d-%H%M%S').png<br />
Adding the above command to the {{ic|Prnt Scr}} key to Compiz allows to take the screenshot to the Pictures folder according to date and time.<br />
Notice that the {{ic|rc.xml}} file in Openbox does not understand commas; so, in order to bind that command to the {{ic|Prnt Scr}} key in Openbox, you need to add the following to the keyboard section of your {{ic|rc.xml}} file:<br />
<br />
{{hc|rc.xml|<nowiki><br />
<!-- Screenshot --><br />
<keybind key="Print"><br />
<action name="Execute"><br />
<command>sh -c "import -window root ~/Pictures/$(date '+%Y%m%d-%H%M%S').png"</command><br />
</action><br />
</keybind><br />
</nowiki>}}<br />
<br />
If the {{ic|Print}} above does not work, see [[Extra keyboard keys]] and use different ''keysym'' or ''keycode''.<br />
<br />
== Terminal ==<br />
<br />
=== Output with ansi codes ===<br />
<br />
You can use the {{ic|script}} command, part of the {{Pkg|util-linux}} package.<br />
Just enter {{ic|$ script}} and from that moment, all the output is going to be saved to the {{ic|typescript}} file, including the ansi codes.<br />
<br />
Once you are done, just type {{ic|exit}} and the {{ic|typescript}} would ready. The resulting file can be converted to html using the package {{AUR|ansi2html}}, from the [[AUR]].<br />
<br />
To convert the {{ic|typescript}} file to {{ic|typescript.html}}, do the following:<br />
<br />
$ ansi2html --bg=dark < typescript > typescript.html<br />
<br />
Actually, '''some''' commands can be piped directly to ansi2html:<br />
<br />
$ ls --color|ansi2html --bg=dark >output.html<br />
<br />
That does not work on every single case, so in those cases, using {{ic|script}} is mandatory.<br />
<br />
=== Virtual console ===<br />
<br />
Install a [[framebuffer]] and use {{AUR|fbgrab}} or {{AUR|fbdump}} to take a screenshot.<br />
<br />
If you merely want to capture the text in the console and not an actual image, you can use {{ic|setterm}}, which is part of the {{Pkg|util-linux}} package. The following command will dump the textual contents of virtual console 1 to a file screen.dump in the current directory:<br />
# setterm -dump 1 -file screen.dump<br />
<br />
Root permission is needed because the contents of {{ic|/dev/vcs1}} need to be read.</div>Cknight70https://wiki.archlinux.org/index.php?title=Libinput&diff=510734Libinput2018-02-14T03:14:00Z<p>Cknight70: "Large set" may be a bit too generous</p>
<hr />
<div>{{Lowercase title}}<br />
[[Category:Input devices]]<br />
[[ja:Libinput]]<br />
{{Related articles start}}<br />
{{Related|Xorg}}<br />
{{Related|Touchpad Synaptics}}<br />
{{Related|Wayland}}<br />
{{Related articles end}}<br />
<br />
From the [https://freedesktop.org/wiki/Software/libinput/ libinput] wiki page: <br />
<br />
:libinput is a library to handle input devices in Wayland compositors and to provide a generic X.Org input driver. It provides device detection, device handling, input device event processing and abstraction so minimize the amount of custom input code compositors need to provide the common set of functionality that users expect.<br />
<br />
The X.Org input driver supports most regular [[Xorg#Input devices]]. Particularly notable is the project's goal to provide advanced support for touch (multitouch and gesture) features of touchpads and touchscreens. See the [http://wayland.freedesktop.org/libinput/doc/latest/pages.html libinput documentation] for more information.<br />
<br />
== Installation ==<br />
<br />
If you wish to use libinput under [[Wayland]], there is nothing to do for installation. The {{pkg|libinput}} package should already be installed as a dependency of any graphical environment you use that has Wayland, and no additional driver is needed.<br />
<br />
If you wish to use libinput with [[Xorg]], [[install]] the {{Pkg|xf86-input-libinput}} package, which is "a thin wrapper around libinput and allows for libinput to be used for input devices in X. This driver can be used as as drop-in replacement for evdev and synaptics." [https://freedesktop.org/wiki/Software/libinput/] In other words, other packages used for input with X (i.e., those prefixed with {{ic|xf86-input-}}) can be replaced with this driver.<br />
<br />
You may also want to install {{Pkg|xorg-xinput}} to be able to change settings at runtime. <br />
<br />
== Configuration ==<br />
<br />
For [[Wayland]], there is no libinput configuration file. The configurable options depend on the progress of your desktop environment's support for them; see [[#Graphical tools]].<br />
<br />
For [[Xorg]], a default configuration file for the wrapper is installed to {{ic|/usr/share/X11/xorg.conf.d/40-libinput.conf}}. No extra configuration is necessary for it to autodetect keyboards, touchpads, trackpointers and supported touchscreens.<br />
<br />
First, execute:<br />
# libinput list-devices<br />
It will output the devices on the system and their respective features supported by libinput.<br />
<br />
After a [[restart]] of the graphical environment, the devices should be managed by libinput with default configuration, if no other drivers are configured to take precedence.<br />
<br />
See {{man|4|libinput}} for general options to set. The ''xinput'' tool is used to view or change options available for a particular device at runtime. For example:<br />
$ xinput list<br />
to view all devices and determine their names and numbers. In the following, {{ic|''device''}} is either the name or number identifying the device to operate with.<br />
$ xinput list-props ''device''<br />
to view and <br />
$ xinput set-prop ''device'' ''option-number'' ''setting''<br />
to change a setting. For example, to set both options of libinput Click Method Enabled (303), the following is issued:<br />
# xinput set-prop 14 303 {1 1}<br />
<br />
See [[Xorg#Using .conf files]] for permanent option settings. [[Logitech Marble Mouse#Using libinput]] and [[#Button re-mapping]] illustrate examples.<br />
<br />
Alternative drivers for [[Xorg#Input devices]] can generally be installed in parallel. If you intend to switch driver for a device to use libinput, ensure no legacy configuration files {{ic|/etc/X11/xorg.conf.d/}} for other drivers take precedence.<br />
<br />
{{Tip|If you have libinput and synaptics installed in parallel with default configuration (i.e. no files in {{ic|/etc/X11/xorg.conf.d}} for either), synaptics will take precedence due to its higher numeric order {{ic|70-}} in the default installation directory. To avoid this, you can symlink the default libinput configuration ({{ic|40-libinput.conf}}) to {{ic|/etc/X11/xorg.conf.d/}} where directory search order precedence over {{ic|70-synaptics.conf}} will take place instead:<br />
<br />
# ln -s /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/40-libinput.conf<br />
<br />
If you ''do'' have {{ic|/etc/X11/xorg.conf.d/}} configuration files for both, the libinput file must be ordered second; see [[Xorg#Using .conf files]]. If you want to disable libinput (and fallback to older drivers) - just remove the previously created symbolic link from {{ic|/etc/X11/xorg.conf.d/}}.}}<br />
<br />
One way to check which devices are managed by libinput is the [[Xorg#General|xorg logfile]]. For example, the following:<br />
<br />
{{hc|$ grep -e "Using input driver 'libinput'" ''/path/to/Xorg.0.log''|<br />
[ 28.799] (II) Using input driver 'libinput' for 'Power Button'<br />
[ 28.847] (II) Using input driver 'libinput' for 'Video Bus'<br />
[ 28.853] (II) Using input driver 'libinput' for 'Power Button'<br />
[ 28.860] (II) Using input driver 'libinput' for 'Sleep Button'<br />
[ 28.872] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'<br />
[ 28.878] (II) Using input driver 'libinput' for 'SynPS/2 Synaptics TouchPad'<br />
[ 28.886] (II) Using input driver 'libinput' for 'TPPS/2 IBM TrackPoint'<br />
[ 28.895] (II) Using input driver 'libinput' for 'ThinkPad Extra Buttons'}}<br />
<br />
is a notebook without any configuration files in {{ic|/etc/X11/xorg.conf.d/}}, i.e. devices are autodetected.<br />
<br />
Of course you can elect to use an alternative driver for one device and libinput for others. A number of factors may influence which driver to use. For example, in comparison to [[Touchpad Synaptics]] the libinput driver has fewer options to customize touchpad behaviour to one's own taste, but far more programmatic logic to process multitouch events (e.g. palm detection as well). Hence, it makes sense to try the alternative, if you are experiencing problems on your hardware with one driver or the other.<br />
<br />
=== Common options ===<br />
<br />
Custom configuration files should be placed in {{ic|/etc/X11/xorg.conf.d/}} and following a widely used naming schema {{ic|30-touchpad.conf}} is often chosen as filename.<br />
<br />
{{Tip|Have a look at {{ic|/usr/share/X11/xorg.conf.d/40-libinput.conf}} for guidance and refer to the {{man|4|libinput}} manual page for a detailed description of available configuration options.}}<br />
<br />
A basic configuration should have the following structure:<br />
{{hc|/etc/X11/xorg.conf.d/30-touchpad.conf|<br />
Section "InputClass"<br />
Identifier "devname"<br />
Driver "libinput"<br />
...<br />
EndSection<br />
}}<br />
You may define as many sections as you like in a single configuration file.<br />
To configure the device of your choice specify a filter by using {{ic|MatchIsPointer "on"}}, {{ic|MatchIsKeyboard "on"}}, {{ic|MatchIsTouchpad "on"}} or {{ic|MatchIsTouchscreen "on"}} and add your desired option. See {{man|4|libinput}} for more details. Common options include:<br />
* {{ic|"Tapping" "on"}}: tapping a.k.a. tap-to-click<br />
* {{ic|"ClickMethod" "clickfinger"}}: trackpad no longer has middle and right button areas and instead two-finger click is a context click and three-finger click is a middle click, see the [https://wayland.freedesktop.org/libinput/doc/latest/clickpad_softbuttons.html#clickfinger docs].<br />
* {{ic|"NaturalScrolling" "true"}}: natural (reverse) scrolling<br />
* {{ic|"ScrollMethod" "edge"}}: edge (vertical) scrolling<br />
Bear in mind that some of them may only apply to certain devices.<br />
<br />
=== Graphical tools ===<br />
<br />
There are different GUI tools:<br />
<br />
* [[GNOME]]: <br />
** Control center has a basic UI. See [[GNOME#Mouse and touchpad]].<br />
* [[Cinnamon]]: <br />
** Similar to the GNOME UI, with more options.<br />
* [[KDE Plasma]] 5: <br />
** Set of keyboard, mouse, controller, and touch pad options. Some features are still placeholders.<br />
** [https://github.com/amezin/pointing-devices-kcm pointing-devices-kcm] ({{AUR|kcm-pointing-devices-git}}) is a rewritten KCM for all input devices supported by libinput.<br />
<br />
== Tips and tricks ==<br />
<br />
=== Button re-mapping ===<br />
<br />
Swapping two- and three-finger tap for a touchpad is a straight forward example. Instead of the default three-finger tap for pasting you can configure two-finger tap pasting by setting the {{ic|TappingButtonMap}} option in your [[Xorg]] configuration file. To set 1/2/3-finger taps to left/right/middle set {{ic|TappingButtonMap}} to {{ic|lrm}}, for left/middle/right set it to {{ic|lmr}}.<br />
<br />
{{hc|/etc/X11/xorg.conf.d/30-touchpad.conf|<br />
Section "InputClass"<br />
Identifier "touchpad"<br />
Driver "libinput"<br />
MatchIsTouchpad "on"<br />
Option "Tapping" "on"<br />
Option "TappingButtonMap" "lmr"<br />
EndSection}}<br />
<br />
Remember to remove {{ic|MatchIsTouchpad "on"}} if your device is not a touchpad and adjust the {{ic|Identifier}} accordingly.<br />
<br />
=== Manual button re-mapping ===<br />
<br />
For some devices it is desirable to change the button mapping. A common example is the use of a thumb button instead of the middle button (used in X11 for pasting) on mice where the middle button is part of the mouse wheel. You can query the current button mapping via:<br />
$ xinput get-button-map ''device''<br />
where ''device'' is either the device name or the device ID, as returned by {{ic|xinput list}}. You can freely permutate the button numbers and write them back. Example:<br />
$ xinput set-button-map ''device'' 1 6 3 4 5 0 7<br />
In this example, we mapped button 6 to be the middle button and disabled the original middle button by assigning it to button 0. <br />
This may also be used for [[Wayland]], but be aware both the ''device'' number and its button-map will be different. Hence, settings are not directly interchangeable. <br />
<br />
{{Tip|You can use ''xev'' (from the {{Pkg|xorg-xev}} package) to find out which physical button is currently mapped to which ID.}}<br />
<br />
Some devices occur several times under the same device name, with a different amount of buttons exposed. The following is an example for reliably changing the button mapping for a Logitech Revolution MX mouse via [[xinitrc]]:<br />
<br />
{{hc|~/.xinitrc|<nowiki><br />
...<br />
for i in $(xinput list | grep "Logitech USB Receiver" | perl -n -e'/id=(\d+)/ && print "$1\n"')<br />
do if xinput get-button-map "$i" 2>/dev/null| grep -q 20; then<br />
xinput set-button-map "$i" 1 17 3 4 5 8 7 6 9 10 11 12 13 14 15 16 2 18 19 20<br />
fi<br />
done<br />
...</nowiki>}}<br />
<br />
=== Change touchpad sensitivity ===<br />
<br />
To change the pressure at which the touchpad is registered, follow [https://wayland.freedesktop.org/libinput/doc/latest/touchpad_pressure.html#touchpad_pressure_hwdb this article] in the upstream documentation.<br />
<br />
=== Disable touchpad ===<br />
<br />
To disable the touchpad, first get its ID with {{ic|xinput list}} and then disable it with {{ic|xinput disable ''ID''}}.<br />
<br />
To make it permanent, see [[Autostarting]].<br />
<br />
=== Gestures ===<br />
<br />
While the libinput driver already contains logic to process advanced multitouch events like swipe and pinch [https://wayland.freedesktop.org/libinput/doc/latest/gestures.html gestures], the [[Desktop environment]] or [[Window manager]] might not have implemented actions for all of them yet.<br />
<br />
==== libinput-gestures ====<br />
<br />
For [[w:Extended_Window_Manager_Hints|EWMH]] (see also [https://www.freedesktop.org/wiki/Specifications/wm-spec/ wm-spec]) compliant window managers, the [https://github.com/bulletmark/libinput-gestures libinput-gestures] utility can be used meanwhile. The program reads libinput gestures (through {{ic|libinput debug-events}}) from the touchpad and maps them to gestures according to a configuration file. Hence, it offers some flexibility within the boundaries of libinput's built-in recognition.<br />
<br />
To use [https://github.com/bulletmark/libinput-gestures libinput-gestures], install the {{Aur|libinput-gestures}} package. You can use the default system-wide configured swipe and pinch gestures or define your own in a personal configuration file, see the [https://github.com/bulletmark/libinput-gestures/blob/master/README.md README] for details.<br />
<br />
==== GnomeExtendedGestures ====<br />
<br />
For deeper integration with GNOME, there is [https://github.com/mpiannucci/GnomeExtendedGestures GnomeExtendedGestures] ({{Aur|gnome-shell-extension-extended-gestures-git}}). Three finger horizontal and vertical gestures can be configured to perform gnome-shell actions (such as toggling the application overview or cycling between them).<br />
<br />
== Troubleshooting ==<br />
First, see whether executing {{ic|libinput debug-events}} can support you in debugging the problem, see {{man|1|libinput-debug-events}} for options.<br />
<br />
Some inputs require kernel support. The tool ''evemu-describe'' from the {{Pkg|evemu}} package can be used to check: <br />
<br />
Compare the output of [http://ix.io/m6b software supported input trackpad driver] with [https://github.com/whot/evemu-devices/blob/master/touchpads/SynPS2%20Synaptics%20TouchPad-with-scrollbuttons.events a supported trackpad]. i.e. a couple of ABS_ axes, a couple of ABS_MT axes and no REL_X/Y axis. For a clickpad the {{ic|INPUT_PROP_BUTTONPAD}} property should also be set, if it is supported.<br />
<br />
=== Touchpad not working in GNOME ===<br />
<br />
Ensure the touchpad events are being sent to the GNOME desktop by running the following command:<br />
$ gsettings set org.gnome.desktop.peripherals.touchpad send-events enabled<br />
<br />
Additionally, GNOME may override certain behaviors, like turning off Tapping and forcing Natural Scrolling. In this case the settings must be adapted using GNOMEs {{ic|gsettings}} command line tool or a graphical frontend of your choice. For example if you wish to enable ''Tapping'' and disable ''Natural Scrolling'' for your user, adjust the touchpad key-values like the following:<br />
$ gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true<br />
$ gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll false<br />
<br />
=== Touchpad settings not taking effect in KDE's Touchpad KCM ===<br />
<br />
KDE's Touchpad KCM has libinput support for [[Xorg]], but not all GUI settings are available yet. You may find that a setting such as ''Disable touchpad when typing'' has no effect and other options are greyed out. Until the support is extended, a workaround is to set the options manually with {{ic|xinput set-prop}}.<br />
<br />
=== Touchpad not detected at all ===<br />
<br />
{{Move|Laptop#Touchpad|Not a libinput issue. An explanation of the parameters is linked in [[Touchpad_Synaptics#No_Multi-touch_in_some_Elantech_touchpads]], which is much better than saying "try some of these".}}<br />
<br />
If a touchpad device is not detected and shown as a device at all, a possible solution might be using one or more of these kernel parameters.<br />
<br />
i8042.noloop i8042.nomux i8042.nopnp i8042.reset<br />
<br />
== See also == <br />
<br />
* [https://wayland.freedesktop.org/libinput/doc/latest/index.html libinput Wayland documentation]<br />
* [https://archive.fosdem.org/2015/schedule/event/libinput/attachments/slides/591/export/events/attachments/libinput/slides/591/libinput_xorg.pdf FOSDEM 2015 - libinput] - Hans de Goede on goals and plans of the project<br />
*[http://who-t.blogspot.com.au/ Peter Hutterer's Blog] - numerous posts on libinput from one of the project's hackers</div>Cknight70