Sony Vaio NVIDIA 显卡亮度问题

Sony Vaio NVIDIA 显卡亮度问题

最近我在我的笔记本电脑(Sony Vaio VPCF22MOE)上安装了 Ubuntu 11.10。我的显卡是 NVIDIA GeForce GT 540M。

在安装 ubuntu 后,我安装了 NVIDIA 驱动程序版本 295.33。我使用以下命令卸载了 Nouveau:

sudo apt-get --purge remove xserver-xorg-video-nouveau

我注意到几件事:我的亮度Fn键不起作用(Fn+ F5/ Fn+ f6)。 compiz 3D 也不起作用。亮度设置为最大。

我几乎什么都试过了。我关注了其他帖子,用了无数种不同的方法编辑xorg.conf。终端中的 Xbacklight 命令也不起作用。有人知道如何配置它才能让它工作吗?


答案1

我个人使用的是 Vaio VPCCW21FX (Nvidia Graphic) 和 Ubuntu Studio 11.10。我尝试了很多解决方案,但都无法解决我的 LCD 亮度问题!最后写了这两个 perl 文件来手动设置 Nvidia 驱动程序配置文件中的亮度/对比度和伽马函数。

这仅在您能够在Nvidia X 服务器设置

步骤1:创建此文件并将其命名为“Brightness-Up.pl”(您可以使用任何文本编辑工具,例如:gedit、nano、vi 等。复制粘贴)

    ### Code by [email protected] ###
    my $find1 = "0/RedBrightness=";my $find2 = "0/RedGamma=";
open FILE, "<Nvidia-Settings.cfg";
my @lines = <FILE>;
for (@lines) {
    if ($_ =~ /$find1/) { chomp $_;$value= substr($_,16,5); }
    if ($_ =~ /$find2/) { chomp $_;$value2= substr($_,11,5);}     
}
my @Lines;
if ( $value > 0.0) { $value = $value - 0.30 };  
if ( $value2 > 1.1) { $value2 = $value2 - 0.08 };  
$last_value = $value + 0.30;
$Lines[0] ="0/RedBrightness=".$last_value;
$Lines[1] ="0/GreenBrightness=".$last_value;;
$Lines[2] ="0/BlueBrightness=".$last_value;;
$last_value = $value + 0.30;
$Lines[3] ="0/RedContrast=".$last_value;;
$Lines[4] ="0/GreenContrast=".$last_value;;
$Lines[5] ="0/BlueContrast=".$last_value;;
$last_value = $value2 + 0.08;
$Lines[6] ="0/RedGamma=".$last_value;;
$Lines[7] ="0/GreenGamma=".$last_value;;
$Lines[8] ="0/BlueGamma=".$last_value;;

$filename = "Nvidia-Settings.cfg";
open fh2,'>',$filename or die ("can't open '$filename': $! \n");
foreach ( @Lines )
{ chomp;print "$_\n";print fh2 "$_\n"; };
close fh2; 
`nvidia-settings -l --config=Nvidia-Settings.cfg`;

第2步:然后创建另一个文件,将其命名为“Brightness-Down.pl”并填充以下代码:

    ### Code by [email protected] ###
    my $find1 = "0/RedBrightness=";my $find2 = "0/RedGamma=";
open FILE, "<Nvidia-Settings.cfg";
my @lines = <FILE>;
for (@lines) {
    if ($_ =~ /$find1/) {chomp $_;$value= substr($_,16,5);}
    if ($_ =~ /$find2/) {chomp $_;$value2= substr($_,11,5);}     
}
my @Lines;
if ( $value < -0.80) { $value = $value + 0.30 };  
if ( $value2 < 0.8) { $value2 = $value2 + 0.08 };  
$last_value = $value - 0.30;
$Lines[0] ="0/RedBrightness=".$last_value;
$Lines[1] ="0/GreenBrightness=".$last_value;;
$Lines[2] ="0/BlueBrightness=".$last_value;;
$last_value = $value - 0.30;
$Lines[3] ="0/RedContrast=".$last_value;;
$Lines[4] ="0/GreenContrast=".$last_value;;
$Lines[5] ="0/BlueContrast=".$last_value;;
$last_value = $value2 - 0.08;
$Lines[6] ="0/RedGamma=".$last_value;;
$Lines[7] ="0/GreenGamma=".$last_value;;
$Lines[8] ="0/BlueGamma=".$last_value;;

$filename = "Nvidia-Settings.cfg";
open fh2,'>',$filename or die ("can't open '$filename': $! \n");
foreach ( @Lines )
{ chomp;print "$_\n";print fh2 "$_\n"; };
close fh2; 
`nvidia-settings -l --config=Nvidia-Settings.cfg`;

步骤3:您需要创建另一个包含 Nvidia 设置的文件。将其命名为“Nvidia-Settings.cfg”,务必将其命名为完全相同的名称。填写:

0/RedBrightness=0.1
0/GreenBrightness=0.1
0/BlueBrightness=0.1
0/RedContrast=0.1
0/GreenContrast=0.1
0/BlueContrast=0.1
0/RedGamma=1.14
0/GreenGamma=1.14
0/BlueGamma=1.14

就是这样!现在将这些文件放在唯一的文件夹中。你必须绑定你的功能键这两个 perl 文件。您可以使用Compiz>命令执行以下命令安装 compizconfig-settings-manager

sudo apt-get install compizconfig-settings-manager

或者你甚至可以在 shell(终端)中分别运行这两个命令:

user$ perl Brightness/Brightness-Up.pl
user$ perl Brightness/Brightness-Down.pl

其中 Brightness 是一个文件夹,我把那些文件放在里面。

答案2

尝试一下这个:https://askubuntu.com/a/120796/54126 我的 nvidia 335m gt 也遇到了同样的问题。这个技巧让我的背光灯能够通过 FN 键进行更改。

另外,如果它有影响,我有 linux 3.2.0-20 内核,并且这个东西被证明也可以在 3.2.0-22 内核上运行。试一试。

相关内容