Verwendung von Automator zum Erzeugen von gesprochenen Klingeltönen

In einem früheren Tutorial, Geben Sie Ihrem Mac eine Stimme mit Text-zu-Sprache. Ich habe Ihnen gezeigt, wie Sie die Sprachfunktion Ihres Mac verwenden. In einem bestimmten Abschnitt dieses Handbuchs wurde ausführlich beschrieben, wie ein Klingelton aus gesprochenen Wörtern mithilfe der Macs erstellt wird sagen Befehl und die Mac App Ringer.

In diesem Tutorial zeige ich Ihnen, wie Sie diesen Prozess automatisieren können, indem Sie ein Plug-In für Kontakte erstellen Automator. Dieses Plug-In generiert automatisch einen Klingelton für das gesprochene Wort, den wir verwenden können, ohne unendlich viel in Terminal eingeben zu müssen.


Bevor wir anfangen

Um unsere Klingeltöne optimal zu nutzen, benötigen Sie die Mac-App Ringer (3,99 US-Dollar aus dem Mac App Store). Ich werde später erklären, warum diese App erforderlich ist.

Unser Service für Kontakte funktioniert wie folgt:

  • Wählen Sie einen Kontaktnamen aus, für den Sie einen Klingelton erstellen möchten.
  • Markieren Sie den Text des Namens, des Rufnamens oder der Firma des Kontakts.
  • Klicken Sie mit der rechten Maustaste auf den ausgewählten Text. Wenn Sie unseren Service auswählen, wird automatisch ein neuer Klingelton generiert und an Ringer gesendet, um Lücken oder Einblendungen hinzuzufügen.
  • Der Klingelton kann dann an iTunes gesendet werden.

1. Automator

Ich werde eine Kombination aus Automator und einem Shellskript verwenden, um unsere Anforderungen zu erfüllen. Automator ist ein extrem leistungsfähiges Automatisierungswerkzeug, mit dem fast jeder extrem leistungsfähige Skripts erstellen kann, die nur wenig oder gar keine Erfahrung mit Skripts haben.

Automator-Workflows funktionieren, indem sie eine Eingabe entgegennehmen, unabhängig davon, ob es sich um eine Datei- oder Textauswahl handelt, und anschließend eine Aktion ausführen.

Spitze: Wenn Sie mit Automator nicht vertraut sind, schauen Sie sich unsere vorherigen Tutorials an, Automator 101: Erstellen Ihres ersten Workflows und tieferes Einsteigen in Automator unter OS X.

Schritt 1

Öffnen Automator, befindet sich in Ihrem Anwendungen Ordner und wählen Sie Bedienung als Dokumenttyp.


Wir werden einen Dienst für Kontakte (Adressbuch) erstellen, der jeden Text, den wir in der App auswählen, in einen gesprochenen Klingelton für unser iPhone konvertiert.

Sobald ein neues Dokument geladen wurde, sehen Sie, dass unser Service ausgewählt wird Text im jede Anwendung. Behalten Sie die erste Option bei, aber ändern Sie sie jede Anwendung zu Kontakte.


Ändern Sie die zu verwendende Anwendung, sodass dieser Dienst nur für Kontakte gilt.

Schritt 2

In dem Aktionen liste, suche nach Schale und Sie werden eine Aktion sehen Führen Sie das Shell-Skript aus. Ziehen Sie es in den Hauptarbeitsbereich.


Fügen Sie die Aktion "Shell-Skript ausführen" zum Hauptarbeitsbereich hinzu.

Sie müssen eine geringfügige Änderung vornehmen, damit wir den ausgewählten Text als Teil des Skripts verwenden können, das als a bezeichnet wird Variable.

Ändern Sie die Option für Eingabe übergeben von stdin zu als Argumente. Der Inhalt der Aktion ändert sich und wird wie folgt angezeigt.


Sobald das "Run Shell Script" zu unserem Workflow hinzugefügt wurde, müssen Sie die Art und Weise ändern, wie die Eingabe übergeben wird.

2. Das Shell-Skript

Zur Vereinfachung habe ich das Skript hinzugefügt, das Sie unten eingeben müssen. Es ist alles, was Sie innerhalb der Aktion benötigen, damit Sie die Aktion vollständig löschen und durch den folgenden Text ersetzen können.


So sieht der Workflow aus, wenn das Shellskript abgeschlossen ist.
 für f in "$ @" do # Schritt 1: Geben Sie einen temporären Speicherort und einen Dateinamen an, um unseren Klingelton unter loc = ~ / Desktop dateiname = temp.aiff # zu speichern $ loc / $ Dateiname "$ 1 ruft an" # Schritt 3: Jetzt haben wir einen temporären Klingelton erstellt. Umbenennen in mv $ loc / $ Dateiname "$ loc / $ 1.aiff" # Schritt 4: Zum Schluss öffnen wir diesen in Klingelton, um letzte Einstellungen vorzunehmen, -a /Applications/Ringer.app "$ loc / $ 1.aiff" abgeschlossen

Lassen Sie uns dieses Skript aufschlüsseln und erkunden, was es als Erstes tut.

Schritt 1

 # Schritt 1: Geben Sie einen temporären Speicherort und einen Dateinamen an, um unseren Klingelton unter loc = ~ / Desktop dateiname = temp.aiff zu speichern

Dies betrifft die Einstellung temporärer Informationen. Im obigen Skript geben wir einen temporären Namen und einen Ort für unsere Klingeltondatei an und weisen sie als Variable. Shell-Skriptvariablen beginnen mit einem Dollarzeichen, wenn wir sie verwenden möchten.

