2018/11/06

通話アプリ音質比較

通話アプリの音質を比較してみました。音声通話占いの通話手段を選択する際の参考にしてください。


比較対象としたのは以下の7種。
  • IP電話
  • LINE
  • Skype
  • Viber
  • Second Life
  • SkyPhone
  • マイクから直接録音

IP電話は固定電話(ひかり電話)から発信して Skype 番号で受信した場合の通話音声です。発信する側は特別なアプリは不要で、電話番号で掛けられる普通の電話です。周波数解析したグラフは以下のようになります。
通常のひかり電話の音声周波数帯域は 300 Hz ~ 3.4 kHz と決まっているので、グラフでもそれ以上の周波数は出ていません。
ただ、音質は周波数帯域だけで決まるわけではありません。本来であればもう少し良い音で聞こえるはずですが、IP電話の場合は音声データが圧縮されて伝送されていたりするので音質はかなり悪くなっています。
音質が変化しているので場合によっては相手が誰だか判別ができないこともありますが、話している内容はどうにか聞き取れます。3G以前の携帯電話での通話もほぼ同等の音質でした。

LINE は Wi-Fi 環境で LINE 同士での通話です。 本来なら私の環境はパソコンの LINE を使いたいのですが、現在はなぜかパソコンで音声通話ができないのでガラホの LINE(バージョン 8.14.1)を使用しています。マイクはパソコンで使用しているヘッドセットと同じものを接続して通話しています。受信側は Android スマホの LINE(バージョン 8.16.2)です。
周波数のグラフは 7 kHz 以上が完全にカットされています。携帯電話の VoLTE と同等の周波数帯域です。IP電話のほぼ倍の周波数帯域となっており、当然音質も良くなっていますが、他の通話アプリと比べると微妙に劣化して聞こえると思います。おそらく音声データの圧縮率が高いせいで音質が劣化しているのだと思います。その分、通信量は少なめになっているはずです。
音質ではなく通話の安定性などの品質は時間帯によって悪くなる時もあります。音質よりも通話品質の悪さがストレスになることが多いかもしれません。

Skype は Wi-Fi 環境で Skype 同士での通話です。パソコンのデスクトップ版 バージョン 8.33.0.50 からの通話になります。
周波数のグラフは LINE 同様に 7 kHz 以上がカットされていてほぼ同等の周波数帯域となっています。しかし、LINE と比較するとはっきりとわかるくらい音質が良くなっているように聞こえると思います。おそらく圧縮率が低めなのだと思います。その分、通信量が増えているはずです。
通話の安定性はまずまず。たまに途切れることもありますが LINE ほどひどくはありません。実用性はまずまずで悪くありません。

Viber は Wi-Fi 環境で Viber 同士での通話です。パソコン版バージョン 9.7.5 からの通話です。
周波数のグラフは LINE や Skype と同様に 7 kHz 以上がカットされています。音質は Skype とほぼ同等で優劣はつかないと思います。
Viber は使用経験がまだ少ないので何とも言えないのですが、実際に使ってみた印象としては音質も安定性も Skype 以上だったと思います。

Second Life は公式ビューア(バージョン 5.1.9)から Firestorm ビューア(バージョン 5.1.7)へのボイスコールです。
周波数のグラフは 14 kHz 以上がカットされています。VoLTE(HD+)と同等の周波数帯域です。他の通話アプリの2倍の周波数帯域を確保していることになります。音質もより明瞭になったように聞こえます。リップノイズのような雑音が入ってしまっていますが、 入力環境の調整がうまくいっていなかったのかもしれません。
Second Life のボイスチャットはうまく調整すれば空気感が伝わるほどの高音質ですが、安定性にやや難ありかもしれません。

