code up

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Corrupted Motion Jpeg

Panasonic BL-C131というネットワークカメラで飼ってるペットの様子を外から確認できるようにしているのだが、新調したネットブック(Let's Note CF-J10GEDDP)ではうまく動画(MJPEG)の再生ができなかった。

2012/05/30追記:プログラムかデータベースのどちらの更新かは分かりませんが、今日見たところ治っていた!

なんだかんだで原因突き止めるまで結構時間がかかったが、原因はやっぱり当然のヤツだった。

スクリーンショットはモノクロになっているが、もっとカラフル(主に緑?)にギザギザ、ギラギラ、チカチカしてた(本当は暗闇に少し明かりが見えるだけの画像のはず)。

ESET Antivirus 5

このうまく映らないPCだけESET Antivirusのバージョン5を入れている。ライセンスは3年分×2本持っており、以前のネットブックや他のデスクトップPCではバージョン4を使っていた。

なぜかバージョン5にWebアクセスを保護させるとMotion JPEGをストリームで見る際、ビットだかバイトを壊してしまうようだ。

タスクトレイから"保護を一時的に無効にする"は試していたのだが、それでは不十分であった。URLアドレス管理で許可してみたりと、いろいろパラメータを変えてみたが結局Webアクセス保護の設定にある"HTTPのチェックを有効にする"をはずさないと直らなかった。

たまに海外サイト行くと警告をブロックしてくれるから、はずしたくないのよね。結局ここはチェックしたまま、ネットワークカメラのMJPEGを諦め、普通のJPGでペットの様子は確認することにした。

調べるのに結構時間かかった

そんなに没頭して調べていたわけじゃないが、日数にして4日間くらいかかった。その経緯をダイジェストで。

  • 最初Firefoxでの不具合だったのでChromeで確認 → Chromeもダメ
  • IEは専用のActiveXコンポーネント使うらしく、表示すらできなかった
  • VLCのネットワークストリーム → Firefoxと同じでギラギラ
  • Media Player Classic (MPC), Windows Media Player (WMP)でURL再生 → どちらも再生されず
  • ESETで"保護を一時的に無効にする"を試す → 変化なし (ここで気づいていれば)
  • Windows Firewallを停止 → 変化なし
  • Codecが入っていなかったので入れる(Win7Codecs) → 変化なし
  • 違うコーデックを試す(K-Lite Codec Pack) → 変化なし。Win7DSFilterTweakerでMJPEGのフィルタを変えようにもデフォルト(Microsoft)から変更できず。原因不明
  • セーフモードで起動 → 見えた!
  • じゃぁビデオドライバかな?ということでいくつか古いドライバをパナソニックから入手しインストール。インテルからダウンロードのはうまく入らなかった → いずれもNG
  • 画像を名前をつけて保存したもの(いつまでもダウンロード続けるので途中の物を別名にコピーする)をバイナリエディタで編集して、HTTPの部分を取り除いてJPGに整形し、画像ビューアで確認 → このPCでダウンロードしたものは壊れていて、他のPCでダウンロードしたものは壊れていなかった。つまり画像ファイルとして確認しても表示されていた状態と同じだった。同じサーバー相手なのにっ
  • つまりはネットワークが原因だということは分かったのだが、無線を有線に切り替えてみたり、ドライバの設定を変えてみたり再インストールしたり、違うアクセスポイントから試してみたり → すべてダメ!
  • セーフモードで起動したことに命運を託しスタートアップとサービスをひとつずつ停止させながら確認 → 数回Windowsが起動できなくなるトラブルをなんとか乗り越えESET Serviceが犯人であることを発見

原因分かってすっきりっ!

関連記事
タグ:LetsNote ESET
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。