Hier wird unser Klingelton abgerufen Temp.Aiff (was als bezeichnet wird $ Dateiname) und wird in Ihrem gespeichert Desktop (bezeichnet als $ loc).

Schritt 2

 # Schritt 2: Verwenden Sie den Befehl "say", um unseren Klingelton zu generieren. Sagen Sie -o $ loc / $ Dateiname "$ 1 ruft an"

Hier benutzen wir die sagen Befehl, um den Namen des markierten Kontakts zu sagen und in einer Audiodatei zu speichern. Wir gebrauchen 1 US-Dollar um den Input zu repräsentieren, den Automator uns gegeben hat. Unser Service verwendet den von uns ausgewählten Text als Eingabe und gibt ihn an unser Shell-Skript weiter, das durch dargestellt wird 1 US-Dollar. Genau wie unser temporärer Dateiname beginnt unsere Variable hier mit einem Dollarzeichen.

Unser Klingelton sagt "Kontaktname ruft ". Wenn Sie dies für Johnny Appleseed tun würden, würde der Klingelton sagen" Johnny Appleseed ruft ".

Schritt 3

 # Schritt 3: Jetzt haben wir einen temporären Klingelton erstellt. Umbenennen in mv $ loc / $ Dateiname "$ loc / $ 1.aiff".

Dieser Schritt benennt die temporäre Datei in den Namen unseres Kontakts um. Wenn ich beispielsweise einen Klingelton für "Johnny Appleseed" generiert habe, würde es als starten Temp.Aiff und dann umbenannt in Johnny Appleseed.aiff. Obwohl die sagen Befehl erstellt die Datei und benennt sie, behandelt Sonderzeichen oder Leerzeichen innerhalb des Dateinamens nicht. Wir benötigen diesen zusätzlichen Schritt, damit wir unsere neue Datei nach unserem Kontakt benennen können.

Schritt 4

 # Schritt 4: Zum Schluss öffnen wir das in Ringer, um die letzten Einstellungen vorzunehmen -a /Applications/Ringer.app "$ loc / $ 1.aiff"

Schließlich wird der neu erstellte Klingelton in der App geöffnet Rufton, Dadurch können wir einige zusätzliche Änderungen vornehmen.


3. Erzeugen Sie einen Klingelton

Nachdem Sie das obige Skript kopiert und in das Automator eingefügt haben Führen Sie das Shell-Skript aus Aktion, es ist Zeit zu retten. Speichern Sie die Datei mit dem Namen Klingelton erzeugen… und dann öffnen Kontakte.


Unser neuer Dienst wird unter dem Kontextmenü angezeigt, wenn Sie mit der rechten Maustaste auf einen hervorgehobenen Text klicken.

Wählen Sie einen Kontakt aus und markieren Sie entweder den Namen, den Spitznamen oder den Firmennamen. Klicken Sie mit der rechten Maustaste und wählen Sie dann aus Klingelton erzeugen… das wird unter der sein Dienstleistungen Speisekarte. Sobald Sie ihn auswählen, wird sofort ein neuer Klingelton auf Ihrem Desktop erstellt, der den Namen des Kontakts als Dateinamen enthält. Ein paar Augenblicke später startet Ringer mit dem geladenen Klingelton und ist bereit, Änderungen vorzunehmen.


4. Klingelton


Mit Ringer können wir am Ende unseres Klingeltons eine Lücke hinzufügen, damit unser iPhone nicht zu lästig wird.

Das sagen Der Befehl kann tatsächlich Klingeltondateien generieren, die mit einem iPhone kompatibel sind ohne jede zusätzliche Software. Wenn wir das Skript so ändern würden, dass es eine .m4r Datei statt .Aiff Dann könnten wir die App komplett umgehen und in iTunes ablegen.

Aber es gibt ein Problem damit. Klingeltöne auf der iPhone-Schleife. Wenn wir nicht eine App wie Ringer verwenden, um unserem Klingelton eine Lücke hinzuzufügen, würde es unglaublich ärgerlich werden "Johnny Appleseed klingelt, Johnny Appleseed klingelt, Johnny Appleseed klingelt" ohne lücke. Es würde sicherlich so klingen, als wäre Siri bei uns übermäßig ungeduldig!

Jetzt, da sich unser Klingelton in Ringer befindet, fügen Sie am Ende der Datei eine Lücke von mindestens drei Sekunden hinzu. Auf diese Weise gibt es eine schöne Lücke vor den Klingelschleifen.

Sie können Ihren Klingelton dann an iTunes senden, wo der Kontaktname weiterhin als Klingelton angezeigt wird. Sie müssen es dann nur noch als Klingelton zuweisen.


Einpacken

Obwohl nicht ganz autonom, können Sie schnell und einfach eine Reihe verschiedener Klingeltöne für verschiedene Kontakte erstellen. Da der von uns erstellte Dienst eine beliebige Form von ausgewähltem Text aus den Kontakten annimmt, können Sie einen Klingelton mit einem Kurznamen oder einem Geschäftsnamen generieren.


Wenn Sie den Automator-Dienst verwenden, der in diesem Lernprogramm enthalten ist, können Sie den Code anzeigen oder für sich selbst installieren.

Im Rahmen dieses Tutorials habe ich einen vorgefertigten Automator-Workflow für Sie hinzugefügt. Öffnen Sie einfach die Datei und Sie können auswählen, ob Sie den Workflow in Automator bearbeiten oder als Dienst installieren möchten.