it-swarm.com.de

Schalten Sie den "Piepton" des Motherboard / PC-Lautsprechers in der Ubuntu 16.04-Regression aus

Ich sehe, dass das Kernel-Modul pcspkr in Ubuntu 16.04 auf der schwarzen Liste steht und tatsächlich, wenn ich einen lsmod mache, wird er nicht angezeigt. Aber ich bekomme immer noch diesen nervigen lauten Piepton im Terminal oder GUI-Editor, wenn ich drücke  oder  am Anfang der Datei. Gleicher verrückter Piepton beim Drücken  und  wenn am Ende der Datei.

Ich habe versucht, den Befehl beep herunterzuladen und pcskr zu überschreiben, der vermutlich ohnehin ohne Wirkung auf der schwarzen Liste steht.

Ich habe etwas über die Klingelfunktion von pulseaudio X-11 gelesen und versucht, diese Funktion mit einem netten, leisen chime-Sound einzurichten, aber auch dort hatte ich kein Glück.

Ich habe nach diesem Thema gesucht und das einzige, was ich gefunden habe, war ein Benutzer, der wollte, dass die Holzklopfgeräusche auf der Rückseite ausgeschaltet und der klassische Piepton eingeschaltet werden.

Hoffentlich ärgern sich andere über den Piepton aus den 1980er Jahren und können mich in die richtige Richtung lenken. Danke im Voraus.

Bearbeiten 1

Ich habe heute Morgen verschiedene Fehlerberichte durchgelesen, aber wieder scheint es, dass die Leute wollen , dass die Glocke nicht versucht, sie wie ich loszuwerden.

Ein vielversprechend aussehendes Verzeichnis gefunden: ls /usr/share/sounds/ubuntu/stereo/

bell.ogg               desktop-logout.ogg      message-new-instant.ogg     service-login.ogg
button-pressed.ogg     dialog-error.ogg        message.ogg                 service-logout.ogg
button-toggle-off.ogg  dialog-information.ogg  phone-incoming-call.ogg     system-ready.ogg
button-toggle-on.ogg   dialog-question.ogg     phone-outgoing-busy.ogg     window-slide.ogg
desktop-login.ogg      dialog-warning.ogg      phone-outgoing-calling.ogg

Fand ein geschicktes Programm ogg123, das Musikdateien über das Terminal abspielt. Ich denke, es ist standardmäßig in Ubuntu 16.04 installiert.

Wenn Sie eingeben: ogg123 /usr/share/sounds/ubuntu/stereo/message.ogg

Audio Device:   PulseAudio Output

Playing: /usr/share/sounds/ubuntu/stereo/message.ogg
Ogg Vorbis stream: 2 channel, 44100 Hz

... Sie ein angenehmes Knallgeräusch bekommen. Drücken Sie  und ändere message.ogg auf bell.ogg und du bekommst einen tiefen Bass Drum Beat (nicht so angenehm wie message.ogg , aber besser als Piepton ). Zusätzlich spielt ogg123 die Töne auf dem Standard-Audiogerät (in meinem Fall HDMI-Fernseher) anstelle des PC-Lautsprechers ab. Ich denke, es wäre besser, wenn der Ton über das Gerät abgespielt würde, das das aktive Fenster enthält, das den Alarm erzeugt hat.

Wählen Sie im Launcher Folgendes aus: System Settings, Sound, Sound Effects sieht folgendermaßen aus:

Sound Effects

Jetzt besteht die Herausforderung darin, die bereits verfügbaren Systemtöne in das Alarmfenster für Soundeffekte zu übernehmen. Danach könnte es laut Fehlerberichten eine neue Herausforderung geben, sie auszuwählen und sie dazu zu bringen, sich angemessen zu verhalten.

Bearbeiten 2 - Erkunden von Sounds mit der GUI-Methode

Mit Nautilus ist es einfacher, Audioverzeichnisse zu durchsuchen. Klicken Sie einfach auf eine Audiodatei und Rhythm Box (Standardeinstellung) spielt sie ab. Bei der Suche über die Benutzeroberfläche enthält das Unterverzeichnis notifications mehr geeignete Warnungen als das Unterverzeichnis stereo. Beispielbildschirm unten:

GUI Sounds

3

Nach langem Suchen fand ich im Terminal Folgendes:

pactl upload-sample /usr/share/sounds/ubuntu/stereo/message.ogg bell.ogg

Es ertönt ein leises Sprudeln anstelle eines nervigen Pieptons. Alle anderen .ogg Dateien können aus /usr/share/sounds/ubuntu/stereo und /usr/share/sounds/ubuntu/notifications verwendet werden.

Der nächste Schritt besteht darin, es dauerhaft zu machen, aber zumindest nach stundenlangen Suchfortschritten!


Bearbeiten 1 - Dauerhaft machen

Internetrecherchen empfehlen das Setzen von:

pactl upload-sample /usr/share/sounds/ubuntu/stereo/message.ogg bell.ogg

in die Datei ~/.profile aber das hat nicht funktioniert. Vielleicht lief pulseaudio zu diesem Zeitpunkt nicht?

Also habe ich es auf diesem Bildschirm in Startup Applications eingefügt:

enter image description here

Jetzt ist das nervige Piepen weg und ein leises Sprudeln wirkt wie ein Zauber im terminal und gedit.


Bearbeiten 2 - Erstellen Sie Bash-Playall-, Standard- und Menü-Skripte

