べにー さん
報告・ご要望ありがとうございます。
管理人です。
まず、なんとなくでも棒読みちゃんの追加ボイスによる読み上げが成されているということでホッと致しました。
(私は読み手を追加した環境を持っていないので、十分な動作確認をできずに公開していました…。)
> ①読み上げ方の設定で音質を選択すると別ウィンドウが開きますが、チャットログビューアの設定を常に最前面に表示としている場合に音質設定画面がチャットログビューアに隠れてしまい操作ができなくなります。音質選択ウィンドウの初期選択位置がキャンセルになっているのでエンターを押すことで復帰できますが、人によっては強制終了しか出来ないこともあるかと思われます。
これは早急に修正しなくてはなりませんね。
報告ありがとうございます。
②
改行がうまく読み上げられない件、修正しておきます。
改行があったら空白に置換して1行に直してから棒読みちゃんに送信しているつもりでしたが、実際はチャットログの改行されたメッセージをそのまま送信してしまっていました。
詳細に調査して頂きありがとうございました。
いずれも、1行にしてしまえば解決出来るかと思います。
> PSO2のログファイルを見る限りむしろ改行をどうやって検出しているのかが不思議です(´・ω・`)
少し難しい話になりますが…
PSO2のログファイルにおいて、
① 1回1回の発言を区切るために使われている改行 と、
② チャットメッセージ文内部の改行(今回問題になっていた箇所) と、
実は同じ改行でも少し異なる文字が使用されているのです。
①には、Windowsでよく使われる「CRLF(Carrige Return, Line Feed)」=「\r\n」という改行コードが使われています。
一方で②には、「LF(Line Feed)」=「\n」という改行コードが使われています。
そのため、「\r\n」ごとに発言を区切り、次に、タブ「\t」で区切ると簡単に発言情報を取得することができます。
しかしながら、問題は、少しログファイルの中身を見ようと思って、メモ帳か何かでログファイルを開き上書き保存しようとすると、「改行コードが混在しています。CRLFに統一しますか」のようなメッセージが出て全ての改行コードが統一されてしまうケースです。
こうなってしまうと、通常の方法ではうまくいきません。
そこで、タブで区切った際にデータが1つ(マルチラインの2行目以降)しかない場合、前回取得したのログの発言内容の末尾にくっつけていく、という手法をとっています。
ただし、マルチラインの発言内容は、(多分)発言の前後がダブルクォーテーション(「"」)で括られているため、前回の発言内容がダブルクォーテーションで始まっている場合に限ります。
ちなみに現状では、「LF」改行のみのファイルには対応出来ておりません。
> (´ε`;)ウーン…色々触ってみた感じですと棒読みちゃん、又はVOCALOID、棒読みちゃんとVOCALOIDを繋ぐプラグインVoiceroidTalkPlusの問題のような気もしてきました。
確かに、行が分けられて入力された場合の処理(仕様)は少し気になりますね。
まぁいずれにせよ改行を無くせば解決出来ると思いますので、修正しておきます。
もうしばらくお待ち下さい。