Der 3. Labor-Hackathon fand statt. Andere Mitglieder Artikel 1, Artikel 2 Dieses Mal habe ich beschlossen, einen Raspberry Pi zu machen, der Tweets spricht. Was das Motiv für die Erstellung betrifft, so beschrieb der Artikel, auf den ich mich bezog, als ich die ersten Einstellungen von Razupai zum ersten Mal vornahm, Razupai, der laut spricht. .. Als ich es las, hatte ich das Gefühl, dass ich eines Tages einen Razz Pie machen möchte, der die Tweets von ** Tsui Abolition ** im Labor spricht. Dieses Mal bezog ich mich auf ** Artikel **
$ speaker-test -t wav
Sie können den Ton mit "Strg + C" stoppen. Zu diesem Zeitpunkt kam Ton von dem über HDMI angeschlossenen Display, um Ton über den Kopfhörer (virtueller Lautsprecher) zu erzeugen.
$ amixer cset numid=3 1
Sie können durch Eingabe vom HDMI-Ausgang zum analogen Ausgang konvertieren und den Ton über den Lautsprecher wiedergeben.
$ alsamixer
--Open Source Voice Synthesis Engine
$ sudo apt-get update
$ sudo apt-get install open-jtalk
$ sudo apt-get install open-jtalk-mecab-naist-jdic
$ sudo apt-get install htsengine libhtsengine-dev
$ sudo apt-get install hts-voice-nitech-jp-atr503-m001
Wenn unterwegs die Meldung "Möchten Sie fortfahren [J / N]?" Angezeigt wird, geben Sie "J" ein und drücken Sie die Eingabetaste, um die Installation fortzusetzen.
Als Nächstes erstellen wir ein Skript zum Ausführen von OpenJtalk.
jtalk.sh
#!/bin/sh
tmpfile=/tmp/jtalk.wav
htsvoice="/usr/share/hts-voice/\
nitech-jp-atr503-m001/\
nitech_jp_atr503_m001.htsvoice"
echo "$1" | open_jtalk \
-x /var/lib/mecab/dic/open-jtalk/naist-jdic \
-m $htsvoice \
-ow $tmpfile && \
aplay --quiet $tmpfile
rm $tmpfile
Geben Sie dem erstellten Skript die Ausführungsberechtigung.
$ chmod 755 jtalk.sh
Testen Sie Folgendes in der Befehlszeile
$ ./jtalk.sh Hallo
Wenn Sie vom Lautsprecher als "Hallo" hören, OK!
Melden Sie sich über die unten stehende URL bei Twitter an. https://apps.twitter.com/
Python-Einstellungen
#Erstellen einer virtuellen Umgebung
$ sudo apt-get install python3-dev python3-venv
$ python3 -m venv env
$ cd env
$ source bin/activate
Installieren Sie tweepy
(env) $ python -m pip install tweepy
#-*- coding:utf-8 -*-
import tweepy
import os
#Stellen Sie verschiedene Schlüssel ein
CONSUMER_KEY = 'xxxxxxxxxxxxxxx'
CONSUMER_SECRET = 'xxxxxxxxxxxxxxxxxxxxxxx'
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
ACCESS_TOKEN = 'xxxxxxxxxxxxxxxxxxxx'
ACCESS_SECRET = 'xxxxxxxxxxxxxxxxxxxxxxxxxx'
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)
#API-Instanz erstellen
api = tweepy.API(auth)
print('Done!') #Bereit
#Holen Sie sich Tweets
for status in tweepy.Cursor(api.user_timeline,screen_name = "ID des erworbenen Benutzers",exclude_replies = True).items():
tw_text = status.text
tw_text = ''.join(tw_text.splitlines())
tw_text = tw_text.replace('(',' ').replace(')',' ').replace(' ','')
print(tw_text)
os.system('/home/pi/jtalk.sh ' + tw_text)
break #Zur Zeit nur die neuesten Tweets
Geben Sie den folgenden Code ein
(env) $ python twitter.py
Ich habe die neuesten Tweets des angegebenen Benutzers mit männlicher Stimme gesprochen! (Auch wenn es ein Schlüssel ist, hat er gesprochen, wenn er mir gefolgt ist)
Es ist uns gelungen, Razpai dazu zu bringen, die neuesten Tweets des in diesem Hackathon angegebenen Benutzers zu sprechen. Daher möchte ich Verbesserungen vornehmen, damit der angegebene Benutzer sprechen kann, wenn er twittert!
Danke fürs Lesen!
Recommended Posts