プログラマーの卵の日記

備忘録になってます!小難しそうなことから超簡単なことまでやってます!!

Empathを試してみた

概要

この記事で気になっていたので少し試してみました。

prtimes.jp

 

 

参考

感情解析API「Empath」の実力はいかに?実際に試してみた結果をレビュー - Qiita

EmpathをVisual Studio(C++)で使ってみた - Qiita

 

 

 

検証環境

pythonの環境が整っているので、pythonで行います。

 

 

 

準備

Empathの準備

Empath

公式サイトより、登録する必要があります。

APIに使用制限がありますが、無料でも登録して利用できます。

私は、「フリープラン (音声ファイル保存あり)」で行いました。

 

 

音声の準備

声 | 無料 BGM・効果音のフリー音源素材 | Springin’ Sound Stock

感情解析をする音声の準備が必要となります。

無料のものでも自前でも良いですが、私は上記の「はじまるよ」を利用しました。

 

解析可能な音声データ

Empathのドキュメントに記載はありますが、音声データに制約があります。

  • PCM WAVE形式、16bitであること。
  • データサイズが1.9MB以下であること。
  • フォーマットがPCM_FLOAT、PCM_SIGNED、PCM_UNSIGNED のいずれかであること。
  • 録音時間が5.0秒未満であること。
  • サンプリング周波数が11025Hzであること。
  • チャンネル数が1(モノラル)であること。

 

先ほどのサイトの「はじまるよ」はモノラル、32bit、mp3、44100Hzなので調整をする必要があります。

 

audacity

Audacity ® | Free, open source, cross-platform audio software for multi-track recording and editing.

audacityで調整を行います。

 

  1. mp3をD&Dで入れます。
  2. 左下の「プロジェクトのサンプリング周波数」を11025に変えます。
  3. 左上の「ファイル(F)」から「書き出し(E)」を選択し、「WAVとして書き出し(W)」を選択し、以下の形で保存します。

 

44010から11025に変更するだけでこれだけ変わります。

youtu.be

 

pythonの記載

参考にある記載をそのままですが、「empath_test.py」というのを用意して以下のように記載します。

※はじまるよ.wavはempath_test.pyを同じ階層に置いた状態です。


import requests

url ='https://api.webempath.net/v2/analyzeWav'

apikey = 'Empathにログイン -> API Key設定 -> API Keyの文字をここにコピペ'
payload = {'apikey': apikey}

wav = "はじまるよ.wav"
data = open(wav, 'rb')
file = {'wav': data}

res = requests.post(url, params=payload, files=file)
print(res.json())

 

実行・確認

実行すると以下のような結果が得られました。


D:\mine\py>python empath_test.py
{'error': 0, 'calm': 0, 'anger': 34, 'joy': 7, 'sorrow': 7, 'energy': 34}

 

それぞれが以下のようなパラメータです。

  • calm: 平常
  • anger: 怒り
  • joy: 喜び
  • sorrow: 悲しみ
  • energy: 元気

 

「はじまるよ」という単語からこの結果となります。

 

 

思ったこと

解析可能な長さ

5秒ということで短いように感じていましたが、FORSPOKENでは0.32秒ということでした。

全ての単語の一言一句ではなく、一つのwavから一つの結果として得られるものなので、0.32秒程度の短い解析をたくさんするのが正しいように感じました。

 

実用

少なくとも無料版では、APIコール数が有限のため使用は厳しいように思いました。

解析する際のみ11025Hzに変更するような仕組みをすれば実用は出来そうに思いますし、利用しても面白そうに感じました。

 

 

 

ゲームから学ぶ - チャンスでBGM切り替え

  • 敵が徘徊しているときのフレーズ
  • 敵が倒れて攻撃のチャンスの時のフレーズ
  • 倒しきった時の終わりのフレーズ

 

 

配信聞きながら気づいたので

www.youtube.com

ゲームから学ぶ - 16の色々(検索避け)

Final Fantasy 16を遊びつつ、気になったりちょっとしたものをまとめました。

 

 

チュートリアル(Tips)

youtu.be

 

 

ビジュアライゼーション

youtu.be

  • FF14にもあったやつと同じはず

 

 

すれ違いNPC会話UI

youtu.be

  • チームとの会話は真ん中下に表示され、すれ違いNPCの会話は左下に表示
  • 二つ目のセリフ以降は少しずれて表示
  • 今のセリフが終了されたら、次のセリフ開始とともにUIも表示
  • 途中で離れたら会話も途中で止まる
    • 今再生していた会話は距離減衰的なあれで聞こえなくなる

 

 

