2011年08月26日

VirtualDubとAviSynthでAVIを開く際のエラー use crop?

 Aegisubという、字幕作成アプリケーションを使って動画用の字幕を作り、これを動画ファイルに焼き付ける際に、VirtualDubを使っていました。
 当初、VirtualDubで直接AVIファイルが開けず、以下のようなエラーが出ました。

20110826VirtualDub.jpg

Couldn't locate a decompressor for 'mp42' (Microsoft High-Speed MPEG-4 V2)
VirtualDub requires a Video for Windows (VFW) compatible codec to decompress video. DirectShow codecs, such as those used by Windows Media Player, are not suitable.

 少しググってみたところ、AviSynthを使って開くことができるということが分かり、とりあえずこの方法で上手くいきました。
 AviSynthをインストールした上で、avsファイルというスクリプトファイルを作ります(要するにテキスト)。このスクリプトは本当は奥が深いらしいですが、とりあえず開ければ良かったので、

DirectshowSource("pathToAvi.avi")

 というのだけ書いて、avsファイルをVirtualDubで開くことで上手くいきました。

 ところが幾つかの動画で作業していて、この方法でも別のエラーが発生するようになりました。

20110826VirtualDub_2.jpg

Avisynth open failure:
Avisynth error: YUY2 images for output must have a width divisible by 4 (use crop)!

 幅サイズが不正で怒られているようです。
 cropしろ、と言っているので、AviSynthのスクリプトでcropしようと思ったのですが、どうも勝手が分からず、もっとサクッと解決する方法はないのか、と探していたところ、そもそもAVIファイルが開けなかった件に関して、以下のようなページを見つけました。

MP42 Decompressor for VirtualDub - Video Codecs - MovieCodec.com

 この中で、以下のサイトから"nAVI video codec - vids:nAVI, MP4, MP42, MP43 decompressors"なるものをダウンロードしてインストールしたら解決したよ、というのがあったので、とりあえず試します(この中にスパイウェアがあるとか、そんなもんないとかいう記述が上のページにあるので、自己責任でお願いします)。

All Codecs and Decompressors - DivX 5, DivX PRO, XviD, MPEG 4, Nimo Codec Pack, mpeg4, I263, mp42, mjpg, MP43, IV51, IV50, IV32, IV45, VCR1, VCR2, DIVX, YUV, VP3, VP4, YVU9, YVU12, YU422, angelpotion, ATI capture Codecs vids - avi

 "nAVI video codec - vids:nAVI, MP4, MP42, MP43 decompressors"というのは、

FileSearch - mpeg4x.zip

 にあります。
 ダウンロードして解凍すると、mpeg4xというフォルダができて、中には

mpeg4fix.inf
MPG4C32.DLL
READ THIS FIRST!.txt

 の3ファイルが入っています。mpeg4fix.infを右クリックして「インストール」で完了です。
 これでAVIファイルを直接開けるようになったのでは、と期待して、AviSynthを使わずVirtualDubに放り込んで見たところ・・・落ちました。

20110826VirtualDub_3.jpg


An out-of-bounds memory access (access violation) occurred in module 'mpg4c32'...
...writing address 03A6FDB2...
...while decompressing video frame 0 (VideoSource.cpp:2141)...
...while using input buffer at 024fa728-024ff396 (VideoSource.cpp:2140)...
...while using output buffer at 03a70080-03b1f1c3 (VideoSource.cpp:2139).

 状況が悪化しています(笑)。
 ここでふと思い立って、avsファイルを単に

AVISource("pathToAvi.avi")

 として開いてみたところ、ちゃんと開けました。

 これで解決かと思ったのですが、字幕を焼き込んで出力してみると、白黒になった上斜めにぐにょーんと歪んだ変な動画が出力されています。
 どの動画も同じ手順で保存したものなので、一体なぜこのファイルだけがうまくいかないのかよく分からないのですが、とりあえず何かコーデックが足りないのでは?と、

コーデックパック(詰め合わせ) - k本的に無料ソフト・フリーソフト

 から、

Windows Essentials Codec Pack - k本的に無料ソフト・フリーソフト

 をダウンロードしてインストールしてみるも、解決せず。

 そこで最初のエラーメッセージに立ち返って、とりあえず4で割り切れる幅にcropしてみるか、と思い、avsファイルをこんな風にしてみました。

AVISource("pathToAvi.avi")
Crop(1,0,496,360)

 これをもう一度VirtualDubで開いたところ、見事オープンは成功。いやまぁ、そのまんまなんですが・・。
 ちょっと疑心暗鬼になりながら字幕を合成し出力したファイルを開いてみると、これもちゃんと開けます。
 最後にMP4に圧縮するのですが、ビクビクしながら試したところ、これも成功。一件落着しました。

 結論としては、最初に表示されたメッセージ通りcropすれば良かったのですが、ほぼ同じ条件で複数の動画を作業していて、このファイルだけこんな展開になった理由がよく分かりません。というかAviSynthを全く理解しないまま、やっつけで使っていたのがいけないのかと思いますが・・。

 以上、あまり参考にならない迷走経緯でした。
posted by ふみこ at 15:50| ツール

2011年08月21日

