とりあえずウチの Nabaztag:tag に日本語をしゃべらせてみた。

My nabaztag:tag speaks by Japanese.

YouTube - My nabaztag:tag speaks by Japanese.

撮影したムービーは音量がやけに小さかったので、
デジカメで動画撮影 -> VirtualDub で音声だけ wav ファイルで抽出 -> Audacity で音量を上げる -> VirtualDub で映像と音声を合成&コーデック Intel Indeo Video R3.2 の quality 80% で圧縮してファイルへ出力
という処理をかけている。

Nabaztag API は WebService REST な API

Nabaztag APIを使うと自分の Nabaztag:tag を操作できる。
しゃべらせたり、光らせたり、耳を動かしたり。

APIはHTTP経由で使う。
http://api.nabaztag.com/vl/FR/api.jsp などのURLにパラメータをつけることでAPIをコールできる。API呼び出しの実行結果の成否などはXMLで返ってくる。

APIのリファレンスは api.nabaztag.com にある。

Nabaztag API に必須のパラメータ

自分の Nabaztag:tag を特定するために必須のパラメータは2つ。

sn:
Nabaztag:tagのシリアル番号。
Nabaztag:tagの底面に書いてある。

token:
スパム的なAPI実行の危険性を下げるために導入されているキー。パスワードみたいなもの。
my.nabaztag.com で自分の Nabaztag:tag の token を確認できる。

my.nabaztag.com で token の値を調べる

まず、my.nabaztag.com にログインする。
なぜか Nabaztag:tag の名前(Nabname) と my.violet.net のパスワードでログインできるという仕様。。。
(と思っていたけど、my.violet.net で確認&変更できる Nabaztag:tag のメールアドレス「His e-mail address」で指定するユーザー名が Nabname らしいという情報をいただいた。追記: 2009-02-03)

Nabaztag:tag His e-mail address

ログインしたらページ右上にある [Preferences] のリンクをクリックする (または上部の [MY BURROW]をクリックする)。

Nabaztag:tag

[MY PREFERENCES] の [Nabazphere] の項目に My Token と Nabaztag's Serial Number が載っている(シリアルナンバーは実機の底面にも書いてある)。

Nabaztag:tag

APIを使用するために「I want to receive the services and applications of the Nabazphere on my Nabaztag」にチェックが入っていなかったら、チェックを入れて [Modify] をクリックしておく。

まずは簡単なAPI実行サンプルを試す

APIリファレンスに載っている簡易的なサンプルを実行するURL。

http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&posleft=0&posright=0&idmessage=10333&idapp=10

sn=XXXXXXXXXXXX と token=XXXXXXXXXX は自分の Namaztag:tag のシリアル番号とtokenを指定する。

ウェブブラウザ等でURLにアクセスすると、
Nabaztag:tagの耳が動いて音楽が流れてピカピカ光る。

Nabaztag:tag の TTS (text to speach)

Nabaztag:tag に日本語をしゃべらせるためには、TTS (text to speach) の機能を使う。
Nabaztag:tag の API では、TTS の声とテキスト内容の2つを指定することができる。

TTS (text to speach) に使える言語と声のリスト

まず、APIに使える声のリストをAPIにて取得する。
action=9 パラメータで言語と声のリストを取得できる。

http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&action=9

実際に返ってきたリストがこれ。