Anstatt die Verzeichnisse zu wechseln, um die bell de jour auszuwählen, habe ich ein neues Verzeichnis erstellt und Sound-Kandidaten aus kopiert /usr/share/sounds/.../... dort:

$ ls /usr/local/bin/bell/sounds
Amsterdam.ogg  Blip.ogg     Mallet.ogg   Positive.ogg  Slick.ogg
bell.ogg       default.ogg  message.ogg  Rhodes.ogg

Als nächstes habe ich ein Skript erstellt, um alle Sounds in einem Verzeichnis abzutasten. Wenn eine bestimmte Audiodatei zu lange abgespielt wird, können Sie mit zum Ende springen Ctrl+C.

$cat /usr/local/bin/playall-bells
#! /bin/bash

# NAME: playall-bells
# PATH: /usr/local/bin
# DESC: Play all songs in directory /usr/local/bin/bell/sounds.
#       Parameter 1 can override to different directory.
# CALL: Typically call with "playall-bells" (no parameters).
# DATE: Created Sep 30 2016.

DIRNAME="$1"

# if no parameters set DIRNAME to bell/sounds
if [ $# == 0 ]; then
    DIRNAME=/usr/local/bin/bell/sounds
fi

# Cookie cutter debug section. Remove # from echo's
#echo "********************************************************"
#echo "*                                                      *"
#echo "*  THE DIRECTORY IS: $DIRNAME"
#echo "*                                                      *"
#echo "********************************************************"

for file in $DIRNAME
do
    printf $DIRNAME
    ogg123 $DIRNAME # If a sound plays too long <Ctrl>+C for next
done

Eine spezielle Audiodatei mit dem Namen default.ogg wird verwendet, um den Klingelton während des Startvorgangs einzustellen. Um den Standard festzulegen, wurde ein neues Skript erstellt.

$cat /usr/local/bin/load-default-bell
#! /bin/bash

# NAME: load-default-bell
# PATH: /usr/local/bin
#      `.ogg` sound files are stored in `/usr/local/bin/bell/sounds`
# DESC: Load bell sound to pulseaudio.
# CALL: Call with "load-default-bell" (no parameters)
#       Does not work in "~/.profile" as some users suggest
#       Works in "Startup Applications" locatable by "Dash"
# DATE: Created Sep 30 2016.
# UPDT: Oct 1 2016 - Play new bell sound after load to pulseaudio.
#       Oct 2 2016 - bell-select-menu has been created to manage default.

# NOTE: Use Nautilus or Terminal Menu to copy desired <sound>.ogg to
#       default.ogg. This sound in turn is uploaded to Pulse-audio.
#       New script `bell-select-menu` will update default sound file.
#       Name of the game is to replace annoying motherboard speaker
#       beep which is a regression in Ubuntu 16.04.

pactl upload-sample /usr/local/bin/bell/sounds/default.ogg bell.ogg
printf '\a' # play new bell sound

In Übereinstimmung mit dem neuen Skript über dem oben beschriebenen Startup Applications wurde Folgendes geändert:

Startup Applications Bell

Der letzte Schritt bestand darin, ein Bash-Menü zu erstellen, in dem alle Sounds abgespielt, ein einzelner Sound angehört und der zuletzt gehörte Sound auf die Standardeinstellung aktualisiert wurden. Das Menü-Design wurde aus dieser Fragestellung abgeleitet: Erstellen Sie ein bash-Menü basierend auf der Dateiliste (ordnen Sie Dateien Zahlen z . Wenn du mein Menü magst, solltest du zu dieser Frage gehen und die Antwort des Autors hochstimmen.

$cat /usr/local/bin/bell-select-menu
#! /bin/bash

# NAME: bell-select-menu
# PATH: /usr/local/bin
# DESC: Present menu of bell sounds to listen to all, listen to one and update default.
# CALL: bell-select-menu
# DATE: Created Oct 1, 2016.

echo "The following /usr/local/bin/bell/sounds were found"

# set the Prompt used by select, replacing "#?"
PS3="'a' to hear to all files, use number to hear a single file, 
'u' to update last single file heard as new default, or 'q' to quit: "

lastfile="none"

# allow the user to choose a file
select filename in /usr/local/bin/bell/sounds/*.ogg

do

    # leave the loop if the user types 'q'
    if [[ "$REPLY" == q ]]; then break; fi

    # play all if the user types 'a'
    if [[ "$REPLY" == a ]] 
    then 
        playall-bells
        continue
    fi

    # update last file name as new default if the user types 'u'
    if [[ "$REPLY" == u ]]
    then
        if [[ "$lastfile" == none ]]
        then
            echo "No file was selected."
            break
        fi
        echo "$lastfile selected"
        cp $lastfile /usr/local/bin/bell/sounds/default.ogg
        load-default-bell
        break
    fi

    # complain if no file was selected, and loop to ask again
    if [[ "$filename" == "" ]]
    then
        echo "'$REPLY' is not a valid number"
        continue
    else
        lastfile="$filename"
    fi

    # listen to the selected file
    ogg123 "$filename"

    # loop back to ask for another
    continue
done

Der Nachteil dieses Designs besteht darin, dass bei Auswahl von play all das Menü vom Bildschirm gescrollt wird und Sie das Fenster zurückscrollen müssen, um die Optionen erneut anzuzeigen.

Puh das war's.

1