[BACK]Return to mixer.pl CVS log [TXT][DIR] Up to [local] / mp3 / bin

Diff for /mp3/bin/mixer.pl between version 1.2 and 1.3

version 1.2, 2006/08/12 01:14:53 version 1.3, 2007/02/08 20:04:03
Line 1 
Line 1 
 #!/usr/bin/perl -Tw  #!/usr/bin/perl -Tw
 # $RedRiver$  # $RedRiver: mixer.pl,v 1.2 2006/08/12 00:14:53 andrew Exp $
 ########################################################################  ########################################################################
 # Mixer.pl *** Changes volume on the MP3 player  # Mixer.pl *** Changes volume on the MP3 player
 #  #
Line 61 
Line 61 
 print "Content-Type: text/html\n\n";  print "Content-Type: text/html\n\n";
 print "<html>\n<head>\n\t<meta HTTP-EQUIV='Pragma' CONTENT='no-cache'> ";  print "<html>\n<head>\n\t<meta HTTP-EQUIV='Pragma' CONTENT='no-cache'> ";
   
 my $New_Vol = "$Cur_Vol_Left&$Cur_Vol_Right";  my ($prefix, $New_Vol_Left, $New_Vol_Right) = split /\&/, $ENV{'QUERY_STRING'};
 if ($ENV{'QUERY_STRING'}) {  if ($New_Vol_Left || $New_Vol_Right) {
         print "<meta HTTP-EQUIV=Refresh CONTENT=\"1; URL=mixer.pl\">";          $New_Vol_Left  =~ s/%(..)/pack("c",hex($1))/ge;
         $New_Vol = $ENV{'QUERY_STRING'};          $New_Vol_Right =~ s/%(..)/pack("c",hex($1))/ge;
           print "<meta HTTP-EQUIV=Refresh CONTENT=\"1; URL=mixer.pl?" . EncodeURL($prefix) . "\">";
 }  }
   
   $New_Vol_Left  ||= $Cur_Vol_Left;
   $New_Vol_Right ||= $Cur_Vol_Right;
   
   if ($New_Vol_Left =~ /(\d+)/)  { $New_Vol_Left  = $1; }
   if ($New_Vol_Right =~ /(\d+)/) { $New_Vol_Right = $1; }
   
   if ($prefix) {
           $prefix =~ s/%(..)/pack("c",hex($1))/ge;
   } else {
           $prefix ='';
   }
   
 print <<EOL;  print <<EOL;
   
 <style type="text/css" media="screen">  <style type="text/css" media="screen">
Line 88 
Line 101 
   
 Print_Nav();  Print_Nav();
   
   unless ($prefix) {
 print "Volume - ";  print "Volume - ";
   
   #print "New_Vol $New_Vol_Left:$New_Vol_Right<BR>\n";
   
 #»print "New_Vol $New_Vol<BR>\n";  
 $New_Vol =~ /(\d+)&(\d+)/;  
 my $New_Vol_Left = $1;  
 my $New_Vol_Right = $2;  
   
 my @nav;  my @nav;
 foreach my $vol (@Vols) {  foreach my $vol (@Vols) {
         if ($$vol[0] == $New_Vol_Left) {          if ($$vol[0] == $New_Vol_Left) {
                 push @nav, "<B><A HREF='$me?$$vol[0]&$$vol[1]' class=up>$$vol[0]</A></B>\n";                  push @nav, "<B><A HREF='$me?" . EncodeURL($prefix) . '&' . "$$vol[0]&$$vol[1]' class=up>$$vol[0]</A></B>\n";
         } elsif ($$vol[0] < $New_Vol_Left) {          } elsif ($$vol[0] < $New_Vol_Left) {
                 push @nav, "<A HREF='$me?$$vol[0]&$$vol[1]' class=up>}</A>\n";                  push @nav, "<A HREF='$me?" . EncodeURL($prefix) . '&' . "$$vol[0]&$$vol[1]' class=up>}</A>\n";
         } elsif ($$vol[0] > $New_Vol_Left) {          } elsif ($$vol[0] > $New_Vol_Left) {
                 push @nav, "<A HREF='$me?$$vol[0]&$$vol[1]' class=down>]</A>\n";                  push @nav, "<A HREF='$me?" . EncodeURL($prefix) . '&' . "$$vol[0]&$$vol[1]' class=down>]</A>\n";
         }          }
         #print "$vol - $$vol[0] - $$vol[1]<br>\n";          #print "$vol - $$vol[0] - $$vol[1]<br>\n";
 }  }
Line 111 
Line 121 
 #print "<br>\n";  #print "<br>\n";
   
 Set_Vol($Cur_Vol_Left, $Cur_Vol_Right, $New_Vol_Left, $New_Vol_Right);  Set_Vol($Cur_Vol_Left, $Cur_Vol_Right, $New_Vol_Left, $New_Vol_Right);
   }
   
 print "</body>\n</head>\n</html>\n";  print "</body>\n</head>\n</html>\n";
   
Line 133 
Line 144 
                 $new_vol = $new_vol_left > $new_vol_right ? $new_vol_left : $new_vol_right;                  $new_vol = $new_vol_left > $new_vol_right ? $new_vol_left : $new_vol_right;
         }          }
   
         #»print "Old: $old_vol - New: $new_vol<br>\n";          #print "Old: $old_vol - New: $new_vol<br>\n";
   
         my $Set_Vol;          my $Set_Vol;
   
         foreach my $vol ($old_vol < $new_vol ? $old_vol..$new_vol : reverse $new_vol..$old_vol) {          foreach my $vol ($old_vol < $new_vol ? $old_vol..$new_vol : reverse $new_vol..$old_vol) {
                 #»print "$vol<br>\n";                  #print "$vol<br>\n";
                 $Set_Vol = `$mixerctl -w outputs.master=$vol,$vol`;                  $Set_Vol = `$mixerctl -w outputs.master=$vol,$vol`;
                 #»print $Set_Vol . "<br>\n";                  #print $Set_Vol . "<br>\n";
         }          }
         return $Set_Vol;          return $Set_Vol;
 }  }
Line 178 
Line 189 
 {  {
         open FILE, 'nav.inc' or die "\n\ncouldn't open FILE nav.inc: $!";          open FILE, 'nav.inc' or die "\n\ncouldn't open FILE nav.inc: $!";
         while (<FILE>) {          while (<FILE>) {
                   s/%PREFIX%/$prefix/g;
                 print;                  print;
         }          }
         close FILE;          close FILE;

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>