<?xml version="1.0" encoding="UTF-8"?><rsp><voiceListTTS nb="58"/><voice lang="en-US" command="US-Billye"/><voice lang="hi-IN" command="IN-Nima"/><voice lang="ko-KR" command="KR-Choe"/><voice lang="da-DK" command="DK-Karen"/><voice lang="fr-FR" command="FR-Gertrude"/><voice lang="it-IT" command="IT-Ugo"/><voice lang="it-IT" command="IT-Assunta"/><voice lang="es-ES" command="ES-Baltasar"/><voice lang="fr-FR" command="FR-Maxence"/><voice lang="nl-NL" command="NL-Renate"/><voice lang="sv-SE" command="SE-Hjalmar"/><voice lang="fr-BE" command="BE-Minna"/><voice lang="en-US" command="US-Clarence"/><voice lang="en-GB" command="UK-Mistermuggles"/><voice lang="eu-ES" command="ES-Dunixe"/><voice lang="en-ZA" command="ZA-Wilbur"/><voice lang="en-US" command="US-Darleen"/><voice lang="sv-SE" command="SE-Maj"/><voice lang="no-NO" command="NO-Cora"/><voice lang="de-DE" command="DE-Otto"/><voice lang="nl-BE" command="BE-Hendrik"/><voice lang="ru-RU" command="RU-Bella"/><voice lang="sv-SE" command="SE-Selma"/><voice lang="es-ES" command="ES-Alfonsina"/><voice lang="ar-EG" command="EG-Nayla"/><voice lang="es-ES" command="ES-Rosalia"/><voice lang="pt-BR" command="BR-Lygia"/><voice lang="ja-JP" command="JP-Tamura"/><voice lang="fr-CA" command="CA-Felix"/><voice lang="en-AU" command="AU-Colleen"/><voice lang="ca-ES" command="ES-Bertrana"/><voice lang="en-IN" command="IN-Sangeeta"/><voice lang="en-GB" command="UK-Shirley"/><voice lang="zh-cnm-CN" command="CN-Pan"/><voice lang="pt-PT" command="PT-Celia"/><voice lang="nl-NL" command="NL-Max"/><voice lang="en-GB" command="UK-Leonard"/><voice lang="ar-EG" command="EG-Nabil"/><voice lang="en-US" command="US-Bethany"/><voice lang="fr-FR" command="FR-Anastasie"/><voice lang="en-GB" command="UK-Penelope"/><voice lang="en-US" command="US-Lilian"/><voice lang="tr-TR" command="TR-Asli"/><voice lang="no-NO" command="NO-Sigrid"/><voice lang="nl-NL" command="NL-Femke"/><voice lang="en-AU" command="AU-Jon"/><voice lang="da-DK" command="DK-Pia"/><voice lang="zh-YUE" command="YUE-Baibo"/><voice lang="fr-FR" command="FR-Archibald"/><voice lang="gr-GR" command="GR-Antonis"/><voice lang="en-US" command="US-Liberty"/><voice lang="es-ES" command="ES-Emilia"/><voice lang="th-TH" command="TH-Boon-mee"/><voice lang="en-IE" command="IE-Orla"/><voice lang="en-GB" command="UK-Edwin"/><voice lang="cs-CZ" command="CZ-Zdenech"/><voice lang="pl-PL" command="PL-Ignacy"/><voice lang="fr-CA" command="CA-Antonine"/></rsp>

いまのところ日本語が使えるのは <voice lang="ja-JP" command="JP-Tamura"/> だけらしい。

TTS (text to speach) でNabaztag:tagをしゃべらせる

シンプルに「hello」と言わせるなら、これだけ。

http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&voice=JP-Tamura&tts=hello

voice パラメータと tts パラメータを指定する。

voice:
声のタイプ。
日本語をしゃべらせたいなら現状では「JP-Tamura」しかない。

tts:
しゃべらせるテキスト内容。
日本語を指定するときはUTF-8でパーセントエンコードする。

ちなみに、JP-Tamura に英文を読ませると、日本人的な英語の発音をしてくれて、これはこれで楽しい。

シンプルに「こんにちは」と言わせるなら、これだけ。

http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&voice=JP-Tamura&tts=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF

ちょっと長いけど、
「このあいだ、近所の吉野家行ったんです。吉野家。そしたらなんか人がめちゃくちゃいっぱいで座れないんです。で、よく見たらなんか垂れ幕下がってて、150円引き、とか書いてあるんです。もうね、アホかと。馬鹿かと。お前らな、150円引き如きで普段来てない吉野家に来てんじゃねーよ、ボケが。なんか親子連れとかもいるし。一家4人で吉野家か。おめでてーな。よーしパパ特盛頼んじゃうぞー、とか言ってるの。もう見てらんない。」
と吉野家コピペを言わせるなら、これだけ。

