Woher wissen, welches Programm gerade Ton abgespielt hat?

Manchmal spielte mein Computer plötzlich einen lästigen kurzen Ton ab (klingt wie darrrt , scheint nicht vom System zu stammen), und es ist so kurz, dass ich keine Ahnung habe, woher es kommt (und es nicht erfassen kann).

Gibt es Möglichkeiten herauszufinden, welches Programm/Prozess das getan hat? (Ich möchte es wirklich töten!)

Ich verwende OS X Mavericks.

In den meisten Fällen wird von den Kalenderbenachrichtigungen ein kurzer Summerton verwendet. Beobachten Sie, ob oben rechts auf dem Bildschirm oder in der Benachrichtigungszentrale eine Erinnerung angezeigt wird.
dtracekönnte in der Lage sein, die Informationen zu prüfen. Ein kurzer Blick auf die eingebauten Skripte scheint nichts zu bieten, um bestimmte Geräte zu untersuchen, erfordert jedoch wahrscheinlich ein benutzerdefiniertes Skript
Vielen Dank für Ihre Antwort, aber können Sie sie bitte unten als Antwort hinzufügen (und akzeptieren), anstatt die Frage zu ändern?
@Patrix Danke für deinen Kommentar. Ich habe deinen Rat einfach befolgt.
Es ist verrückt, dass MacOS diese Funktion fehlt. Windows hatte es so lange.

Antworten (8)

Hier ist, was ich getan habe, um eine lästige Anwendung zu finden, die eine Systemdatei abspielt. Gehen Sie zu Systemeinstellungen -> Sound -> Soundeffekte. Schalten Sie durch die Effekte und notieren Sie sich den Sound, den Ihre mysteriöse Anwendung abspielt. Wenn Sie es finden, gehen Sie zum Terminal und geben Sie Folgendes ein:

sudo fs_usage | grep "aiff"

Geben Sie das Systemkennwort ein, wenn Sie dazu aufgefordert werden.

Warten Sie, bis der Ton erneut abgespielt wird, und sehen Sie sich dann die Terminalausgabe an. Suchen Sie nach dem Namen der Sounddatei, die Sie in den Soundeffekten notiert haben, und schauen Sie ganz nach rechts. Auf der rechten Seite sollten Sie die Anwendung sehen, die die Sounddatei abgespielt hat. Gehen Sie jetzt einfach zu dieser Anwendung und sagen Sie ihr, dass sie die Wiedergabe der Sounddatei nach Möglichkeit deaktivieren soll.

Ich danke dir sehr. Ich war damit beschäftigt, einen periodischen Basso-Sound aufzuspüren. Ich dachte, es wäre mein E-Mail-Client oder RocketChat, aber es stellte sich als SpamSieve heraus. Ohne Ihren Vorschlag hätte es Tage oder sogar Wochen gedauert, die schuldige App zu finden. Es ist nicht notwendig, den Klang vorab zu untersuchen. Ihr Terminalbefehl zeigt alle aktuellen Sounds an, was ausreichen sollte, es sei denn, ein Benutzer führt viele Soundbenachrichtigungen aus.
Arbeiten in Monterey 12.0, zu Ihrer Information.
Das war super hilfreich! Danke, funktioniert immer noch in Monterey 12.2.1. Beachten Sie, dass Sie für Sounds, die keine aiff-Dateien sind, möglicherweise ein anderes grep benötigen. Ich hatte ausgeführt open file.m4aund dieser Befehl kehrte zur Eingabeaufforderung zurück, aber die Datei wurde im Hintergrund abgespielt, und ich musste stattdessen nach ihrer Erweiterung suchen: sudo fs_usage | grep "m4a"- Es wird schwer sein, das Format zu erraten, wenn Sie es nicht wissen, aber wenn wie ich Sie haben ... so finden Sie es!

Es ist zwar nicht möglich , dies direkt zu überprüfen, aber hier sind einige Problemumgehungen:

  • Wenn Sie Google Chrome (oder einen ähnlichen Webbrowser) verwenden, suchen Sie nach dem Lautsprechersymbol neben der Registerkarte oder dem Fenster (z. B. im Fenstermenü nachsehen).
  • Wenn Sie Safari verwenden, sollten Sie neben dem gerade wiedergegebenen Tab auch das Lautsprechersymbol sehen.
  • Einige Apps wie SoundFlower können eine zusätzliche Kernel-Erweiterung für Pass-Through-Audio bereitstellen, damit sie überprüfen können, welche Prozesse auf das Soundgerät zugreifen.
  • Überprüfen Sie die Benachrichtigungen in den Systemeinstellungen und aktivieren Sie entweder „Nicht stören“ oder deaktivieren Sie „Ton abspielen“ für Benachrichtigungen für die letzten oder alle Apps. Siehe diesen Beitrag .
  • Suchen Sie nach Protokolleinträgen, z. B. mit dem folgenden Befehl:

    log stream --level=debug
    
  • Suchen Sie per fs_usageBefehl nach Dateiaktivitäten, z

    sudo fs_usage
    
  • Verwenden Sie Trial-and-Error, pausieren und fortsetzen Sie Prozesse, um mehr über den Prozess herauszufinden, z

    ps d
    kill -STOP 1234 5678 # Stop processes via PID(s).
    kill -CONT 1234 5678 # Resume selected processes.
    
Mir ist tatsächlich etwas Seltsames passiert. Ich denke, es hing wahrscheinlich mit einem eingebetteten YT-Video auf Twitter zusammen. Ich habe Chrome geschlossen und es hat mehrere Minuten lang über "com.apple" weitergespielt.

Klingt nach der iMessage-Anmeldebenachrichtigung.

