2011-04-04 帰ってきて
エンコードサーバ表示したら、絶望した!(笑)
vlcが一般保護例外で落ちてて、エンコード出来てないであんの……
原因と対策方法は後述。
◆ [日記][プログラム] というわけで、エンコードミスの原因は……?
ts(MPEG-2 TS)を、m2p(MPEG-2 PS)に変換する際に、vlc(VideoLAN)使ってるんだけど、このアプリが保護例外で落ちていたのです。
で、原因が分からなくて、とりあえず再実行したら、すぐに原因判明。
tsファイルを変換すると、変換したサイズ分だけメモリ使用量が増えていくぅー(笑) つーか、swap行くなww
今までこんな事無かったので、かなりビビリました。
で、ほっとくとガンガンswap outしていって、最後はメモリ確保エラー。
なるほど。これが原因で落ちてたのか。納得。
…
……って
こんな怖いソフト使えるかぁぁぁぁぁーーーーーーー(ノ ゜Д゜)ノ ==== ┻--┻
いやまぁ、以前からまれーに変換できないtsファイルがあったので、そう言うのは手作業で変換していたわけですが、さすがにこれはない。swap使いまくっててメモリ使いまくるから、他のアプリがガンガン落ちる。当然録画プログラムも落ちる(はず)
これはあかん、という事で、代替案を用意。
ま、一番良いのは今までvlcで変換できなかった時に使ってた、BonTsDemuxかなぁと。ちなみに、現時点の最新版は、up1091.zipなBonTsDemux v1.10+10k7+nogui+es+fix05 バグ修正(2010年10/31(日)16:21)です。
で、これ自体はメインPCに入っていたので、早速録画サーバーに転送。
んで、早速起動……
「このアプリケーションの構成が正しくないため、アプリケーションを開始できませんでした。」
出来ない!
readme.txtを読み返すこと数分。あぁ、Microsoft Visual C++ 2005 SP1 再頒布可能パッケージ (x86)が必要なのね、忘れてた。
と言う訳で、早速DLしてインストール。これ自体はさくっと終わったので、BonTsDemuxを再度起動。
「このアプリケーションの構成が正しくないため、アプリケーションを開始できませんでした。」
またかい!!!
なんでじゃー とちょっとググってみると、BonTsDemux.exe での起動できないエラー原因ってページを発見。
バージョンor環境によっては「Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ」が必要な模様。
多分これだ!(笑)
というわけで、Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ (x86)をダウンロードしてインストール。こんどこそ……。
起動した━━━━(゜∀゜)━━━━!!
というわけで、起動チェックもできたことだし、早速スクリプトに組み込んでみる。
今までのvlcの記述はこんな感じ。
"C:\Program Files\VLC\vlc.exe" -vvv "入力ファイル" --sout "#transcode{acodec=mp2a,ab=320,canvas-aspect=1:1}:duplicate{dst=std{access=file,mux=ps,dst=出力ファイル.m2p}" vlc://quit
これで、MPEG-2 PSな出力ファイル.m2pってファイルができる(MPEG-2 PSに変換すると、音声込みでaviutlに認識させられるのです)
なので、これをBonTsDemux使うように変更。とりあえずreadme.txtを見ながらオプションを設定……
"C:\Program Files\BonTsDemux\BonTsDemux.exe" -i "入力ファイル" -o "出力ファイル" -encode MPG2PS -sound 0 -start -quit
で、こんな感じで実行する。BonTsDemuxのオプションは度重なるバージョンアップで非常に読みにくいので、TSについてまとめ - BonTsDemux mod 10k4 (modified by kt)コマンドラインからの呼び出し仕様あたりを参考にするのがいいでしょう
……どーして、Demux(m2v+wav)形式になるかなぁー(出力ファイル.m2vってファイルと、出力ファイル.wavって2つのファイルが出来る。当然、m2vファイルは音声無し)
aviutlのオプションで、-a 出力ファイル.wavを追加してもよかったんだけど、MPG2PSにならない原因が分からなくて怖い。あと、下手に音声ファイルを分離すると、音ずれが発生する可能性があるので、できればMPG2PSにしたい。
というわけで、ちょっと悩んで調べてみたわけですが……
readme.txtにも、上の方にある「TSについてまとめ」さんページにも、-encode [種類] MPG2PS MPG2PS形式で出力(cap_sts_sea.iniでの設定項目)とあります。
うーん……、でもこれじゃうまく行かないんだよなぁ……と悩んで、ふと思い立ち、cap_sts_sea.iniを開いてみた。
MPEG2PS =-f dvd -vcodec copy -aspect 16:9 -acodec libmp3lame -ar 48000 -ab 192k -vol 256 -y
MPEG2PS_EXT =mpg
……。
え、何? ギャグ?
MPG2PSではなく、MPEG2PSなんじゃないのか、これ……(笑)(Eが抜けてます)
で、GUI画面を(exeファイルを直接実行で)叩いてみたら、確かに「MPEG2PS」となっています。
絶対これだ!(笑)
というわけで、こんな感じに書き換え。
"C:\Program Files\BonTsDemux\BonTsDemux.exe" -i "入力ファイル" -o "出力ファイル" -encode MPEG2PS -sound 0 -start -quit
うわぁーい。出力ファイル名.mpgってファイルが生成されたよー。しかもMPEG-2 PS形式っぽいよー。
……
しっかりしてくれ、readme.txt!(笑)
というわけで、これでほぼ上手くいってます(と言ってもまだエンコード途中なので成功したかどうかは分かっていませんが)
ついでなので、前の仕様に合わせてcap_sts_sea.iniを書き換え。
MPEG2PS_EXT =m2p
これで出力名.m2pってMPEG-2 PSファイルが作られるようになりました。
なんか疲れた……。
ついでなので、最新版の自動エンコードスクリプトを紹介しておきましょう。
注意点としては、「絶対に同時起動しない」です。同時起動すると、aviutlで使ってるプロファイルがかなり高確率で壊れます(涙)
なので、ロックファイルを使って排他処理をしています(ただ、この方法だと処理中に電源が落ちるとかの原因でロックファイルが残った場合に、処理が出来なくなるので、起動時に実行されるスクリプト(スタートアップの中、もしくはタスクで、ログイン時に実行、に設定)も追加しておきましょう)
起動時に実行されるスクリプト(bootup.bat)
set LOCK=lock.dat
if not exist %LOCK% goto end
del %LOCK%
:end
で、BonTsDemuxで単純に出力すると、音声が出ないことに気づく。
なので、生ts→BonTsDemux→vlc→aviutlと変換をかけることにする。ついでなので、TsSplitterかまして、HD画質の物だけを対象にすることにする。何故かって? ファイアボール チャーミングが、途中で解像度変わるから、そのままだとバグるのよ!!!
というわけで、生ts→TsSplitter→BonTsDemux→vlc→aviutlという複雑怪奇な動作を行うことにした。
毎日定時(ウチの場合は、タスクとして毎朝5:30に起動する設定にしています)に起動して、自動エンコードするスクリプト(encode_all.bat)
rem このファイルは、aviutl.exeと同じディレクトリに置き、そのディレクトリで実行する必要があります
rem aviutlコマンド版はロングファイル名が正常に扱えないことがあるため一旦テンポラリファイルに出力している
rem SRC,DESTはアルファベット、数字、_、\、:などで構成し、特殊記号をできるだけ使わずに構成すること。
rem (日本語ディレクトリに関してはチェックしていませんが、避けた方が無難だと思われます)
rem 空白文字(半角スペース)はaviutlが誤作動しますので、SRC,DESTに使用するのはやめてください。"で囲っても無駄です。
rem ※tsファイル名は空白があっても大丈夫です
rem このサンプルでは、録画したtsファイルが、D:\Video\Recに存在(set SRC=で指定)し、
rem エンコードしたファイルはD:\Video\Encodeに出力する(set DEST=で指定)、という設定になっている。
rem aviutlで使用するプロファイルは"Friio-Full"と仮定している(set AviUtlProfiile=で指定)
rem ※aviutlのプロファイルは設定して保存して置いてください。
rem TsSplitterは"C:\Program Files\TsSplitter\TsSplitter.exe"にインストールされている(set TsSplitter=で指定)前提
rem BonTsDemuxは"C:\Program Files\BonTsDemux\BonTsDemux.exe"にインストールされている(set BonTsDemux=で指定)前提。
rem ※BonTsDemuxのインストールディレクトリにある、cap_sts_sea.iniの、MPEG2PS_EXT=mpgを、
rem MPEG2PS_EXT=m2pに変更して置いてください。
rem VLCは"C:\Program Files\VLC\vlc.exe"にインストールされている(set VLC=で指定)前提
rem 出力ファイル名は、tsファイルの拡張子を抜かしたファイル名部分に.aviを加えたものになる
rem (例えば、test.tsなら、test.aviで出力される)
rem 同名のファイル(上記例ならtest.avi)がある場合は、そのファイルに対するエンコードは実行されない。
rem もう一度エンコードしたい場合は、ファイル名を変更するなり削除するなりしてください。
rem 実行時に、一時ファイルとして
rem set SRCで指定したディレクトリに
rem 変換するファイル名_HD.ts (TsSplitter成果物)と、
rem tmp-mpg_encode_all_aviutl_t.m2p (BonTsDemux成果物)と、
rem tmp-mpg_encode_all_aviutl.m2p (VLC成果物)が出来ます。
rem また、(aviutlの設定によっては)tmp-mpg_encode_all_aviutl.glも出来ます(aviutl成果物)
rem set DESTで指定したディレクトリにtmp-mpg_encode_all_aviutl.aviが一時的に作成されます。
rem (このファイルはリネームされて変換するファイル名.aviになります)
rem ※注意事項※
rem 変換するファイル名_HD.ts、tmp-mpg_encode_all_aviutl_t.m2p、tmp-mpg_encode_all_aviutl.m2pは
rem 変換元のtsファイルくらいの大きさになるので、空き領域には注意すること。
rem 不要になった時点で逐次削除していますが、同時に最大2ファイルがSRCディレクトリの中に生成されます。
rem このため、変換元tsファイルの2倍程度の空き容量が必須です。
rem 環境固有設定 -- ここから環境に従って値を変えてください
set SRC=D:\Video\Rec
set DEST=D:\Video\Encode
set AviUtlProfiile="Friio-Full"
set TsSplitter="C:\Program Files\TsSplitter\TsSplitter.exe"
set BonTsDemux="C:\Program Files\BonTsDemux\BonTsDemux.exe"
set VLC="C:\Program Files\VLC\vlc.exe"
rem 環境固有設定終わり -- 通常はここまでの設定のみで大丈夫です
rem ロックファイル
set LOCK=lock.dat
if exist %LOCK% goto end
for %%F in (%SRC%\*.ts) do (
if not exist "%DEST%\%%~nF.avi" (
%TsSplitter% -EIT -ECM -EMM -SD -1SEG -OUT "%SRC%" "%%F"
move "%SRC%\%%~nF_HD.ts" "%SRC%\tmp-mpg_encode_all_aviutl_t0.ts"
%BonTsDemux% -i "%SRC%\tmp-mpg_encode_all_aviutl_t0.ts" -o "%SRC%\tmp-mpg_encode_all_aviutl_t" -encode MPEG2PS -sound 0 -start -quit
del "%SRC%\tmp-mpg_encode_all_aviutl_t0.ts"
%VLC% -vvv "%SRC%\tmp-mpg_encode_all_aviutl_t.m2p" --sout "#transcode{acodec=mp2a,ab=320,canvas-aspect=1:1}:duplicate{dst=std{access=file,mux=ps,dst=%SRC%\tmp-mpg_encode_all_aviutl.m2p}" vlc://quit
del %SRC%\tmp-mpg_encode_all_aviutl_t.m2p
aviutl.exe %SRC%\tmp-mpg_encode_all_aviutl.m2p -o %DEST%\tmp-mpg_encode_all_aviutl.avi -p %AviUtlProfiile% -q
move "%DEST%\tmp-mpg_encode_all_aviutl.avi" "%DEST%\%%~nF.avi"
del %SRC%\tmp-mpg_encode_all_aviutl.m2p
del %SRC%\tmp-mpg_encode_all_aviutl.gl
del %DEST%\tmp-mpg_encode_all_aviutl.gl
)
)
:end
こんな感じで、なんとか出来上がりました。あぁ、remの行はコメントなので消しても大丈夫です。
◆ [情報] 日本で公表されない気象庁の放射性物質拡散予測
気象庁が同原発から出た放射性物質の拡散予測を連日行っているにもかかわらず、政府が公開していないことが4日、明らかになった
気象庁は予測してたのね……。どんだけ政府はアホなのよ。日本が危ないかも、って内容だとしても、それを知らせるのが政府だろうに。
ちなみに、ドイツ気象庁(相当:Wetter und Klima - Deutscher Wetterdienst -- Startseite)では、なんとトップページに日本の(!)放射性物質拡散予測が出ています。
これを見ると、6日の午前9時時点(UTC+9=JSTなので)で、東京近辺はもちろんのこと、愛知、四国、九州にまで届く予報になっています(まぁこれは昨日の時点ですでに知っていることなのだが)
で、今見たら、7日の午前9時時点の予報が載っていた。
一旦南下した放射性物質が、再び北上し、韓国含む日本海側にも広がる予報が出ています。
うーん、日本海側は比較的安全だと思っていたが、南下→北上ルートがあったか……。
毎日に近いレベルでチェックしていますが、今の所日本の中で唯一セーフなのは北海道のみ。
でも、北海道の南部地区にちょろっと拡散予測が出ているので、北海道が入るのも時間の問題かな……。
四国・九州・中国地方で、関東より濃い放射性物質の拡散予測が出ている地区があるなぁ……。
あんまり他人事じゃないぞ?>東北・関東以外の日本人も。
こりゃまぁ、各国が日本からの食料輸入を一時的に禁止するわけだわ。
まぁ、「このままずっと」放射性物質が出続けるんじゃなければ、(現地と、飛び地的にヤバイ、ごく一部を除いて)そんなに心配する必要は無いと思うけどね。
問題は「このままずっと」出続けた場合。どれくらいの期間かによるがマジで日本死ぬ。
前にも書いた気がするけど、原発問題で「現時点で」東京電力に文句を言うのはやめておきましょう。特に、偉い人への直接的・間接的な嫌がらせや脅迫などは、自分の首を絞めるだけだと理解しましょう。
東京電力の偉い人=今、東京電力の意志決定をしている人=今の原発の状況にあわせて次の手を考えている人、です。
嫌がらせや脅迫などで、仮に引っ越しを迫られるとか、ガードを増やさなければならないとか、重要な電話に出れないとかの自体になったら、その分だけ、確実に、東京電力の意志決定は遅れます。遅れた分だけ、原発問題は長引きます。1分の判断の遅れが、元の状態に戻すのに1ヶ月余計にかかるとか、普通にあり得る事態です。
日本を住めない土地にしたい&放射性物質浴びたい人がやるなら意味はあるかもしれませんが、「なんとかしろ!」という文句を言うだけなのは、全く無意味です。むしろ、逆に事態を悪化させます。
このことは、マジで心配していることなので、「今の時点では」絶対に苦情や嫌がらせや脅迫などをしないように。
くどいようだが、マジでその行動のせいで、自分が死ぬぞ? これだけは、脅しじゃなくて、マジな話。
苦情や嫌がらせや脅迫は、まぁ、今やっていることを全て記録しておいて、原発が安定してから(ここ重要)、好きなだけやってください。まぁ嫌がらせや脅迫は捕まる可能性もありますが。
「今」やってはいけないことだけは、絶対に理解しておいてください。比喩じゃなくて、死ぬぞ。下手すると、自分じゃなくて、子供や孫の世代が死ぬぞ。
◆ [情報] 【原発問題】 人類総力戦に
まぁ、マジでシャレになってないからな、各国とも。
南半球の国はまだましだが(と言っても海水汚染の可能性はあるが)、北半球の国は風に乗って飛ばされてくるからな。実際、すでにアメリカ本土では(微量ではあるが)放射性物質観測されてるし、ロシアの太平洋側も風向きによってはヤバイ。
そりゃー、協力するさな。
……日本、後が怖いな。
◆ [日記] 川崎市 水道水の放射能測定結果について
ここ2日ほどちょっとずつ濃度が上がっている……。
ただ、川崎市 市内の環境放射線量の測定状況についての方はあんまり上がってないから……
水源かな……。
◆ [日記] ぎゃぁぁぁぁぁ
ファイアボール チャーミング 1話取り損ねたorz
元々3分放送なのだが、いつだったかのタイミングで、予約時間を1分後ろから削る設定になってたのを忘れてた(そして最大の問題は、今その設定をどこから直すのかが分からない)
ので、冒頭1分しか取れておらず……。
設定し直して、ファイアボール チャーミングだけは+2分余計に撮るように変更。
で、エンコードかけてみたら、ファイアボール チャーミング入る前のタイミングで解像度が変わる……。うわ、最低仕様キタコレ。
BonTsDemuxではエラーが出なかったが、aviutlでエラーが出る……orz
しょうがないので、解像度を1920x1080固定にしてみた。ダメだった。
これだけは手動でやらんとあかんか……。
とりあえず、Murdoc Cutterで適当に切ってエンコードかけてみた。
……Murdoc Cutterで切ったファイルをBonTsDemuxでMEPG2PSに変換すると、変換したファイルは普通に再生出来るのに、aviutlだと音声が拾えない━━━ΣΣヽ(*´□`)ノ━━━!!!
というわけで、vlcの変換ロジックを拾ってきて、vlcでMPG2PSに変換したら普通に音も拾えるようになった。
うーむ、まだ完全自動化は難しいか。
→TsSplitterを使ったら解決したかも。(上記参照)
◆ [ネタ] 東電、海水では膨らまないタイプのポリマーを使用か。 指摘され慌てて修正
いやいやいやいや……
◆ [情報][ネタ] Mozilla、Firefoxのアドオンによる減速を回避する取り組みを発表
とりあえずFirebugが重いのは当たり前だアホ。と各所からツッコミが。
重いのはしょうがないが、仕様用途次第だなぁ。とりあえず、イラン物は無効にするのを簡単にやらせる方法は無いのか。
◆ [情報] 汚染水ダダ洩れ継続中
海水の汚染情報から分かりきっていたことですよ……。
関連:低レベル放射性廃液1万1,500トンを海洋へ放出 福島第1原発
まぁ、これはある意味しょうがない……というか、予測の範囲内。
問題は高レベルの放射性廃液が一杯になったらどうするんだろう? ということ。
◆ [ネタ] 巫女巫女シャル / ミスター さんのイラスト - ニコニコ静画(W)
シャルキタ━━━━(゜∀゜)━━━━!!
◆ [ネタ] TVアニメ「魔法少女そにこ☆マギカ」OP ニトロプラス公式MAD ‐ ニコニコ動画(原宿)が株式会社ニトロプラスの申立により、著作権侵害として削除されました。
対象物: すーぱーそに子
映像でアウトだったかw
◆ [ネタ] 【手描き】ミルキィのことなんかぜんぜん好きじゃないんだからねっ!! ‐ ニコニコ動画(原宿)
いやいやいやいやwwww
◆ [ネタ] 【人力VOCALOID】 偶像少女はるか☆マギカ 【OP風】 ‐ ニコニコ動画(原宿)
ちょ、ま
MMD使ってないのにここまでやるのも凄いが、歌もなにげに凄いし、そしてクレジット職人が……
まさに、「全体的にどうなってんだ」タグの通り。
◆ [ネタ] 【MAD】みなみけでDan Dan Dan Ver1.5
なんだこの組み合わせw
◆ [情報] NZ地震、不明者28人全員の死亡確認
悲しいお知らせ。
平常時ならかなり大きなニュースなのだが……。いまそれどころじゃない規模の被害と、現在進行中の原発案件があるからなぁ……。
NZ地震で亡くなられた方皆さんに、追悼を。
◆ [ネタ] ISキャラ人気投票 暫定1位はあの人 「担当スタッフ驚愕!これぞ組織票の威力!!」
影絵からして、もしかしなくても、のほほんさんか!?(笑)
アマゾンでは人気順位は1位シャル、2位セシリア、3位4位がラウラ/鈴のどちらかで、メインヒロインの箒は5位になってる様子
まぁ、出番と、衝撃の激しさから見て、何となく妥当w
◆ [情報] ジャッキー・チェンぱねぇ!全財産の260億円寄付!
今後の生活資金は残して置いて(><)
◆ [情報] Androidのシェア、米国でBlackBerryを抜く 。米市場でトップに
こっちも気になる。
◆ [ネタ] 小山剛志、平野綾、福山潤らの秋葉原募金活動・・・人が多すぎて現場は混乱状態!
まぁ、予想通り。
◆ [ネタ] 【愛知最速】春の新アニメ『日常』第1話・・・割と評判がいいみたいだね
えっと、個人的にはツボりました(笑)
◆ [情報] 震災、科学研究に痛手 つくばの施設損壊、停電追い打ち
おうちっ
◆ [日記] しかし、原発関連のニュース見てると、しっちゃかめっちゃかだな。
何かに似てるなー、と思ってお風呂に入ってたら答えを見つけた。
非常に不謹慎、かつ、暴言を吐く。
これのハードウェア版……いや、原発版だ。
◆ [日記] 今日の作業曲も、「マミさんの戦闘テーマ」を歌ってみた【小松菜】 ‐ ニコニコ動画(原宿)でした
まだこの曲です(笑)