2014年3月29日土曜日

[Windows] FirefoxでFlashがクラッシュする原因と対策

How to coexist with Adobe Flash the clasher
ATOK2013をインストールして以来、FirefoxでFlashが頻繁にクラッシュするようになりました。
ATOKの2013より古いバージョンならFlashがクラッシュすることはないのですが、Windows8に完全対応しているのが2013以降のため古いバージョンを使うわけにはいきません。
ATOK2013のテキストサービスを無効にするとクラッシュを避けられるようですが、ATOKバーが表示されなくなって不便です。その上、テキストサービスを無効ににしてもFirefoxがフリーズしてしまうことがあったためテキストサービスを有効のまま使用しています。

すぐにクラッシュするFlashと共存する方法を考えてみました。

環境は次の通りです。
・64bit版Windows7、64bit版Windows8 のどちらも
・64bit版ATOK2013
・32bit版Firefox 27.0.1

FirefoxにFlashblockという拡張機能をインストールする

Flashblockという拡張機能をインストールするとFlashコンテンツを自動でロードしなくなります。
https://addons.mozilla.org/ja/firefox/addon/flashblock/
Flashblockインストール後、Flashコンテンツはこのように表示されます。
Flashがロードされてないので不意にクラッシュされることを防ぐことが出来ます。
クリックすればFlashが再生されます。
ただしFlashを再生した後のクラッシュは防ぐことは出来ません。
Flashをブロックすることでコンテンツが正常に動作しなくなることもあります。


Youtubeの動画プレイヤーをHTML5プレイヤーに設定する

いろいろなサイトにYoutubeの動画プレイヤーが埋め込まれています。
Flashがクラッシュした後の様子を見ると、Youtubeの動画プレイヤーが表示されていたことが多いです。
Youtubeは設定を変更すると、Flashを使わずに動画を再生することが出来ます。
http://www.youtube.com/html5?hl=ja
のページから HTML5プレイヤーをリクエストする をクリックすると、Flashが使われなくります。Youtubeが原因でクラッシュすることはなくなります。


dom.ipc.plugins.hangUITimeoutSecsの設定を変える

Flashがハングアップすると、Firefoxがフリーズし操作を受け付けなくなります。
その後、警告の画面が表示されます。
この画面でプラグインを停止をクリックすればFlashがクラッシュしますが、Firefoxの操作をすることが出来るようになります。
初期設定ではハングアップしてから警告の画面が表示されるまで11秒に設定されています。
この時間設定を小さくすればフリーズしている時間が短くなります。
設定方法は、
Firefoxのアドレスバーに about:config と入力する
細心の注意を払って使用する をクリックする
検索に hangUITimeoutSecs と入力する
設定名から dom.ipc.plugins.hangUITimeoutSecs を探し、値を11より小さい数字に設定する
下の画像は3秒に設定したものです。
Flashがハングアップしてから短時間で停止することが出来るので無駄に待たされる時間が少なくなりました。


ATOK2013を使うのをやめる

Microsoft IMEならFirefoxのFlashが頻繁にクラッシュすることはありません。


Firefoxを使うのをやめる

ATOK2013をインストールした環境でも、Internet Explorerなど他のブラウザーはFlashが頻繁にクラッシュすることはありません。


以上がFlashのクラッシュを少なくするアイデアでした。

おまけ・謎のイベントログ

イベントビューアーを見ると、Flashがクラッシュしたタイミングでエラーが記録されています。


このCLSIDをインターネットで検索するとFlashによるものという主張を見かけます。
だとしたらFlashはユーザーが気付かないうちにアクセス許可の無い動作をしようとして失敗しハングアップしていることになします。
一体何をしようとしてるのでしょうね?

以上、参考になれば幸いです。

2014年3月22日土曜日

[JavaScript] XMLコンテンツをWebに表示する

Try to show the XML Web content with JavaScript

今回作るアプリケーション

XMLコンテンツJavaScriptを使ってブラウザーに表示させるブラウザーアプリを作ってみました。
JavaScriptネタはいろいろなサイトで紹介されていて出尽くしてる気がしますが一つくらい自分で作ってみようと思い至りました。

開発環境は次の通りです。
・Windows8 64bit + Internet Explorer 10
・Windows7 32bit + Internet Explorer 11
※Firefoxでは動作しませんでした。

JavaScriptでWebコンテンツを利用する上での問題点