SkyPhone は Wi-Fi環境での通話です。原則としてアプリはスマートフォンでしか利用できませんが、私がスマホを1台しか所有していないのでパソコンに Android エミュレーターの BlueStacks をインストールして、そこに SkyPhone をインストールして受信側の端末としました。発信は Android スマホ版のアプリ(バージョン 1.6.9)からです。通話音質の設定を「高音質」にして通話しました。
周波数のグラフは 20 kHz 以上がカットされています。ほぼ CD と同等の周波数帯域ということになります。確かに音質は悪くはありませんが、なぜか Skype などよりもぼんやりした感じに聞こえます。角が取れて丸くなったような感じですが、劣化しているようにも思えます。
おそらく、高い周波数まで確保するために圧縮率も非常に高くなっているためではないでしょうか。本来通話で必要とされる人間の声の周波数は 8 kHz くらいまでで十分なので 20 kHz というのは無駄にオーバースペックで、それを確保するために音質が劣化してしまうというのは本末転倒です。
音楽の演奏などを聞かせたいといった場合には使えるかもしれませんが、ほとんど無意味ですね。
圧縮に負荷がかかっているせいか安定性もいまいちで、遅延も最も顕著に発生しているように思われました。
高音質がウリの通話アプリなので設定も「高音質」にしましたが、標準音質や低音質に変えれば通話品質も安定するかもしれません。そうなると他のアプリに対するアドバンテージを失うことになってしまうかもしれませんが。
アプリ自体は非常にシンプルで、インストールすればすぐに使えるという手軽さがあります。その点では他のアプリに比べて優れていると言えます。

マイクから直接録音はヘッドセットのマイクを使用しています。エレコムの HS-HP22SV です。他の通話アプリでも全て同じマイクで録音しています。ただし、サウンドデバイスに Sound Blaster Omni Surround 5.1 を使用してノイズリダクションも使用しているので、本来の入力音声とは異なります。
そもそもマイクのスペック的には 100 Hz ~ 10 kHz の周波数帯域しかありません。それ以上の周波数はノイズが混じっているだけだと思います。
実はこのヘッドセットは電気屋さんで売っていた中では一番安かったもので、720円(税別)で買いました。製品の品質には全然期待していなかったのですが、意外とマイクの性能は悪くなくて綺麗な音質で入力できていると思います。
ヘッドセットのマイクは当たり外れが多くて 2000 円くらいの物でもマイクは全然ダメというものもあるのですが、これは当たりだと思います。

今回の比較では対象としませんでしたが(できなかった)携帯電話の VoLTE での高音質通話も利用できます。この場合の音質は Skype 等とほぼ同等で安定性は高く遅延も少ないと思われます。カケホ等の通話プランで時間を気にせず通話できる場合にはできるだけ VoLTE の通話を利用した方が良いかもしれません。

通話の音質は高音質になるほど気持ち(こころ)が伝わりやすくなります。恋人同士が電話で喧嘩することが多いというような場合には高音質な通話アプリに変えてみると改善するかもしれません。

特に占いは単なる情報伝達が目的ではなく、それ以上の物を伝える必要があるので、今回の比較を参考にして、できるだけ高音質の手段を使用していただければと思います。

通話アプリ音質比較

2018/09/26

Instagram のチャットとキーボード

Instagramチャット占いをする機会が増えてきたのですが、Windows パソコン用のアプリだといろいろと問題があって非常に使いづらいのです。

ダイレクトメッセージを使用してチャットをするのですが、発言を続けていくと画面が自動的にスクロールせずに隠れてしまうことがあります。これはチャットとしては致命的とも言えます。

文字を入力してエンターキーを押すと入力欄の中で文章が改行されるだけで、発言することはできません。発言するためには入力欄の右端にあるボタンをマウスでクリックする必要があります。Tab キーを押してもフォーカスは発言ボタンに移動はしないので、必ずキーボードからいったん手を放してマウスを操作する必要があります。これではスムーズなチャットはできません。

他の SNS や IM 等のチャットではほとんどの場合、エンターキーを押すだけで発言ができます。設定で改行と発言の切り替えができるものもありますが、パソコン用の Instagram ではそのような設定はなく、常に改行されてしまいます。

逆にスマホ用のアプリでは改行ができずに発言しかできないという融通の利かない仕様になっています。

パソコン用はあまりにも使いづらいので、スマホを利用してみることも考えてみます。

