ラベル 解決した問題 の投稿を表示しています。 すべての投稿を表示
ラベル 解決した問題 の投稿を表示しています。 すべての投稿を表示

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);
}

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

2017/12/30

パソコンの電池の交換

久々に Windows 95 のデスクトップパソコンの電源を入れたらエラーが出て OS が起動しない。エラーを無視して OS を起動することはできたけど時計が毎回リセットされてしまう。どうやら CMOS とかいう内蔵メモリのバッテリーが切れたのだと思われる。

バッテリーはコイン型の電池で CR2032 というものが使用されているようだ。通常は 5 年くらい持つらしい。ずっと前に 1 度交換したような記憶もある(よく覚えてない)が、たぶん 5 年以上は確実に経っている。なんせ 20 年前に買ったパソコンで電池を変えた覚えは 1 度だけなんだから、そろそろ切れるのも当然かもしれない。

電池は 100 円ショップで売っているのを見かけたので買ってきた。2 個セットで 108 円だからかなりのお買い得。とはいえ、安かろう悪かろうで不具合も出ることは覚悟しておいた方がいいかもしれない。5 年も持つとは思わない方がいいだろう。2,3 年経ってから思い出した時にもう一度交換しようと思う。

電池の交換は上手くいった。最初に BIOS の設定画面を出して時刻を設定した。それ以外の設定がどうなっていたかは全く覚えていなかったのでほぼそのままで OS を起動してみたところ無事に起動。これでしばらくはこのパソコンも使い続けられる。

20 年使ったパソコン。あと何年使うことになるのやら……。

電池は 2 個あるので、ついでに Windows XP のデスクトップパソコンの方も交換しておいた。こちらはつい先日 HDD が壊れてしまって、そろそろヤバイ。壊れた HDD には Windows 7 をインストールしてあったのだが、幸いにも重要なデータは入っていなかったのでダメージは最小限に抑えられた。XP が入っている HDD もいつ壊れるかわからないので、その前に何とかしておかなければならない。そっちには結構重要なデータが入ってたりするのだ。

確か、この XP のパソコンの方の電池は今まで一度も変えたことはなかったと思う。電池が入っていることすら考えもしなかった。新しいパソコンは電池なんか入ってないだろうとすら思いこんでいたが、よく見たらちゃんと電池が入ってた。

パソコンの中の電池って、意外と盲点だよね。電池が切れる前にたいていは HDD が壊れたり何かで新しいパソコンに買い替えたりしちゃったりするからね。

10 年、20 年と使う人も世の中に入るのよ。

そんな古いパソコン何に使ってるかって? それは……

2015/06/12

Skype のオンラインステータスをウェブサイトに表示する方法

ログイン状態
先月くらいからついに Skype のオンラインステータス(ログイン状態)を表示するボタン(ウェブサイトに設置する物、公式版)が完全に使えなくなってしまったようです。ちょうど今から 2 年前にその件について記事を書いた時点で既に予兆はあったのですが、2 年の猶予期間を経て廃止に至ったという感じでしょうか。

使えなくなったものを無理して使おうとする必要もないとは思うのですが、やっぱりオンラインやオフラインが分かった方が連絡もしやすいとも思うんですよね。

そこで、以前とほぼ同じものを独自に作って置き換えてみました。ただし、以前のように自動的に Skype のステータスと連動するものではなく、手動での切り替えになります。

実は原理的には非常に単純(原始的)で、Skype を起動してオンラインになったら FTP でオンライン表示の画像をアップロードします。退席するときは Skype を一時退席に切り替えてから FTP で一時退席表示の画像をアップロードします。オフラインや取り込み中も同様です。

ただそれだけのことなのですが、実際にそれを毎回手動でやるとなると幾つかの工程があるので面倒な作業になってしまいます。そこで、それらの作業を可能な限り自動化させることで日常的に使えるレベルにすることができました。

まずは 4 種のステータスに合わせて 4 種類の画像を用意します。これらに別々の名前を付けてパソコンに保存しておきます。
FTP で画像をアップロードするバッチファイルとコマンドファイルを作成します。この時、4 種類別々に作りますが、アップロードするファイル名はすべて同じ(以下の例では“status.png”)にします。
(バッチファイルの内容はご自分の環境に合わせて書き換えてください。以下はあくまで一例なのでそのままでは使えません。)

例:
バッチファイル(online.bat)の内容
FTP -s:online.txt
exit