仕様によりJavaScriptで扱えるWebコンテンツは制限があります。
Webサービスを提供するサーバーのドメイン名やプロトコル(オリジン)と、JavaScriptのコンテンツが置かれているサーバーのドメイン名が一致している場合に限ります。
クロスドメイン制限などと呼ばれるようです。
ただし、Webサービスを提供するサーバーが次のようなヘッダーを出力する場合はドメイン名が異なるサーバーからでも利用することができます。
Access-Control-Allow-Origin: *

ただし、最近は異なるオリジンにアクセスできるブラウザーもあるようです。
Internet Explorer 10/11では、ローカルドライブに保存されたhtmlファイルを実行する場合はクロスドメインの制限を受けないようで期待通りの動作をしました。
今回は、MSN産経ニュース http://sankei.jp.msn.com/rss/news/flash.xml をJavaScriptでWebに表示することにします。

ソース


拡張子がhtmlのテキストファイルに次のソースを貼り付けて保存します。今回は sample.html というファイル名で保存しました。
※文字エンコードはBOM無しUTF-8に設定して下さい。
Internet Explorerを起動して保存したファイルをドラッグ・ドロップします。
「ブロックされているコンテンツを許可」ボタンをクリックします。

画面が表示されたら「コンテンツ更新ボタン」をクリックすると

その時点のMSN産経ニュースの情報を表示します。著作権保護のため画像の一部にぼかしを入れてます。

今回のサンプルは、ローカルドライブに保存したHTMLファイルをInternet Explorerで開くことが動作条件なので実用性はありません。

これを応用して、ザ・数唱 / Digit Span PLAY のWebページの表示言語を切替えるのに使ってみました。
http://www.fujiu.jp/AndroidApp/app010_digitspan.shtml

Androidアプリ ザ・数唱 / Digit span PLAY を公開しました。

関連ブログ

[JavaScript] テキストボックスやボタンの幅を変えるアニメーション
オープンストリーム・Biz/Browserでアプリ開発

※画像を作成するに当たり 矢印のフリーイラスト【素材っち】 http://sozaizchi.com/sozai/line/yajirushi/ の素材を使用しました。

以上、参考になれば幸いです。

2014年3月18日火曜日

[Application] ザ・数唱 / Digit span PLAY を公開しました

Androidアプリケーション ザ・数唱 / Digit span PLAY を公開しました。
ザ・数唱は短期記憶力が勝負の数字記憶ゲームです。
記憶力に自身がありますか?
メモをとらなくても聴いた内容を覚えられますか?
ザ・数唱の読み上げられた数字を記憶して答えるゲームです。
ワーキングメモリーと呼ばれる短期記憶の能力が高い人ほど沢山の数字を覚えられます。
メモをとらず記憶力だけでチャレンジしてください。
ナビゲーターは初音ミク(日本語、英語)、洛天依(中国語)、SeeU(韓国語)です。

Android2.3以上対応、HVGA以上の解像度推奨、縦画面専用
価格は無料

ザ・数唱 / Digit span PLAY はGoogle Playから無料でダウンロードできます。
※ダウンロード前に エンドユーザーライセンス契約(EULA)プライバシーポリシー を必ずお読みください。
https://play.google.com/store/apps/details?id=jjp.fujiu.digitspan

ザ・数唱 / Digit span PLAY の詳細はこちらからご覧いただけます。
http://www.fujiu.jp/AndroidApp/app010_digitspan.shtml

Digit span PLAY is the game.
You should input the numbers that the navigator read out.
Make your working memory excel.
Don't make memos.
Navigators :
HATSUNE MIKU (English, Japanese)
LUO TIANYI (Chinese)
SeeU (Korean)

數字跨度 (Digit span PLAY) 是游戏。
你应该输入的数字,导航器读出。
别拿备忘录。
向导 :
洛天依 (中文)
初音未来 (日语、英语)
SeeU (韩语)

수반복 (Digit span PLAY) 은 게임이다
당신은 네비게이터가 읽어 해당 입력 번호를해야합니다
메모를 작성하지 마십시오
안내인 :
시유 (한국어)
하츠네 미쿠 (일본어, 영어)
루오 티엔 (중국어)

使用したMMDモデル
Lat式 初音ミク、Tda式 初音ミク、ままま式 SeeU、ケミリア式 洛天依
Copyright (C) CRYPTON FUTURE MEDIA, INC. All Rights Reserved.
Copyrignt (C) SBSARTECH. All rights reserved.
Copyright (C) 上海禾念信息科技有限公司 All rights reserved.

