sæt volume værdien i script

Dette forum bruges på EGET ANSVAR til at lege med scripts og andre ting med risiko for at beskadige sit eget og andres systemer.
gtr

sæt volume værdien i script

Indlæg af gtr »

https://askubuntu.com/questions/219739/ ... ect=1&lq=1

Kode: Vælg alt

$> file=/usr/bin/vol;sudo touch $file && \
sudo chmod u+x $file && sudo chown $USER:$USER $file && \
gedit $file


Kode: Vælg alt

#!/bin/bash
SetPacmdSinkVol()
{
    #default index of 0 - can be changed
    local mySinkIndex=0
    #if you want to ignore pacmd output
    local ignoreOutput=true
    local num=$1
    local vol=$((num * 655));
    vol=$((num * 36 / 100 + vol));
    echo -e "\033[0;32mVol - ${num}:${vol}\033[0;m"
    if $ignoreOutput; then
        pacmd set-sink-volume $mySinkIndex $vol > /dev/null
    else
        pacmd set-sink-volume $mySinkIndex $vol
    fi
}
SetPacmdSinkVol $@


Hvis vol skal være 160%, hvor skal man skrive vol 160? Tak.
Ivan
Indlæg: 1133
Tilmeldt: 6. nov 2009, 17:05
Geografisk sted: Rudkøbing

Re: sæt volume værdien i script

Indlæg af Ivan »

Det skal du skrive efter filnavnet når du kører scriptet
Arch på Toshiba Satellite C660-1NT og Acer Aspire One 532h
Manjaro på hjemmerullet pc.
gtr

Re: sæt volume værdien i script

Indlæg af gtr »

Tak for svar.
Når jeg starter command

Kode: Vælg alt

$> file=/usr/bin/vol;sudo touch $file && \
sudo chmod u+x $file && sudo chown $USER:$USER $file && \
gedit $file

i debian 8 64bit med desktop gui mate fremkommer en fejlmelding.

Kode: Vælg alt

gedit:1713): Gtk-WARNING **: Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.
Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

Er det fordi scriptet kun virker sammen med gnome? Kan scriptet ændres til at virke sammen med gui mate?
Ivan
Indlæg: 1133
Tilmeldt: 6. nov 2009, 17:05
Geografisk sted: Rudkøbing

Re: sæt volume værdien i script

Indlæg af Ivan »

er gir1.2-gtksource-3.0 installeret
Arch på Toshiba Satellite C660-1NT og Acer Aspire One 532h
Manjaro på hjemmerullet pc.
AJenbo
Admin
Indlæg: 20878
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: sæt volume værdien i script

Indlæg af AJenbo »

Det er meget normalt at grafiske programmer viser nogle advarsler når man køre dem fra terminalen, det er ikke en fejl men en besked til udviklerne (se Warning) af gedit.
gtr

Re: sæt volume værdien i script

Indlæg af gtr »

Tak for svar.

Kode: Vælg alt

er gir1.2-gtksource-3.0 installeret

Ja.
Jeg har testet scriptet på ubuntu 16.04 64bit. Gui gnome classical 3.14.
Her fremkommer ingen fejlmeldinger.
Når gedit fremkommer og jeg har paste't script'et, hvor skal jeg skrive vol 160, inden jeg save'r?
Ivan
Indlæg: 1133
Tilmeldt: 6. nov 2009, 17:05
Geografisk sted: Rudkøbing

Re: sæt volume værdien i script

Indlæg af Ivan »

Det skal ikke stå i scriptet, det er en option der skrives når det køres.

fil option
vol 160
Arch på Toshiba Satellite C660-1NT og Acer Aspire One 532h
Manjaro på hjemmerullet pc.
gtr

Re: sæt volume værdien i script

Indlæg af gtr »

Tak for svar.
Det skal ikke stå i scriptet, det er en option der skrives når det køres.
I det tilfælde virker det ikke eller jeg starter det forkert.
command