スマホの小さな画面で長時間チャットをするのは辛い作業になります。画面が小さい上に、さらに画面上にはソフトウェアキーボードが表示され、その上を指でなぞるので画面はほとんど見えなくなります。私はそういうちまちました作業はあまり好きではありません。

そこで、ハードウェア(物理)キーボードを接続してみることにします。幸いにして USB 接続のキーボードを所有していたのでスマホに繋いでみました。

一応、キーボードは認識され、メモ帳アプリやワープロなどでは普通に日本語入力はできたのですが、Instagram のダイレクトメッセージで文字を入力しようとするとなぜか英数字しか入力できなくなってしまいます。

日本語が入力できたとしてもなぜか記号の入力が上手くできなかったりするので、いろいろ調べてみたところ、どうもキー配列が正しく認識されていないようでした。

通常なら OS や日本語入力システムが物理キーボードの配列を自動認識するか、設定で正しいものに変更できるはずなのですが、私のスマホ( ZenFone 2 Laser )にはそういう設定がありませんでした。

インストールされている入力システムは ATOK と Gboard というもので、普段は ATOK を使っていたのですが、どちらの設定を見てもキー配列の設定はありませんでした。

キー配列を切り替えるためだけのアプリも探せばあるようでしたが、今回は新たに Google 日本語入力をインストールしてみることにしました。

Google 日本語入力にはアプリ自体に「ハードウェア キーボードのマッピング」という設定があり、ここで「日本語 109A 」という項目を選択することでキーボードが正常に認識されるようになりました。

これで Instagram でも物理キーボードを使って日本語で入力できるようになりました。

しばらくはこれでチャットをしてみようかと思います。

会話のログはパソコン・スマホ共に保存することはできません。ただし、発言を 1 つずつならコピーできるので、すべての発言をコピーして手作業でログを作成することは可能です。占いで 1 時間以上チャットをすれば発言の数は数百件になるので、ログの作成は現実的とは言えません。

ログを保存できないと占いのサポートにも支障が出てくる可能性もあるので、Instagram を有料のチャット占いの手段として正式に採用するのはしばらく見合わせようかと思います。

無料タロット占いでは試験的に採用して様子を見てみたいと思います。

2018/09/12

LINEのトークが遅延する原因が判明

パソコン版の LINE(ver 5.9.2.1753)で通話をしているとトーク(文字のメッセージ)の受信が大幅に遅れること(数分後とか)があります。場合によっては全く受信できなくなります。つまり、遅延が大きくなってリアルタイムな会話が成立しなくなってしまうのです。

これはどういう状況かというと、占いの通話手段に LINE を使用していて、私の方は音声のみで話し、相手はトークのみで話している時に起きる現象です。

お互いに文字のみのトーク(チャット)をしているときにはこのような遅延は発生せず、会話に支障が出ることはありません。

はじめは LINE の通信経路やサーバーに不具合があるのかと思っていたのですが、どうも原因はそれだけではないようで、パソコン版 LINE の仕様によるものではないかと思えてきました。

パソコン版 LINE の設定には「PC版を使用している場合はスマートフォン版への通知をオフ」というものがあります。その注意書きには「※PC版がロックモードの場合、または3分以上使用されていない場合は通知を再開」とあります。

これだけでは確証は持てないのですが、3 分以上パソコンの操作がない場合にはスマートフォン版に通知が行くことになり、パソコン版への通知は停止(オフ)になるということなのかもしれません。

私が音声通話をしている間はキーボードやマウスなどを使わない時間が長くなるので「パソコンは使用されていない」と判断されてしまうのかもしれません。実際に 3 分ほどでパソコンの画面上ではトークは停止したように見えて、スマートフォン(私の場合はガラホですが)の方に通知が届くようになります。

ガラホに通知が届いているのにパソコンには何も表示されないのです。

それで慌ててパソコンのマウスなどを適当に動かしてみるとトークが一気に届き始めたりします。これが原因なのはほぼ間違いないと思われました。

今のところ、この現象を回避できる手段や設定は見当たりません。仕様として受け入れざるを得ない状態です。