2014年3月15日土曜日

[CUBASE] マキシマイザーで音が小さくなる

Does the Maximizer reduce the sound?
CUBASE7はミキサーがミックスコンソールに刷新され、チャンネルストリップとしてダイナミクス系エフェクトが気軽に使えるようになりました。
チャンネルストリップはプラグインのダイナミクス系エフェクトに比べると省略されたパラメーターもありますが、レイテンシーが小さいのでエフェクトを掛けたまま録音しやすくなりました。
中でもマキシマイザー(Maximizer)はOutputで指定した出力を超えないように音量を大きくすることができるので便利です。
ところがMaximizerを使うと音が小さくなることに気がつきました。

このブログを書いている時点の環境は次の通りです。
・Windows8 (64bit)
・CUBASE7.5.10 (64bit)

チャンネルストリップのMaximizerを
・Optimize = 100.0%
・Output = 0.0dB
・Mix = 100.0%
という条件で使うと上限が-0.9dBに抑えられることがありました。
実際に上の条件下でTestGeneratorで0dBのサンプルを再生してみたスクリーンショットです。チャンネル設定の一番右のメーターピークレベルは-0.9dBを表示しています。
メーターの動きを観察すると0dBで制限した後-0.9dBに音量を揃えるようです。

MaximizerのOutputを0.0dBにすると上限が-3.0dBでされる音源もありました。0.0dBと-3.0dBを比べると音が小ささがはっきり体感できる音量差です。
この場合はMaximizerのOutputを+3.0dBにすると上限が0.0dBで出力されます。

Standart Limitterも同様でした。
・Input = 24.0dB
・Output = 0.0dB
に設定すると-0.9dBが上限にレベル調整されるようです。

プラグインのMaximizerも同様です。
プラグインの画面では0dBで出力しているように見えますが、メーターピークレベルの表示は-0.9dBです。

Maximizerもリミッターも「Output」を0dBに設定すると0dBを上限にレベル制限するものと解釈していたのですが、そうではないようです。
マキシマイザーやリミッターで音量を揃えるときは、メーターピークレベルをよく見て調整する必要がある、という出来事でした。


以上、参考になれば幸いです。

2014年3月8日土曜日

[Windows8] Paragon Hard Disk Manager

Paragon Hard Disk Manager 12 Professional
Paragon Hard Disk Manager 12 ProfessionalといWindows用バックアップソフトを買いました。

なぜ買ったのか

Windows8はボリュームシャドウコピーからファイルを復元する「以前のバージョン」がなくなってしまい、ファイル単位の復元が簡単にできなくなってしまったのでバックアップ方法を見直すことにしました。
そもそもWindows 8には ファイル履歴Windows7のファイルの回復 といったバックアップ・復元のためのツールが付属しています。
実際に使ってみると、「ファイル履歴」はファイル単位のバックアップには便利ですがシステム全体のバックアップには向かないようです。
「Windows7のファイルの回復」はシステム全体を数時間でバックアップできて便利です。
ですがバックアップした時とは異なるドライブに復元できないことがあったり、ファイル単位の復元に成功したことがないなどの問題があります。
※ファイル単位の復元は「ディスクの管理」画面でバックアップイメージファイルを「VHDの接続」するとローカルディスクのようにマウントできるようです。2015年2月1日追記

これらの理由からバックアップのためにWindows付属を使うことを諦め、市販のものを使う結論に至りました。

Paragon Hard Disk Manager 12は「Windows7のファイルの回復」のようにフルバックアップでき、「ファイル履歴」のファイル単位での復元も出来るため使ってみることにしました。
似たようなことが出来るフリーウェアやもっと安いソフトもありますが、Just MyShopでも販売されているこれに決めました。

実際に使ってみたので色々まとめてみました。
使用環境は次の通りです。
・Windowd8 (64bit)
・USB接続のハードディスク
・ファイルシステムは回復パーティションがFAT32、それ以外はNTFS


「機能パラメーターが正しくありません」と表示されバックアップが中断される

早速使ってみたらバックアップの途中に「機能パラメーターが正しくありません」と表示され中断してしまいます。

対策1・ホットプロセッシングの種類を「Paragon ホット プロセッシング」に変更してみる
ホットプロセッシングの種類を「マイクロソフト ボリュームシャドウコピー」から「Paragon ホット プロセッシング」に変更したらエラーが起こることなくバックアップできることがありました。
バックアップできないこともあるので他に原因があるかもしれません。