コマンドファイル(online.txt)の内容
open ftp.mysite.ne.jp //接続先サーバ
apollo //ユーザ名
abcd1234 //パスワード
cd skype //リモートのディレクトリの移動
lcd C:\Users\apollo\Documents\www\apollo\skype //ローカルのディレクトリ
bin //binaryモードに
put online.png status.png //online.png の名前を status.png に変えてアップロード
bye //終了
(「//」以下はコメントです。削除してから使用してください。)

アップロードした画像を表示する HTML タグと、表示を切り替えるスクリプトをウェブサイトに埋め込みます。(詳細は過去記事を参照。)


<a href="skype:YourSkypeName?chat"><img src="http://www.mysite.ne.jp/skype/status.png" style="border: none;" width="114" height="20" alt="ログイン状態" id="mystatus"></a>
<script type="text/javascript">
var nowdate = new Date();
var stamp = nowdate.getTime();
document.getElementById('mystatus').src="http://www.mysite.ne.jp/skype/status.png?"+stamp;
</script>

あとは、Skype を起動したらステータスに合わせてバッチファイルを起動するだけです。一瞬でアップロードが完了し、ウェブサイト上のステータス表示も切り替わります。

バッチファイルはショートカットを作り、アイコンを Skype のプログラムから読み込んで変更しておくと見た目で分かりやすくて便利です。ショートカットの設定で最小化状態で起動するようにしておけばウィンドウは表示されません。

このショートカットを一つのフォルダにまとめておき、タスクバーのツールバーとして登録しておくとさらに使いやすくなります。

これでタスクバーのアイコンをワンクリックするだけでいつでもログイン状態表示を切り替えられます。

パソコンって便利!

2013/07/16

グラボ用のドライバ(AMD Catalyst)を13.6にアップデート

グラボ用のドライバ(AMD Catalyst)をバージョン 12.4 から 13.6 にアップデートしてみました。

バージョン 13.1 の時には不安定だったのでアップデートせずに 12.4 に戻して使っていたのですが、今回の 13.6 は今のところ、特に致命的な不具合はなさそうです。

アップデートによる改善点として挙げられている項目はいずれも私には何のメリットもなさそうでしたが、予期せぬところで改善されていたところもありました。

今まではウェブブラウザの Google Chrome で Google+ や Facebook などの特定のサイトにおいて、リンクなどのマウスカーソルによるイベントが発生する箇所をポイントしたりすると一時的に画面がブラックアウトしてしまうという不具合が出ていました。

デュアルディスプレイで使用しているサブのディスプレイの方でのみ起こる現象なのですが、原因を特定することもできず、かなり頻発する不具合でストレスも大きく非常に困っていました。

この不具合が、13.6 にアップデートしたことで改善されていました。ただし、ブラックアウトすることはなくなりましたが、不具合の出ていたサイトを表示すると CUP にはかなり負担がかかっているようで、その点は以前と変わりありません。

あとは Second Life がまともに動くことと、Ustream のライブ配信に支障がなければよいのですが、それらは今夜あたりに検証したいと思います。

2013/06/14

HTML5 で UTF-8 を使用する場合の注意事項

今までホームページの文字コードは主に Shift_JIS を使ってきたのですが、HTML5 への切り替えに当たり、推奨されている UTF-8 にした方がいいのか迷っていました。

しかし、古いコンピューターで表示したときに文字化けの可能性があることを考慮すると、今まで通り Shift_JIS のままの方が無難ではないかと思い、とりあえず、トップページは Shift_JIS のままにしておきました。

先に HTML5 で作成した Tarot FILES #100 以降の記事は実験的な試みもあったので当初から UTF-8 を使用していました。いくつかのブラウザやスマートフォンでの表示も確認しましたが、特に問題はないようでした。

ところが、一つだけ問題があることに気づいてしまいました。

HTML5 では文字コードの指定に、ヘッダーのメタタグで以下のように指定することができます。
<meta charset="UTF-8">

この書式を認識できないブラウザが存在し、その場合にはデフォルトの文字コードで表示されることになります。たいていは Shift_JIS としてエンコードを試みることになるかと思います。その場合にはかなりの頻度で文字化けすることになるでしょう。
(サーバーの設定で対処済みの場合もあります。)

実際に、Lynx というテキストブラウザで確認してみたところ、文字化けしてしまいました。
そこで、文字コードの指定を旧来の
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
に戻してみたところ、Lynx でも文字化けせずに表示することができました。

まだまだ文字化けの可能性が残されている以上は、旧来の書式を使い続けるのが無難といえそうです。

ちなみに、旧来の書式であっても HTML5 の仕様としては問題ないはずです。

ドキュメントタイプが最新の HTML5 であっても、文字コードさえ適切に認識できればたいていのブラウザで問題なく表示は可能です。先の Lynx でも、IE4 でも Netscape Communicator 4.7 でも問題はありません。むしろ、記述が単純化された分、認識率が高まったといってもいいくらいです。

ちょっと気になるのは、推奨されている UTF-8 以外の文字コードを使用した場合に何か問題がおきるかどうかということですね。Shift_JIS でも問題がないのなら、無理をして全てのページを UTF-8 に書き換える必要もないと思うのですが。

詳しい人がいたら教えてください。

2013/06/13

オンラインステータスを表示する Skype ボタン

(追記: 2015年6月12日)以下の方法は完全に使えなくなってしまったので、新たにSkype のオンラインステータスをウェブサイトに表示する方法という記事で解決方法を書きました。


Skype のオンラインステータスをウェブサイトに表示するボタンがあるのですが、現在はサポート対象外となっていて、公式サイトでの入手はできなくなっています。
ログイン状態
この Skype ボタンは現在でも使用可能で、必要ならば以下のようなタグを自分のサイトに埋め込みます。
<script type="text/javascript" src="http://download.skype.com/share/skypebuttons/js/skypeCheck.js"></script>
<a href="skype:YourSkypeName?chat"><img src="http://mystatus.skype.com/smallclassic/YourSkypeName" style="border: none;" width="114" height="20" alt="ログイン状態"></a>
使用する場合は "YourSkypeName" の部分を自分の Skype 名に書き換えてください。

最近までずっとこの方法で使ってきたのですが、呼び出す JavaScript が重かったりするのが気になっていたので、上記の JavaScript 部分は削除してしまいました。JavaScript がなくても問題なく使えるようでした。

オンラインステータスはほぼ正確に表示されていましたが、ボタンの画像はブラウザのキャッシュから呼び出されてしまうので、2 回目以降の表示では正確なオンラインステータスが表示されないという問題が残されていました。

ブラウザの更新ボタンを押せばオンラインステータスの画像も最新のものに入れ替わるのですが、それを訪問者に強制するわけにもいかないので、できればサイト側で何とか対処したいところです。

そこで、対応策をあれこれと調べてみた結果、埋め込むタグを以下のようにすることで解決できました。
<a href="skype:YourSkypeName?chat"><img src="http://mystatus.skype.com/smallclassic/YourSkypeName" style="border: none;" width="114" height="20" alt="ログイン状態" id="mystatus"></a>
<script type="text/javascript">

var nowdate = new Date();
var stamp = nowdate.getTime();
document.getElementById('mystatus').src="http://mystatus.skype.com/smallclassic/Apollo-Tarot-Divination?"+stamp;
</script>
JavaScript で後から画像を入れ替えているのですが、その際に画像の URL を変更しています。

オンラインステータスは正確に表示されるようになりましたが、この機能はすでにサポート対象外となっているので、いつかは完全に使えなくなる日が来てしまうかもしれません。

とりあえず、使えるうちは使わせてもらいます。

こんなに便利な機能なのに、何でサポートが終了しちゃったんでしょうね?

現在 Skype で公式に配布されているボタンはオンラインステータスの表示はできないシンプルなものだけとなっています。

2013/02/27

FMLECmd 配信の盲点

Ustream のライブ配信には Adobe Flash Media Live Encoder 3.1 を使っているのですが、グラボを変えた影響か、ここのところなぜか配信が重くなって困っていました。

どうも原因は Flash Media Live Encoder の CPU 占有率が高いことらしいので、設定をいろいろいじって負荷をできるだけ下げてみたのですが、あまり効果はありませんでした。

ところが、意外な盲点があったようで、配信方法を変えることで負荷を軽減することができました。

配信時は FMLECmd.exe というツールを使っていたのですが、このツールを使わずに、通常のウィンドウで Flash Media Live Encoder を使用することで、なぜか負荷が低くなりました。

本来は負荷を軽減するのが目的で FMLECmd.exe を使うものだと思っていたのですが、どういうわけか負荷が高くなっていました。理由はよくわかりませんが、もしかしたら、無駄な機能を省くことで効率的に CPU パワーを使うので、必然的に CPU を占有するようになり、他のアプリケーションにパワーが回らなくなってしまって、パソコン全体の動作としては重くなってしまっていたのかもしれません。特に、配信時に使用していた Second Life viewer は CPU パワーを多く必要とするアプリケーションなので、FMLECmd.exe を使うと動作が重くなっていたということだと思います。

FMLECmd.exe を使わずに通常のウィンドウで Flash Media Live Encoder を使うと、他のアプリケーションと CPU パワーを均等に分けあうために、Second Life viewer の動作も軽くなったのだと推測されます。

2013/01/30

Hotmailのエイリアスをメールソフトで使えるようにする方法

Hotmail(Outlook.com)で作成したエイリアスのメールアドレスは、以前はメールソフト(Windows Live メール等)から送信する場合でも使用できたのですが、現在はウェブブラウザで Hotmail を利用している時にしか使えなくなってしまいました。

ただし、ある設定をすることでメールソフトでもエイリアスを使用することができるようになることが判明しました。

まず、Hotmail のオプションを開き、別のアカウントからの電子メールの送受信という項目を開きます。そこで「送信元のアカウントの追加」でエイリアスのメールアドレスを追加します。

いったん受信トレイに戻って、届いたメールを開いて電子メールアドレスの確認作業を済ませます。

 もう一度別のアカウントからの電子メールの送受信に戻って追加したエイリアスのメールアドレスを「既定に設定」に変更します。

これでメールソフトからの送信でもエイリアスが使用できるようになります。ただし、使用できるのは既定の送信元アドレスとして設定されたメールアドレス1つだけのようです。

2013/01/17

Firefoxの延長サポート版(ESR)をインストールしてみました

Firefox がバージョン 18 にアップデートされてから動作が異常に重くなって困っていました。そこで、通常版とは異なる「延長サポート版(ESR)」をインストールしてみました。

ESR とは、企業、教育機関、公共機関など、一括導入のため延長サポートを必要としている法人向けに提供されている Firefox で、旧バージョンのセキュリティー問題を定期的にメンテナンスしてリリースされている物らしいです。そのため、最新機能などは含まれていませんが、動作の安定性はある程度保障されているということだと思います。

現時点での ESR の最新バージョンは 17.0.2 です。通常版が 18 になったばかりなので機能的には大差ないと思います。

個人ユーザー向けではないとはいえ、利用には特に制限はないようです。むしろ、最新の機能は必要としない一般の個人ユーザーこそ ESR を使った方がいいと思います。自動更新で勝手にアップデートされて動作がおかしくなったとかそういうことで悩むことも少なくなるはずです。

通常版を削除してから ESR をインストールしてみたところ、以前のような軽い動作に戻りました。

これでもうしばらくはパソコンを買い替えることもなく Firefox を使い続けることができそうです。

2012/09/07

Firefox 15 の禁則処理を修正

最近になって気づいたことなのですが、Firefox で日本語の記事などを見ていると句読点が行の先頭に表示されることがあります。いわゆる「禁則処理」の不具合のようです。

以前はそういうことはなかったような気がするので、最新のバージョンになってからの問題ではないかと思います。現在私が使用している Firefox のバージョンは 15.0 です。

少し調べてみると、問題の発生している記事のスタイルシートに
word-break: break-all;
という記述がある場合に禁則処理が無効化されてしまっているようでした。

この「word-break」というスタイルシートは文の改行の仕方を指定するもので、もともと Internet Explorer 独自の物だったようなのですが、最近になって Firefox もこれを採用したらしいのです。そのため、以前の Firefox では無効化されることを想定してこのスタイルシートが指定されていたと考えられます。

サイト制作者の想定としては IE のみにこのスタイルシートを指定したつもりが、意図せず Firefox でも有効化されてしまい、禁則処理のされない読みづらい記事が発生してしまったということだと思います。おそらく、IE の場合はこのスタイルシートが指定されていても禁則処理には影響がなかったのではないでしょうか。

さて、そこで本題ですが、この問題は将来的に修正されるのかどうかわかりませんが、一時的な解決方法としてユーザースタイルシートを使って強制的に「word-break」の指定を変更することにしました。

Firefox のプロファイルフォルダにある userContent.css というテキストファイル(なければ自分で作る)に以下の記述を追加しておきました。
*{word-break: normal !important;}
これで、Firefox で表示するページ内のすべての要素において「word-break」が初期設定に戻るので、以前の Firefox と同様の表示に戻り、禁則処理もほぼ正常になるかと思います。

いずれにしても Firefox の日本語表示能力は IE に比べると貧弱すぎて悲しくなりますけどねぇ。IE の徹底した日本語対応は素晴らしいと思います。

2011/02/15

Second Life ビューワ2で音声がとぎれとぎれになってしまう原因が一つ判明した。

Second Life ビューワ2で音声がとぎれとぎれになってしまう原因が一つ判明した。

あくまで私個人の場合だけど、2つ接続しているマイクのうち、USB接続の方が認識されてしまうと音声が途切れる。

ビューワの設定で入力機器をUSB接続ではないマイク(PCに内蔵の音源チップに接続したマイク)を選択しておいても、その設定が反映されていなくて、デフォルトの入力機器(この場合はUSB接続のマイク)が認識されてしまうことがあるらしい。

いったん他のシムへ移動して、それから戻ってくると直る(設定通りのマイクが認識される)ことがあるらしい。

なお、マイクがUSB接続であることが必ずしも音声が途切れる原因ではない。
たまたま私のパソコンに接続しているマイクとの相性が悪いだけ。

このような相性の悪いマイクを使わなければならない場合の解決法についてはまだわからない。