Open Su-Rooot opened 6 months ago
数字の順番は個人的な重要度です。issueが多くなるため1つにまとめましたが、それぞれで分けたほうが良い場合は投稿しなおすので遠慮無く言って下さい。
①私はSAPIForVOICEVOXを使っており、棒読みちゃん経由でVOICEVOXに読み上げさせています。SAPIにもVOICEVOXを登録できるため棒読みちゃんを経由せず読み上げさせる事もできると思いますが、棒読みちゃんにある機能(前述した辞書機能の他にタグを使った調声や音声ファイル再生)を使いたいためこのような提案になりました。因みにSAPIにVOICEVOXの音声を登録してもZero Quakeの設定画面にその項目は出てきませんでした。
②地震情報や津波情報についても緊急地震速報のように細かくタグがあると嬉しいです。また、タグにデータがある場合のみ読み上げる文章が設定できると助かりますが無くても棒読みちゃんの置換でなんとかなります。
自分だったらこう設定できるのが理想だな という例
震度速報 豊後水道地震の初報の場合
「(震度速報:最大震度6弱の音声ファイル)17日23時14分ごろ、最大震度6弱を観測する、強い地震がありました。震度6弱を、愛媛県南予、高知県西部、震度5強を、大分県中部、大分県南部、震度4を、広島県南西部、愛媛県東予、愛媛県中予、山口県東部、山口県中部、大分県北部、大分県西部、宮崎県北部平野部、宮崎県北部山沿い、震度3を、高知県中部、熊本県阿蘇で観測しています。」
!速報{maxInt}!{origin_day}{origin_time}ごろ、!最大震度{maxInt}!。[{areaInt7}:震度7を、{areaInt7}、][{areaInt6+}:震度6強を、{areaInt6+}、][{areaInt6-}:震度6弱を、{areaInt6-}、][{areaInt5+}:震度5強を、{areaInt5+}、][{areaInt5-}:震度5弱を、{areaInt5-}、][{areaInt4}:震度4を、{areaInt4}、][{areaInt3}:震度3を、{areaInt3}、]で観測しています。
!速報6弱!
を棒読みちゃんのタグで音声ファイルに置換
!最大震度6弱!
を最大震度6弱を観測する、強い地震がありました
に置換(震度に応じたやや強い、強い、非常に強い、大(地震)の表現を追加したいため)
{areaInt震度}
はその震度が観測された地域が入る
[]先頭の{}にデータがある場合は:以降の中身を読み上げ、ない場合は読み上げない この場合は震度7と6強は読み上げず、6以下は読み上げる
、で観測しています
をで観測しています
に置換し余分な読点を消す
震源に関する情報
「(津波無し震源情報の音声ファイル)17日23時14分ごろ、最大震度6弱を観測する、強い地震がありました。震源は豊後水道、震源の深さは50キロメートル、マグニチュードは6.4と推定されています。この地震による津波の心配はありません。」
!震源{region_tsunami}!{origin_day}{origin_time}ごろ、!最大震度{maxInt}!。震源は{region_name}、震源の深さは{depth}キロメートル、マグニチュードは{magnitude}と推定されています。{region_tsunami}
{region_tsunami}
は"この地震による津波の心配はありません。","この地震により、日本の沿岸では若干の海面変動があるかもしれませんが、被害の心配はありません。"
のどちらかが入る(と思います。XML電文の固定付加文の内容そのままです)
震度・震源に関する情報 5/26 14:27 大分県中部 M3.1の地震の場合
「(地震情報:最大震度3の音声ファイル)26日14時23分ごろ、最大震度3を観測する地震がありました。震源は大分県中部、震源の深さは10キロメートル、マグニチュードは3.1と推定されています。この地震による津波の心配はありません。震度3を、大分県中部の別府市、震度1を、大分県北部で観測しています。」
!震源{maxInt}!{origin_day}{origin_time}ごろ、!最大震度{maxInt}!。震源は{region_name}、震源の深さは{depth}キロメートル、マグニチュードは{magnitude}と推定されています。{int_tsunami}[{areaInt7}:震度7を、{areaInt7}、][{maxInt7?}:、の{cityInt7}、][{areaInt6+}:震度6強を、{areaInt6+}、][{maxInt6+?}:、の{cityInt6+}、][{areaInt6-}:震度6弱を、{areaInt6-}、][{maxInt6-?}:、の{cityInt6-}、][{areaInt5+}:震度5強を、{areaInt5+}、][{maxInt5+?}:、の{cityInt5+}、][{areaInt5-}:震度5弱を、{areaInt5-}、][{maxInt5-?}:、の{cityInt5-}、][{areaInt4}:震度4を、{areaInt4}、][{maxInt4?}:、の{cityInt4}、][{areaInt3}:震度3を、{areaInt3}、][{maxInt3?}:、の{cityInt3}、][{areaInt2}:震度2を、{areaInt2}、][{maxInt2?}:、の{cityInt2}、][{areaInt1}:震度1を、{areaInt1}、][{maxInt1?}:、の{cityInt1}、]で観測しています。
{cityInt震度}
はその震度が観測された市町村が入る
{maxInt?}は最大震度がその震度の場合にデータが入る。最大の震度を観測した市町村(この場合は震度3)のみ読み上げたいためこのタグが必要。データの有無を区別するためだけなので中身は1でもなんでもいいです
...震度3を、大分県中部、、の別府市、震度1を...
を...震度3を、大分県中部の別府市、震度1を...
に置換し余分な読点を消す
遠地地震に関する情報 そもそもデータが少ない上、大規模噴火の場合は深さやマグニチュードが意味を持たないため細かくタグ化するのは難しい気がします。読み上げる文章を地震と噴火で別に設定したほうが楽かもしれません。別のソフトで海外地震の読み上げはできているので個人的には地震、噴火と津波あり、海面変動、津波なし、調査中の組み合わせ計8種の音声ファイル再生ができるような区別とXML電文の<Text>と<FreeFormComment>の部分があれば十分です。
長周期地震動に関する観測情報 豊後水道地震の場合
「17日23時14分ごろの地震により、長周期地震動階級2を観測した地域があります。階級2、大きな揺れを、高知県西部、階級1、やや大きな揺れを、鳥取県西部、愛媛県中予、愛媛県南予、熊本県球磨、大分県中部、大分県南部、宮崎県北部平野部、宮崎県南部山沿い、鹿児島県薩摩で観測しました。」
{origin_day}{origin_time}ごろの地震により、長周期地震動階級{maxLgInt}を観測した地域があります。[{lgInt4}:階級4、極めて大きな揺れを、{lgInt4}、][{lgInt3}:階級3、非常に大きな揺れを、{lgInt3}、][{lgInt2}:階級2、大きな揺れを、{lgInt2}、][{lgInt1}:階級1、やや大きな揺れを、{lgInt1}、]で観測しています。
{maxLgInt}
は最大の長周期地震動階級の数字1~4が入り、{lgInt階級}
はその階級を観測した地域が入る
顕著な地震の震源要素更新のお知らせ
「17日23時14分ごろの地震の発生場所と規模が更新されました。震源は豊後水道、震源の深さは39キロメートル、マグニチュードは6.6に更新されました。」
{origin_day}{origin_time}ごろの地震の発生場所と規模が更新されました。震源は{region_name}、震源の深さは{depth}キロメートル、マグニチュードは{magnitude}に更新されました。
推計震度分布 音声で内容を伝えるのは困難だと思います。推計震度分布の音声ファイル1つを再生できれば問題ありません。
南海トラフ地震臨時情報/南海トラフ地震関連解説情報
「(解説情報の音声ファイル)本日(5月9日)開催した第79回南海トラフ沿いの...特段の変化は観測されていません。」
!南海トラフ{nankai}!{text}
{nankai}
は"臨時","定例"
のどちらかが入る
{text}
は電文の<Text>全部が入る 棒読みちゃんの置換で幾らでも整形できるのでそのままで大丈夫です。
津波情報 津波に関する情報を読み上げさせたことが無いため具体的にどう読み上げさせたいかが決まっていません。 大津波警報/津波警報/津波注意報/津波予報:津波予報区ごとの発表種別、予想時刻と高さ 津波情報:潮位観測所ごとの最大波の観測時刻と高さ、高さの状態(押し、引き、上昇中、○○m以上) 沖合の津波観測に関する情報:潮位観測所ごとの最大波の観測時刻と高さ、高さの状態(押し、引き) の詳しい内容まで読み上げできるといいと思います。
③震度上昇時に読み上げさせる設定で予想震度が2→3→4→3→4と変化した場合、直前の報と比較すると2(読む)→3(読む)→4(読む)→3(読まない)→4(読む)となり、これまで出た報全てと比較すると2(読む)→3(読む)→4(読む)→3(読まない)→4(読まない)となり、読む回数に差が出ます。個人的には後者だと読み上げる回数が少なすぎてしまうため前者のほうが好ましいです。
④PLUM報の読み上げ文章を別で設定できるようにしてもいいですが、棒読みちゃんの置換でマグニチュードや深さを消せるためそこまでする必要はありません。
①のご提案について対応しました。次回リリースで当該機能を搭載する予定です。 ②③についても今後対応予定です。 ④PLUM法読み上げに関しては、情報源によってPLUM法か否かの判定ができない為、対応を保留します。
貴重なご提案ありがとうございます。
対応ありがとうございます!
②のご提案に関して対応しました。
緊急地震速報と同様の読み上げ方式となります。震度速報・震度震源情報などによる読み上げ内容の差異は、2種類のカッコを利用し、「震度の情報が入っている場合はカッコ内を読み上げる」のようにして対応しています。以下に設定画面のスクリーンショットを示します。
次回リリース(v0.7.7)で本機能が追加されます。先だって試されたい場合は、ご自身でビルドしてください。
補足 ①リリースまでに、スクリーンショットや上記説明から仕様を変更する場合があります。 ②今回読み上げに対応した地震情報は、アプリ右側のバーに表示される気象庁による地震情報のみです。その他の情報や南海トラフ関連解説情報、津波情報の読み上げに関しては、今後対応する予定です。
この度はリクエストをお寄せいただきありがとうございました。使用により対応が遅れたことをお詫びします。 今後も、要望等ありましたら報告をよろしくお願いします。
このIssueについては、未実装の機能案が含まれるため、Openの状態とさせていただきます。
提案する機能の概要
①音声をOSのデフォルトではなく棒読みちゃんに読み上げさせたいです。 ②緊急地震速報だけでなく地震情報(特に震度速報/震源に関する情報/震度・震源に関する情報、できればそれ以外も)や津波情報も読み上げに対応すると嬉しいです。 ③現状では全ての続報を読み上げるかと思います。これを予想震度が上昇した時のみ読み上げるようにしたいです。 ④PLUM法のみによる緊急地震速報の場合に読み上げるタグが欲しいです。 読み上げ用タグの解説のフォーマットだと、例えば
タグ:{plum}、意味:PLUM法かどうか、とりうる値:"PLUM法",""
など提案する機能がないことによる弊害や機能ができることによる利点
①OS標準の音声はお世辞にも流暢とは言えません。 棒読みちゃんを使うことにより、それを経由して様々な音声で読み上げさせる事ができるようになります。また読み上げ中に続報が出た場合、今の文章をキャンセルして新しい情報を読み上げる動作を全て読み上げてから続報を読み上げられるようになります。さらに、棒読みちゃんの辞書機能で震源や市区町村の読み仮名を修正できます。
②地震情報や津波情報を音声で伝えられません。
③PLUM法が出た場合などで緊急地震速報の報数が多い場合、その度に読み上げがキャンセルされ全ての情報を読み上げさせる事ができません。一方で①の棒読みちゃんに読み上げさせる場合は続報を全て読み上げるため非常に長くなり、表示される情報と読み上げの情報のラグが大きくなってしまいます。 震度変化時や震度上昇時などの続報を読み上げる条件を追加することにより、これらを軽減することができます。
④従来法での震源が未推定の場合、緊急地震速報に含まれるマグニチュードや深さは意味の無い値になります。 PLUM法かどうかのタグがあり①棒読みちゃんに送信できればこれらの値を読み上げさせないようにできます。