Kode: Vælg alt

$ /usr/bin/vol
Vol - :0
$

Den skriver Vol - :0. Man kan ikke indtaste noget.

Command

Kode: Vælg alt

$ sudo /usr/bin/vol
Vol - :0
Home directory not accessible: Permisssion denied.
No PulseAudio daemon running, or not running as session daemon.
$

Kan man ændre scriptet til, at man skriver vol 160 i scriptet?

Spørgsmålet om at sliderværdi på 160% i settings -> sound, når man starter computeren, har jeg stillet i flere fora. Intet svar, der siger, hvordan eller hvilken file, der indstiller slideren's volume.

Hvordan tester jeg det sidste script på https://askubuntu.com/questions/219739/ ... ect=1&lq=1?

På debian forum foreslog man, at bruge pasystray. Men der fremkommer ikke et pasytray icon, man kan bruge til at scrolle.

Det blev også foreslået at oprette en /etc/asound.conf file indeholdende script

Kode: Vælg alt

pcm.main {
    type asym
    playback {
        pcm "master_softvol"
    }
    capture {
        pcm "dsnoop"
    }
    hint {
        show on
        description "Main"
    }
}
pcm.master_softvol {
    type softvol
    slave {
        pcm "dmix:RATE=44100,FORMAT=S32_LE"
    }
    control {
        name "MASTER"
        card "DS"
    }
    min_dB -60.0
    max_dB 10.0
    resolution 200
}

Det forekommer, at script'et skal indstilles til det bestemte sound card, som computeren har. Dermed forventer jeg ikke, at det vil virke, hvis man flytter system hdd'en til en anden computer, hvilket man skal kunne.

Jeg har skrevet til alsa hjemmesiden, der ikke har svaret.
Jeg har skrevet til gnome bugzilla. De svarede, at man allerede havde fået en tilsvarende henvendelse. Gnome svarede ikke, om de vil eller hvornår de vil foretage ændringen.
Da computeren ofte ikke kan opnå en volumen, der er høj nok, er det ikke hensigtsmæssigt, at man i ubuntu 16.04 64bit gui gnome ikke kan vælge Allow louder than 100%.
Hvorfor bruger man ikke Allow louder than 100% softwaren fra ubuntu 14.04 64bit? Er den ikke free software? Kan man ikke producere en Allow louder than 100% debian package?
AJenbo
Admin
Indlæg: 20878
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: sæt volume værdien i script

Indlæg af AJenbo »

... Som Ivan skriv skal du skrive:

Kode: Vælg alt

vol 160

Så lad være med i stedet at skrive:

Kode: Vælg alt

/usr/bin/vol


Sikkert

Du virker frustreret

Hvilken af de 7 har du problemer med?

Måske er det ikke beregnet til det DE du køre.

Måske du skulle holde dig til en metode til du finder ud af hvordan den bruges før du helt får fjernet muligheden for at afspille lyd på maskinen...

Så lav en for hver.

Har du fundet en fejl i kernel driveren?
Har du bekræftet at det er et problem i Gnome?
Det kan man i Ubuntu 16.04. Eller køb nogle bedre højtalere.
Det kan du sikkert, men du er da vist ude i nogle antagelser og noget gætteri.
gtr

Re: sæt volume værdien i script

Indlæg af gtr »

At volumen ikke kan skrues højt nok op, må være noget som mange kan genkende. Hvis ubuntu's løsning er free software, er det en løsning alle kan benytte. Derfor er det uhensigtsmæssigt, at Allow volume ... ikke er med i pulseaudio eller alsa's source software eller kan installeres med en debian package. Det undrer mig, at ingen på debian eller arch's forum kan oplyse en metode, jeg kan bruge. Heller ikke hvilken file, der indstiller op til hvilken volume, man kan scrolle. Selvom en del andre posts virker komplicerede.

Command vol 160

Kode: Vælg alt

$ vol 160
$ Vol - 160:104857