特定のCSSだけが読み込まれない

 特定の外部CSSファイルだけが読み込まれない(ロードされない)という事象に遭遇しました。
 もちろん、linkタグのパスが間違っている訳ではありません。chromeのデベロッパーツールで見ると、当該cssファイルは一見読み込まれているように見えるのですが、ファイルを選択して中身を見ると、真っ白になっています。パス自体は間違っていないので、デベロッパーツールではエラーとして表示されていません。
 すべてのcssが読み込まれないならともかく、一つのcssファイルだけが読み込まれない、というのが不可解です。
 順番を変えたり1つずつ外していったりしたものの分からず、結局以下の情報で解決しました。

FirefoxでCSS, JSの読み込みエラーが発生する事がある | Javable.Jp

 .htaccessに

AddType text/css .css
AddHandler server-parsed .css
AddType text/javascript .js
AddHandler server-parsed .js

 を追加する、というものです。

 上のブログ主も書かれていますが、こう書いたからといって、特定cssファイルの読み込み失敗が解決する、というのはちょっとおかしいのですが、とにかく解消しました。他のcssファイルと何が違うのかも分かりません。強いてい言えば、一番ファイルサイズの大きいcssファイルでしたが、それが決定的とも思えません。
 ちなみに、上の記事はFireFoxについてのものらしいですが、Chromeでも発生していたので、ブラウザ依存ではないように思います。
 うーん・・・。
タグ:CSS
posted by ふみこ at 15:11| web

Lenovo G570 433449JとASUS Corei5-2410QM K53Eのスペック比較

 最近ノートパソコンの購入を検討していて、Lenovo G570 433449JまたはASUS Corei5-2410QM K53Eというところまで絞り込みました。まぁ、どちらも今売れ筋の王道なので、絞り込みも何もないのですが。
 現在はデスクトップマシンの他に、二年くらい前に買ったレノボのIdeaPad S10e 4068AHJというネットブックがあるのですが、何せネットブックですから、マシンパワー的には貧弱極まりないものです。今回は、メインのデスクトップと同期して、少なくとも同等程度に働いてもらえそうなノートパソコン、ということで考えています。
 Lenovo G570 433449Jは、ノートパソコンの売れ筋では現在多分トップではないかと思うのですが、廉価で十分な性能を持った手頃なマシン。一方、ASUS Corei5-2410QM K53Eは、売れ行きではG570には及ばないものの、これもかなり人気があるようです。Amazonだと売れ筋ナンバーワンでした(Amazon内での販売価格の問題でしょうが)。
 このG570とK53E、二つの基本スペックを比較してみると、以下のようになります。

Lenovo G570 433449JASUS Corei5-2410QM K53E-SXRED
B004TJFCD8B00521ERUG
液晶サイズ15.6 インチ15.6 インチ
CPUCore i5 2410MCore i5 2410M
2.3GHz2.3GHz(512KB)
タブレット 
SSD容量
回転数 5400 rpm
メモリ規格DDR3 PC3-10600DDR3 PC3-10600
PCカードスロット
解像度 WXGA (1366x768)WXGA (1366x768)
ワイド画面 
3D対応
HDD容量640 GB640 GB
メモリ容量4GB4GB
メモリスロット(空き)2(0)2(1)
ビデオチップIntel HD Graphics 3000Intel HD Graphics 3000
ドライブタイプ内蔵内蔵
無線LANIEEE802.11b (11Mbps)IEEE802.11b (11Mbps)
IEEE802.11g (54Mbps)IEEE802.11g (54Mbps)
IEEE802.11nIEEE802.11n
その他WebカメラWebカメラ
HDMI端子HDMI端子
テンキーテンキー
統合ソフト
ビデオメモリ1700MB
ドライブ規格DVD±R/±RW/RAM/±RDLDVD±R/±RW/RAM/±RDL
LAN10/100Mbps10/100/1000Mbps
モバイル通信機能
OSWindows 7 Home Premium 64bitWindows 7 Home Premium 64bit
駆動時間6.2 時間6.1 時間
幅x高さx奥行376.8x34.9x249.8 mm378x35x253 mm
重量2.6 kg2.6 kg
Amazon55,800円66,000円
楽天50,799円(ムラウチ)
>現在の楽天最安
52,800円(A-PRICE)
>現在の楽天最安

(※価格は2011年8月21日現在)

 ご覧の通り、ほとんどスペック的には違いがありません。機能では決定的に差を見つけることはできないかと思います。
 違いとしては、ASUS Corei5-2410QM K53Eはカラーバリエーションが豊富なこと。デザインではK53Eが上でしょう。
 一方、価格ではG570の方が実売で5,000円か6,000円安いようです。
 ですから、見た目にこだわりがない人、むしろG570のデザインの方が好きな人、パソコンはやっぱり黒!という型は、G570を選んでほぼ正解なのではないでしょうか。
 わたし自身は、以前にLenovoの製品を購入して満足だったこともあり、LenovoのG570に傾いていたのですが、ASUS K53E K53E-SXRED(パッションレッド)の見た目の可愛さにヤラれました。この見た目だけに5,000円余計に払ってもいいかな、と思っています。クチコミでの満足度が高いのにも安心させられます。
 というわけで、近く購入予定ですので、買って使ってみたらまた使用感などを書いてみます。

追記:
結局ASUS K53E-SXRED Corei5-2410QMを購入しました
posted by ふみこ at 00:28| ハード・ガジェット・家電
↓応援クリックお願いします☆
ブログランキング・にほんブログ村へ