ガイドへの注視

youtu.be

  • Lスティック長押しでガイドへ注視
  • カメラ外になっても画面上にガイドが表示される
  • ガイドが左右どちらに振り切っているかで、注視の際のカメラ移動の方向が決まっているよう

 

 

メニューに表示されるキャラクター

youtu.be

  • 動きは反映されてるけど、顔の向きは反映されていないみたい
  • ステータスタブとか装備タブとかでカメラの向きが変わっている

 

 

火に近づいた時の手

youtu.be

 

 

レーニングでの入力表示

youtu.be

 

フィールドのBGM切り替え

youtu.be

  • 敵からの発見、またはプレイヤーから敵への攻撃ヒットがトリガーとなり、戦闘BGMへ切り替わっている
  • ダンジョンのようなエリアやムービーによる戦闘切り替えでは演出されない(ように思えた)

 

 

テイクダウンゲージ関係でBGM切り替え

youtu.be

  • ゲージの半分やゲージ切れ近くでBGMが切り替わっているように思います
  • 基本的にフレーズ切り替えのように思います
  • ムービー切り替え時には、ムービー側の尺の関係でBGMを即座にフェードアウトフェードインしているように思います

 

 

回避スロー

youtu.be

youtu.be分かりやすいのを狙って撮るのも難しかったので二つ。

  • 回避でBGMを止めているかスローにしているように思える。
    • 正直自分も熱入って遊んでたのでちゃんと聞けてない…

 

 

ボス戦闘の一連の流れ

youtu.be

  • ムービー中にBGMを再生し、そのまま戦闘
  • 戦闘終了で強制的にBGMを消してクリア

 

 

https://www.youtube.com/playlist?list=PL_nPzHJUOloKjSdSuIwT3UC_8Xz5TcKHi

 

ゲームから学ぶ - 釣りBGMの盛り上がり

 

 

youtu.be

 

  • 釣り開始からキャッチまでの間で釣れそうという具合から盛り上がりが増している
  • 釣ったらBGMの終わりに切り替えてる

ゲームから学ぶ - 話者方向の表示

オプションから話者の方向を表示するUIのオンオフが切り替えるようです。

画面内に話者が表示されていればUIは表示されず、画面外から喋っているときにどっちから喋っているか分かるようになっています。

 

youtu.be

 

 

ちょっと違うけど、サウンド関係と発信の方向を表示する関係は見るようになってきたなという気持ち。(プレイしてるゲームの種類によるのかも)

youtu.be(前に動画上げた気になってた。)

今年のゴールデンウィーク~

今年のゴールデンウィークは9連休ということで、何していたか忘れないためにメモ

 

 

 

ゲーム

英雄伝説 黎の軌跡II

GWに購入してクリアまでやってやりました。

英雄伝説は全作やっているので楽しめましたが、最低でも創の軌跡と黎の軌跡をやっていない人は楽しめないかなと感じました。

ちょっと探索に追加要素があった程度で戦闘などは前作と同じ感じですね。

 

 

ゴッド・オブ・ウォー ラグナロク

期間的にはあまりプレイ出来てません。

前作やってたけど記憶怪しいのでほぼ初見の感じでやってました。雰囲気で楽しみます。

戦闘の感じは相変わらず良いですねぇ…

 

 

牧場物語 Welcome!ワンダフルライフ

期間的にあまりプレイ出来てません。

オリーブタウンに比べてやれることが極端に少なくて、やりこみ要素がほとんどないですね…。

最初から牛と綺麗な畑があって、のんびりと農場をする感じですね。

結婚したら離脱かな…。

 

 

Sniper Elite 5

xbox game passでちょっとだけやりました。でも合わないと思ったのですぐ辞めました。

 

 

崩壊:スターレイル

キャラデザがえぐい、良すぎる。暇なときにゆっくり時間かけてプレイしてこうかなという気持ち。

 

 

Battle Field 2042

バグがある程度解消されたのかな?敵マークなども普通に行えたりと遊べますね。

 

 

学習

Unreal Engine

 

 

ゲームから学ぶ - 黎の軌跡Ⅱの戦闘BGM切り替えを見てみた

 

youtu.be

プレイヤーの攻撃か敵の攻撃ヒットで戦闘BGMへ切り替わっている。

シャード展開するとさらに戦闘BGMの演出が増える

 

戦闘開始と終了はフェードで切り替えられている。