Det ændrer ikke volume level i gnome 3.14 classical eller mate. Dvs scripte' virker tilsyneladende ikke på ubuntu 16.04 64bit eller debian 8 64bit.

Man køber ikke andre højtalere til en notebook.
Ofte kan højtalerne opnå en volume level, der er høj nok, hvis man går over 100%.
Brugeravatar
NickyThomassen
Admin
Indlæg: 3652
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: sæt volume værdien i script

Indlæg af NickyThomassen »

Jeg tror lidt du misforstår hvad Open Source Software og/eller Free Software er og står for. Modsat med Closed Source Software, så har du her mulighed for at lave den funktion/Debian pakke som du efterlyser, helt og aldeles på egen hånd.

Alt hvad du skal gøre er at hente Debians, Ubuntus, ALSAs eller Pulseaudios kildekode og patche den. Derefter kan du evt. sende en kopi af din patch til projektet, så de kan overveje at inkludere den i fremtidige udgaver.

At noget er OSS betyder ikke at det har har værdi for dig eller nogen andre, se bare på min OSS antispam dæmon skrevet i Perl:
https://github.com/NickyThomassen/antispamd

Den har vital værdi for mig, men jeg gætter på at den har begrænset/ingen værdi for jer andre. Hvis en udvikler hos Debian, Ubuntu osv osv osv ikke har brug for den funktion du efterlyser, hvorfor skulle de så lave den ulønnet i deres fritid?
AJenbo
Admin
Indlæg: 20878
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: sæt volume værdien i script

Indlæg af AJenbo »

Er du sikker på dit output er sink 0?
gtr

Re: sæt volume værdien i script

Indlæg af gtr »

At noget er OSS betyder ikke at det har har værdi for dig eller nogen andre

Jeg fastholder, at Allow louder ... er en funktion, mange brugere vil have.
Ellers ville ubuntu, som jeg formoder har lavet funktionen, idet jeg ikke har set den andre steder, ikke have fremstillet Allow louder .... Ligesom man med andre linux distributioner godt kan sætte volume level til over 100%, men ikke ved at scrolle på sound icon.
Ved at læse debian bugzilla posts får man det indtryk, at debian er optaget af, at en bruger ikke uforfarvarende kommer til at skrue så højt op for volume level, at lydkvaliteten bliver uacceptabel, uden at brugeren ved hvorfor.
misforstår hvad Open Source Software og/eller Free Software er og står for

Softwaren er fremstillet, den er ikke en del af flere desktop guis. Når jeg skriver free software, er det fordi, debian main er free software. Hvis ubuntu's Allow louder ... software ikke er free software, kan det ikke bruges i debian main.
Er du sikker på dit output er sink 0?

Nej, mener du, at script'et skal tilpasses en given computer? Hvis det er tilfældet, kan man så bruge hdd'en i andre computere?
Hvordan verificerer jeg, hvad sink output er?
Hvor skal script'et i givet fald ændres?
Senest rettet af gtr 28. nov 2016, 22:01, rettet i alt 1 gang.
AJenbo
Admin
Indlæg: 20878
Tilmeldt: 15. nov 2009, 15:04
IRC nickname: AJenbo
Geografisk sted: Vanløse, København

Re: sæt volume værdien i script

Indlæg af AJenbo »

Blot fordi noget er FS betyder det ikke at det uproblematisk kan mides ind i et system. Hvis det er en kritisk funktion for dig, for slår jeg at du enten selv patcher ændringen ind eller skfiter til et system der har den som standard.
Ivan
Indlæg: 1133
Tilmeldt: 6. nov 2009, 17:05
Geografisk sted: Rudkøbing

Re: sæt volume værdien i script

Indlæg af Ivan »

gtr skrev:Hvor skal script'et i givet fald ændres?


Det står i scriptet.
Arch på Toshiba Satellite C660-1NT og Acer Aspire One 532h
Manjaro på hjemmerullet pc.