一般的な利用形態として片方が音声のみで片方が文字のみという通話パターンは想定されていないためにこのような問題が発生してしまうのだと思います。

最近になってやっとこの現象に気づいたのですが、占いの通話手段として「音声のみ+文字のみ」というミックス形態はそれほど珍しい事ではありません。以前から Skype 等では普通に行っていたことですが、Skype ではこのような現象は起きませんでした。LINE 特有の問題だと思われます。

Skype 等を使う場合でも、ほとんどは双方共に音声のみ、チャットのみという形態ですが、無料タロット占いの場合は例外的に私の方は音声とすることが必須条件となっていたので、「音声のみ+文字のみ」というミックス形態となることも多かったのです。

無料占いの通話手段は以前は Skype のみでしたが、最近になって LINE も導入したことでこの問題に気づくことになったというわけです。

スマホでの利用を主(スマホファースト)としている LINE の思想に基づく、いわば「おせっかい機能」なのですが、何とかならないものでしょうかねぇ。

私の方もパソコン版の LINE など使わずにガラホ(スマホ)の画面を見続ければいいのかもしれませんが、それではパソコンを使う利便性を失うことになってしまいます。

日本人が設計するアプリとかサービスって、どうも過剰な「おせっかい機能」のせいでかえって融通が利かず面倒なことになっているものが多いような気がします。「おもてなし」もやりすぎると迷惑ですよ。

2018/08/16

Viber の通話で相手の声が聞こえなかった時の対処法

Viber を使い始めてさっそく占いの依頼が入ったので音声通話をしてみたのですが、相手の声が聞こえなくて焦りました。相手にはこちらの声は聞こえているようでした。

相手は Android のスマホで、こちらはパソコン(Windows 10)です。

ああでもないこうでもないと試行錯誤に30分ほど費やしてしまいました。

最初はスマホ側のマイク入力(通話のパーミッションなど)に問題があるかと思ったのですが、私のパソコンの方で Viber の音声(オーディオ出力)の設定をしたら聞こえるようになりました。

Viber のオーディオ出力の設定は「デフォルトの端末」となっていましたが、それを現在使用中のオーディオデバイスに明示的に指定することで聞こえるようになったのです。

外国製のアプリって日本語名の「スピーカー」とかを認識できなくてたまにこういうことあるよなぁとか思ったのですが、どうも腑に落ちません。

そこで、Windows のサウンドの設定を確認してみたところ「既定のデバイス」と「既定の通信デバイス」が別々に指定されていました。どうやら原因はこれだったようです。

こういう設定が存在しているのは以前から知ってはいましたが、別々に指定してあると都合が悪い事の方が多いので常に同じデバイスに設定するようにしていました。

別々に指定した覚えはなかったので何でこんなことになっていたのか疑問でしたが、その原因も判明しました。

私は普段からサウンドデバイスを頻繁に切り替えて使っていたので、毎回先ほどの設定画面を開いて設定していましたが、それだと手間がかかるので最近見つけた簡易的な切り替え方法を何度か試していました。

簡易的にサウンドデバイスを切り替えるには通知領域のスピーカーアイコンをクリックすると出てくるメニューを使います。

ここでは「再生デバイスを選択します」と表示されています。ここで切り替えると「既定のデバイス」は切り替わるのですが、「既定の通信デバイス」は替わらずそのままになります。それで設定が別々になってしまったというわけです。

Viber の出力設定が「デフォルトの端末」となっている場合には通話の音声は「既定の通信デバイス」から出力されることになるようです。通話用にヘッドホンを接続していたのは「既定のデバイス」の方だったのですが、「既定の通信デバイス」が別のデバイスに設定されていると相手の声はヘッドホンから聞こえないということになってしまいます。

今回は Viber の設定で解決しましたが、そもそも OS 側のサウンドの設定で「既定のデバイス」と「既定の通信デバイス」を同じデバイスに設定しておけばこういうややこしい問題は起きないのです。

通信デバイスを別々に指定できるということも使い方によっては必要になることもあるかもしれないので、こういう機能が存在することは悪くはないと思いますが、ちょっとわかりづらいですね。