Probieren Sie diesen Befehl im Terminal aus, um dies zu überprüfen:

afplay "/Applications/Messages.app/Contents/Resources/Logged In.aiff"

Um dies zu deaktivieren, können Sie „Toneffekte abspielen“ in den iMessage-Einstellungen deaktivieren.

Vielleicht kann SoundBunny dabei helfen. Der Hauptzweck der App besteht darin, Sie die Lautstärke verschiedener Apps steuern zu lassen, aber sie zeigt Ihnen normalerweise auch, welche Apps kürzlich Geräusche gemacht haben, was hilfreich sein könnte.

Sie können eine kostenlose Demo von ihrer Website herunterladen und laufen lassen, bis Sie das Geräusch wieder hören, dann zu SoundBunny wechseln und sehen, was es zeigt.

Wie wird angezeigt, welche Apps kürzlich Geräusche gemacht haben? Soweit ich das beurteilen kann, zeigt es nur eine alphabetische Liste der geöffneten Apps. Und das Protokoll zeigt nicht, wann Sounds abgespielt werden, sondern nur, wenn Apps starten/enden.
"DIESES PRODUKT WURDE AUSGEKAUFT UND NICHT MEHR VERFÜGBAR" =(
7 Jahre sind eine lange Zeit.
Es scheint, dass Version 5 von SoundSource dazu in der Lage sein könnte : weblog.rogueamoeba.com/2020/08/05/…

Danke für alle Antworten! Das Problem wurde gelöst, es stellte sich heraus, dass es durch ein Safari-Plug-in (Notifier von Gmail) verursacht wurde. Methode: Inspiration (Tut mir leid, Leute, ich habe es gerade herausgefunden, als mir klar wurde, dass ich ein seltsames Plugin installiert habe ... wirklich schwer zu erklären, wie mir die Idee kam ...).

Es würde anderen wahrscheinlich helfen, wenn Sie erklären würden, wie Sie die Ursache herausgefunden haben (dh mit welcher Methode Sie die verantwortliche App identifiziert haben). Das könnte anderen in der gleichen Situation helfen, auch wenn sie nicht das gleiche Safari-Plug-in haben.

In meinem Fall stellte sich heraus, dass es sich um PowerChime handelte, das immer wieder klingelte, wie es beim Anschließen der Stromversorgung der Fall ist, weil ich einen schlechten USB-C-Anschluss verwendet habe.

Der fs_usageVorschlag anderer war der Schlüssel, aber hier ist ein vollständigeres Beispiel. Aufbauend auf den Vorschlägen anderer habe ich zuerst ein Terminal geöffnet und ausgeführt:

sudo fs_usage

Dies druckte zu viele Informationen, also fing ich an, sie zu filtern. Wenn ich vermutete, dass ein Programm nichts damit zu tun hatte, drückte ich Strg-C, den Aufwärtspfeil und bearbeitete meine Befehlszeile, um grep -vdieses Programm herauszufiltern:

sudo fs_usage | grep -v zoom 

Aber das hat viele Einträge für grepsich selbst hinzugefügt, also habe ich das auch gefiltert:

sudo fs_usage | grep -v zoom | grep -v grep

Schließlich fügte ich dieser Pipeline ungefähr sechs verschiedene Schritte hinzu, und an diesem Punkt konnte ich sehen, dass PowerChimesie immer wieder auftauchten. Das war mein Hinweis, über mein Problem mit dem schlechten USB-C-Anschluss nachzudenken und zu erkennen, dass ich das Netzkabel daran angeschlossen hatte.

Boom 3D kann dies und noch viel mehr.

Installieren Sie es, aktivieren Sie die systemweite Unterstützung im Hauptfenster der App (es erfordert, dass Sie eine andere Erweiterung installieren), dann können Sie auf das Taskleistensymbol klicken:

Klicken Sie einfach auf die violette Schaltfläche in der Nähe der oberen rechten Ecke, und Ihnen wird eine Liste aller Apps und ihrer Lautstärke angezeigt. Apps, die Musik abspielen, haben einen kleinen grünen Kreis:

@Allan Ich weiß, aber dies teilt nur den Namen eines Programms, der Link dient nur der Bequemlichkeit. Und es gibt wirklich nicht viel zu erklären, warum es das Beste ist, da es nicht das Beste ist. Andere Antworten sind genauso gültig.
Können Sie Ihre Antwort bearbeiten, um zu erklären, wie jemand diese Anwendung verwenden könnte, um das in der Frage beschriebene Problem zu lösen? Wenn man sich die Funktionsbeschreibung ansieht, ist es schwer zu erkennen, wie das funktionieren könnte.
@patrix Fertig ;)

Ich wusste nicht, woher das lästige Geräusch von meinem Computer kam, zum Glück habe ich irgendwo gelesen, dass etwas im Safari-Cache stecken bleiben kann… Ich habe es gelöscht und es hat für mich funktioniert, unten ist, wie es geht. Befehl alt e ist der schnellste Weg … aber wenn Sie sicher sein wollen

Wählen Sie im Hauptmenü den ersten Punkt „Safari“ und aus dem Drop-down den Punkt „Einstellungen…“ aus. Ein Popup öffnet sich. Klicken Sie auf den Reiter „Erweitert“. Aktivieren Sie unten die Option „Entwicklermenü in der Menüleiste anzeigen“. Jetzt sollten Sie im Hauptmenü einen neuen Menüpunkt mit dem Namen „Entwickeln“ sehen. Wenn Sie auf den Menüpunkt „Entwickeln“ klicken, können Sie aus den Untermenüpunkten „Leere Caches“ auswählen. Laden Sie die Seite neu.