対策2・再起動してみる
原因は分かりませんが、再起動してからホットプロセッシングの種類を「マイクロソフト ボリュームシャドウコピー」に設定してみたら最後までバックアップできました。

対策3・ドライブのエラーチェック それでもエラーが発生する場合はドライブのエラーチェックをしエラーがあれば修正するするといいようです。


RMB2.0 for HDM12Pによるリカバリーメディアの作成に失敗する

USBメモリーにリカバリーメディアを作成しておくとファイル破損などの理由でPCが起動しなくなった時に、リカバリーメディアから起動しバックアップした時点に復元することができます。
メーカーからリカバリーメディアを作成するためのRMB2.0 for HDM12PというWindowsPEベースのツールが提供されています。
ところが自分の環境ではRMB2.0 for HDM12Pでのリカバリーメディアの作成に必ず失敗します。
Paragon Hard Disk ManagerはLinuxベースのUSBリカバリーメディアを作成することもできます。
ただしLinuxベースのリカバリーメディアはuEFIに対応してないので、Linuxベースのリカバリーメディアから起動するにはPCのBIOSをレガシーモードに変更する必要がありました。

例えばThinkPadならLenovoのサポートページに記載されてるとおりの変更が必要でした。
http://support.lenovo.com/ja_JP/detail.page?DocID=HT076046
リンク先ではBIOS Settingに入る手順に「起動前プロセスでF1を押して」とありますが、uEFI環境のWindows8の場合は
チャームの電源からShiftキーを押しながら再起動
 → トラブルシューティング
  → 詳細オプション
   → uEFI ファームウェアの設定
です。
uEFI環境でWindows8が正常動作しない場合は、BIOS(CMOS)バックアップ用の電池を抜いてからPCを起動させるとBIOS Settingに入れることがあります。
手順の6と7の間に、SetupページのBootでUSB HDDにカーソルを合わせて一番上に移動するまで Shiftキーを押しながら ^キーを押します(日本語キーボードの場合)。
これでUSBリカバリーメディアから起動できました。
リカバリー完了後はBIOS設定を元に戻すことをお勧めします。(万が一、悪意のあるブートプログラムに感染しても起動させないため)

Linuxに慣れてないとわかりにくいですがマウスでの操作には対応しています。
※ サポートに問い合わせたら、Windows ADKをインストールして製品DVDを起動して「Boot Media Builder」を実行すればWindowsPEベースのリカバリーメディアが作成できるということを教えてもらえました。


バックアップ中のパーティションにアクセスできない

「Windows7のファイルの回復」のバックアップ同様、ホットプロセッシングによりPCを起動した状態でイメージをバックアップすることができます。
Paragonは「マイクロソフト ボリュームシャドウコピー」と「Paragon ホット プロセッシング」の種類のホットプロセッシングを選択できるようになっています。
どちらに設定してもCドライブ以外のバックアップ中のドライブにアクセスできなくなることがあります。
アクセスできることもあるのですが原因が分かりません。
バックアップする際のバックアップウィザード の
バックアップ設定を変更
にチェックを入れて設定を進め
ホットプロセッシングオプションの追加のオプション
常にホットプロセッシングを使用する
を選択するとできるようになるかもしれません。


差分バックアップからの復元が出来ない

フルバックアップした後に変更があった内容のみをバックアップする差分バックアップという機能があります。
差分バックアップからファイルの服下を仕様としたところ、「バックアップイメージファイルを開くことが出来ませんでした。バックアップイメージファイルではない可能性があります」と表示され復元できませんでした。
差分バックアップできるのはパーティション単位でバックアップした場合のみです
複数のパーティションをまとめて差分バックアップすると、イメージファイルから復元が出来ないようです。


Hard Disk Manager 12のライセンス

マニュアルによると、1ライセンスに付き1台のPCで使用可能とのことです。
複数のPC出使う場合は、PCの台数分だけボリュームライセンスを買えばいいようです。


Hard Disk Manager 12の価格

当時はパッケージ版はJust MyShopが最安でした。
ダウンロード版はParagonのニュースレター購読者に配信されるキャンペーンが最安でした。
どうしても安く買いたいならニュースレターを購読するとチャンスがあるかもしれません。


体験版