確認はしてませんが、たぶん LINE や Skype での通話でも同じような問題が起きると思います。そういう時はとりあえずサウンドデバイスの設定を確認してみてください。

パソコンって、いつになったら使いやすくなるんだろうねぇ……

ちなみに、Viber の通話の音質はかなり良いと感じました。LINE や Skype よりも綺麗に聞こえると思います。途切れることもほとんどありませんでした。

2018/03/23

Seesaa ブログでスマホでも強制的にパソコン用ページを表示させる

Seesaa のブログはスマホからアクセスすると自動的にスマートフォン専用のページに移動する仕様になっています。

しかし、私のブログ「アポロ漫録」では縦書き表示に最適化していてスマートフォン専用ページに移動するのは都合が悪いので、コンテンツをカスタマイズして JavaScript で強制的にパソコン用のページに移動するようにしてありました。

ところが、今までのスクリプトでは移動がうまくいかずに無限にリロードを繰り返してしまう不具合がありました。一度うまく移動できれば二度目からは不具合の発生頻度は減るので問題ないかと思っていたのですが、何度かテストしてみると思っていた以上に発生頻度が高いので対処が必要だと思われました。

今までのスクリプトは以下のようになっていました。

document.cookie = 'force_pc=1; max-age=157680000; path=/';
document.cookie = 'force_sp=0; max-age=157680000; path=/';
if(navigator.cookieEnabled){
    location.reload();
}

最初の 2 行でブラウザの Cookie に PC 表示のフラグをオン、スマホ表示のフラグをオフにする書き込みをしています。その後、ブラウザの Cookie が有効ならページを再読み込み、無効なら何もせずに終了していました。これだけのシンプルなスクリプトですが、理論上は問題なく動作して PC 表示が強制されるはずです。

いろいろと試行錯誤してみたのですが、どうやらページを再読み込みする際に端末に保存されているキャッシュを表示してしまうのが原因だったようです。以下のように location.reload() に true という引数を追加することでデータをサーバーから読み込むことができるようになります。

document.cookie = 'force_pc=1; max-age=157680000; path=/';
document.cookie = 'force_sp=0; max-age=157680000; path=/';
if(navigator.cookieEnabled){
    location.reload(true);
}

こうすることで安定してほぼ確実にパソコン用のページが表示されるようになりました。

2018/02/26

ポイント生活

今日は貯まったポイントだけでお買い物してきました。

ツタヤで旧作 DVD を借りて 108 円。貯まっていた T ポイントだけでお支払い。まあ、これはたまたまでしたが、今日の計画の本題はここから↓

au の携帯を使っていると毎月の利用額に応じて au WALLET ポイントというのが貯まります。私はほとんど携帯を使わないので少しずつしか貯まらないのですが、au ショップに行くと利用できるウェルカムガチャでも地道に貯めていました。

ちなみにウェルカムガチャは 1 回 5 ~ 3000 ポイントが当たるのですが、ほとんどが 5 ポイントか 10 ポイントです。1 か月で 3 回まで利用できるので少なく見積もっても 20 ポイントくらいが平均でしょうか。携帯を 2 台持っているので 1 か月に 40 ポイントくらい、1 年で 480 円くらいの計算かな。たまに 10 ポイント以上の当たりもあるので運が良ければ 1000 ポイントくらいか。1 度だけ 3000 ポイント当たったこともあります。

この au WALLET ポイントを 2 台分まとめると 2300 ポイントと少し。このポイントは 1 ポイント 1 円で au WALLET プリペイドカードにチャージすることができます。ポイントからのチャージは 100 円単位なので 2300 円分をチャージしました。

プリペイドカードはクレジットカードの Master カードや VISA カードと同じように使えるので多くのお店で使うことができます。

このプリペイドカードを使って近所のスーパーやドラッグストアでお買い物してきました。カードを出してサインをするだけ。サインすら必要ないお店もあります。超簡単です。

大した金額じゃありませんが、ポイントだけでも地道に貯めていれば十分お買い物ができてしまうくらいは貯まりますね。