http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&voice=JP-Tamura&tts=%E3%81%93%E3%81%AE%E3%81%82%E3%81%84%E3%81%A0%E3%80%81%E8%BF%91%E6%89%80%E3%81%AE%E5%90%89%E9%87%8E%E5%AE%B6%E8%A1%8C%E3%81%A3%E3%81%9F%E3%82%93%E3%81%A7%E3%81%99%E3%80%82%E5%90%89%E9%87%8E%E5%AE%B6%E3%80%82%E3%81%9D%E3%81%97%E3%81%9F%E3%82%89%E3%81%AA%E3%82%93%E3%81%8B%E4%BA%BA%E3%81%8C%E3%82%81%E3%81%A1%E3%82%83%E3%81%8F%E3%81%A1%E3%82%83%E3%81%84%E3%81%A3%E3%81%B1%E3%81%84%E3%81%A7%E5%BA%A7%E3%82%8C%E3%81%AA%E3%81%84%E3%82%93%E3%81%A7%E3%81%99%E3%80%82%E3%81%A7%E3%80%81%E3%82%88%E3%81%8F%E8%A6%8B%E3%81%9F%E3%82%89%E3%81%AA%E3%82%93%E3%81%8B%E5%9E%82%E3%82%8C%E5%B9%95%E4%B8%8B%E3%81%8C%E3%81%A3%E3%81%A6%E3%81%A6%E3%80%81%EF%BC%91%EF%BC%95%EF%BC%90%E5%86%86%E5%BC%95%E3%81%8D%E3%80%81%E3%81%A8%E3%81%8B%E6%9B%B8%E3%81%84%E3%81%A6%E3%81%82%E3%82%8B%E3%82%93%E3%81%A7%E3%81%99%E3%80%82%E3%82%82%E3%81%86%E3%81%AD%E3%80%81%E3%82%A2%E3%83%9B%E3%81%8B%E3%81%A8%E3%80%82%E9%A6%AC%E9%B9%BF%E3%81%8B%E3%81%A8%E3%80%82%E3%81%8A%E5%89%8D%E3%82%89%E3%81%AA%E3%80%81%EF%BC%91%EF%BC%95%EF%BC%90%E5%86%86%E5%BC%95%E3%81%8D%E5%A6%82%E3%81%8D%E3%81%A7%E6%99%AE%E6%AE%B5%E6%9D%A5%E3%81%A6%E3%81%AA%E3%81%84%E5%90%89%E9%87%8E%E5%AE%B6%E3%81%AB%E6%9D%A5%E3%81%A6%E3%82%93%E3%81%98%E3%82%83%E3%81%AD%E3%83%BC%E3%82%88%E3%80%81%E3%83%9C%E3%82%B1%E3%81%8C%E3%80%82%E3%81%AA%E3%82%93%E3%81%8B%E8%A6%AA%E5%AD%90%E9%80%A3%E3%82%8C%E3%81%A8%E3%81%8B%E3%82%82%E3%81%84%E3%82%8B%E3%81%97%E3%80%82%E4%B8%80%E5%AE%B6%EF%BC%94%E4%BA%BA%E3%81%A7%E5%90%89%E9%87%8E%E5%AE%B6%E3%81%8B%E3%80%82%E3%81%8A%E3%82%81%E3%81%A7%E3%81%A6%E3%83%BC%E3%81%AA%E3%80%82%E3%82%88%E3%83%BC%E3%81%97%E3%83%91%E3%83%91%E7%89%B9%E7%9B%9B%E9%A0%BC%E3%82%93%E3%81%98%E3%82%83%E3%81%86%E3%81%9E%E3%83%BC%E3%80%81%E3%81%A8%E3%81%8B%E8%A8%80%E3%81%A3%E3%81%A6%E3%82%8B%E3%81%AE%E3%80%82%E3%82%82%E3%81%86%E8%A6%8B%E3%81%A6%E3%82%89%E3%82%93%E3%81%AA%E3%81%84%E3%80%82

あまりに長すぎるせいか、しゃべってくれずにエラーが返ってくることもある。

ついでに Wake up your Rabbit コマンド

眠らせる: Send your Rabbit to sleep
http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&action=13

起こす: Wake up your Rabbit
http://api.nabaztag.com/vl/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXX&action=14

tags: zlashdot Nabaztag Nabaztag

Posted by NI-Lab. (@nilab)