Paragon Hard Disk Managerの体験版が公開されてますが、バックアップできない制限があります。
体験版ではバックアップしたい環境での動作確認はできませんでした。
ただし体験版のPDFマニュアルは製品と同じ内容なので参考になります。


まとめ

バックアップをとるときは
1. PCを再起動する
2. 毎回フルバックアップする
3. バックアップ後は復元ウィザードで復元できるか確認する
というやり方が安全だと思います。

購入早々トラブル続きですが、別のPCでは正常に動作するしメーカーのサポートとやりとりをした限り自分の環境による影響が大きいようです。
サポートを受けるときは、システム情報とログファイルを送ると動作環境に合わせた日本語のアドバイスがもらえます。
必ずしも解決するわけではありませんが、メーカーのサポートを受けられる点はフリーウェアにないアドバンテージだと思います。
フルバックアップした後に変更があった内容のみをバックアップする差分バックアップやサイクルバックアップもWindowsにはない機能です。差分バックアップやサイクルバックアップはフルバックアップに比べて短時間で完了します。
ただしバックアップに失敗したり復元できないことがあるのでバックアップ後は復元ウィザードで確認しましょう。
Windows8付属のイメージバックアップではうまく出来なかったファイル単位の復元が出来るようになったので良しとしています。
Paragon Hard Disk Managerにはファイルを消さずにパーティションサイズを変更する機能もあるのですが今の環境では不具合を起こしそうで使ってません。そういうわけでパーティションサイズ変更機能のレビューはありません。

関連ブログ
ハードディスクを処分する


以上、参考になれば幸いです。

2014年3月4日火曜日

[Application] Wi-Fi sync Screen v1.04公開

Androidアプリケーション Wi-Fi sync Screen v1.04 を公開しました。
"Wi-Fi sync Screen"は画面のオン/オフに連動してWi-Fiの接続を切り替えるアプリケーションです。
Wi-Fiスリープを解除した端末のバッテリーを長持ちさせるのに役立ちます。
Android端末をWi-Fi接続すると再起動してしまうAirStationなどをお使いの方におすすめです。
Wi-Fi sync Screenの詳細はこちらをご覧下さい

v1.04での変更点

画面消灯からWi-Fiをオフにするまでの時間の設定項目追加

ダウンロードはこちら

※ダウンロード前にエンドユーザーライセンス契約(EULA)を必ずお読みください。
https://market.android.com/details?id=jp.fujiu.AndroidApp.WifiSyncScreen

◆トラブルシューティング◆

Wi-Fi Sync Screenを設定してもAirstationが再起動する(Wi-Fiルーターが誤動作する)場合は、Android端末のWi-Fiのスリープを解除してください。

Recovered from crash の表示について

Android1.6では画面を開いたとき "Recovered from crash"と表示されることがあります。
空きメモリーの不足などにより動作できなくなったWi-Fi sync Screenを回復したことを意味します。
このメッセージが表示される場合は次の対策を推奨します。
・OSを可能な限り最新版にバージョンアップする
・使用していない常駐アプリケーションを停止する

2014年3月1日土曜日

Android OS のバージョン普及率 2014年2月

The coverage by Android Version
AndroidOS1.5を搭載したHTCのスマートフォンが発売されてのが今から4年前だったと思います。
その後、シャープやソニーエリクソンがAndroid1.6搭載のスマートフォンを販売し、今に至るまでAndroid OSはバージョンアップを繰り返し、多数のAndroidスマートフォンが販売されてきました。

2014年2月の時点で、Eye元気!2をインストールしている端末のOSごとの内訳は次のようになってました。
時間の流れとともに古い端末は使われなくなり、新しい端末・新しいAndroid OSが普及しています。

今まで一人でも多くの人に使ってもらえるようにとAndroid1.6以降で動作するようにアプリを開発してきました。
容量を少しでも減らすため画像の色数を減らしたり、音声データの圧縮率を上げたるなど工夫してきました。
ですが上のグラフを見ると1.6から2.1までのOSはほとんど使われていないことが分かります。
実際新しいOSほど多機能で対応アプリが多く、使い勝手がよくなってます。

そろそろ対応するOSのバージョンを見直し、アプリ開発の手法を変えるべき時期に入ったと思う出来事でした。

ボーカロイドが音声案内するAndroidアプリを公開中です!
頭痛・肩凝り予防のストレッチを支援 Eye元気!2

以上、参考になれば幸いです。