7 : 14 FFFTPでパスワードを忘れたら

← 7 - 13 p↑ もくじ i 7 - 15 n →

WhiteHouse.org

2003年 3月22日
記事ID d30322a

NOTE: This site (WhiteHouse.org) is satire.

注: このサイト(WhiteHouse.org)は嘘ニュース系の風刺です。

偽ホワイトハウス

ていうかこの偽ホワイトハウス公式サイトすごすぎ~
http://www.whitehouse.org/

「無限の純潔」作戦

「変なTシャツ」シリーズ

USA: We won the planet と書いてあるシャツの写真

Tシャツ以外にもいろいろあります……
http://www.cafeshops.com/thewhitehouse

愛国ポスター: 素で買う人もいそうでコワイ。

この記事のURL

テキスト版省パケ版XML版


[動画作成Tips] Ogg Vorbis を小さくしたい

2003年 3月23日
記事ID d30323_1

Ogg Vorbis コーデックによるオーディオの圧縮率を特に高めたい場合(つまり動画で音声部分のファイルサイズを節約したい場合)には、“フレーム単位”の圧縮クオリティー -q とは別に、“秒あたりのフレーム数”を減らすことができる。

--resample

LAME と違い Oggenc はビットレイトを下げても自動でダウンサンプリングは行われない。 通常のサンプリングレート(48000 or 44100Hz)の WAVファイルを高圧縮処理する場合、 もしファイルサイズを小さくすることが最優先であれば、q値を単純に小さくするのでなく、 32000 や 22050 や 16000 や 11025Hz へのサンプリング・レート変更を試すと良い。

高品位のリサンプリングを行うには、機能の高いオーディオエディタ(Cool Editなど)で適切な設定を用いる。 できる限り音質を犠牲にせずに高圧縮を行うには、オーディオエディタを併用すべきだ。 時間はかかるが、それだけの価値はある。 時間がなければ、oggenc 自身のオプションを使っても良い。またキャプチャーの場合、 あとから高圧縮にすることが分かっているときには、 可能なら、キャプチャーの時点で音声成分のサンプリングレートを下げてしまえば、 変換によるロスを防ぐとともに大幅な時間の節約になる。

例:
oggenc -q 1 input.wav
Average bitrate: 73.6 kb/s
oggenc -q 1 --resample 22050 input.wav
Average bitrate: 44.7 kb/s

この28分14秒のクリップでは、同じ -q 1 でも、44000 Hz のままだと15,223KBだが、22050 Hz にダウンサンプリングすると9,253KBとなった。同じファイルをリサンプリングなしで -q 0 とした 12,187KB より、ずっと小さい。リサンプリングなしの -q 0 が良いか、多少サンプリングレートを下げてより高いq値を保つかは、 どちらの選択もありうる。

-q 0 で 32 Kbps まで行けるので、ネットラジオのストリーミング目的でもない限り q -1 の必要性は少ない。特に、48000や44100のソースに、リサンプリングを試さないうちから安易に q -1 を適用してはいけない。

例:
oggenc -q 0 --resample 16000 input.wav
Average bitrate: 31.2 kb/s
oggenc -q 0 --resample 11025 input.wav
Average bitrate: 26.1 kb/s

32 Kbps でもまだ大きすぎるなら、-q -1 を試すことができる。 -q -1 の音声のファイルは自分専用としてほしい。

--downmix

ステレオで無理やり小さくして音が荒れるより、モノラルで落ち着いた音にしたほうが良い場合もありうる。 特に、モノラルの旧作アニメの音声をステレオにするのは、ありがちなムダだ。 ニュース番組などで -q -1 を試しても良い。 次のコマンドラインは、16000 Hz mono に変更して -q -1 を実行する。
oggenc -q -1 --resample 16000 --downmix input.wav
Average bitrate: 17.9 kb/s

参考(解像度について)

WAVファイルの解像度を16ビットから8ビットに下げると、WAVファイル自体のサイズは半分になる。 しかし、このことは、Ogg Vorbis の圧縮アルゴリズムでは利益にならない。 解像度の変更でムダなノイズが増えるだけなので、Ogg Vorbis のファイルを小さくすることには利用できない。

この記事のURL

テキスト版省パケ版XML版


[動画作成Tips] SRT字幕で二人が同時にしゃべる

2003年 3月23日
記事ID d30323_2

アニメや映画では、二人以上の人物が同時に話すことは珍しくない。 この場合、ひとつの字幕がアウトしないうちに、次の字幕のインが起きる。 SSA形式以降の近代的なデジタルサブでは柔軟に解決できるこの問題は、 OGM埋め込み用のSRTでは扱いにくい。ほとんどプレインテキストに近いSRTでは、利用できるエフェクトが少ないからだ。 OGM内のSRTでこれを実現するハックを説明する。

注意: これはハックというか強引な「裏技」で、本来1行のセリフが構造データとして3行になってしまうので、 あまり正面きってすすめられるわけでもない。

例示

1
00:11:00,470 --> 00:11:00,660
<i> </i>
<i> </i>
ずっと出ているせりふ

2
00:11:00,660 --> 00:11:07,240
<i>割り込むせりふ
<i> </i>
ずっと出ているせりふ

3
00:11:07,240 --> 00:11:09,21
<i> </i>
<i> </i>
ずっと出ているせりふ

この記事のURL

テキスト版省パケ版XML版


[動画作成Tips] SubMux と AVI-Mux GUI

2003年 3月23日
記事ID d30323_3

VobSub付属のSubMux や、AVI-Mux Gui を使うと、次のようないろいろなことが実現できる。

制限事項として、SubMux では、音声成分は mp3 CBR を使うのが良い。(mp3 VBR や Ogg Vorbis は使えない。) 特にSSAのフォント切り替えは、フォント自体を埋め込まない限り、 システムにフォントがないと切り替えられないことに注意する。 スクリプトでユニコードを使うときは、UTF-16 BOM が良い。 AVI-Mux Gui でSRTが埋め込めるようになったのは、つい先日のことだ。

ユニコードの融通性を示す例として、次のようなSRTの行を考えてみよう。

彼はわたしの fiancé なの

これは現在のOGMではソフトサブで実現できない。 e の字がアクセント記号がついた特殊文字であることに注意。 コードページでは、この é の字は WinLatin の 0x80-ff にあって、 SJISとは同じ空間を使ってるので、共存できない。 しかし、VobSub はユニコードを認識するので、SubMux で UTF16(ないしUCS-2)の(それも行末のダミー空白なしの)SRTをAVIに埋め込んで、万事うまくいく。アクサンつきの特殊文字と日本語の文字が共存できる。 (ほんの数年前にはHTMLなウェブページでこれらを共存させることも困難だったが、 今ではUTF-8などでエディタ上で簡単にタイプできる。メモ帳でさえ。字幕もこれからということを感じる。)

あるいはSSAでコードページのデータを{\fe}タグで指定することも可能だ(SSAでコードページ切り替えを用いた場合、 スクリプト上では文字化けするが、再生はうまくいく)。 これではAVIのほうがOGMより良いということになる。 ただし、再生は VobSub に依存するため、Linux環境では再生しにくい可能性がある。 Windows でも字幕再生のコンフィグが、けっこう微妙だ。 何より Ogg Vorbis が使えない、MP3もVBRが通らないなど、使い勝手が悪い。 ハックにハックを重ねて VobSub の対応で切り抜ける道もあるだろうが、AVIでVBRを通すことそれ自体が一種むちゃなハックで、どうせならOGMを拡張したほうが自然に Vorbis が使える。 ユニコードを通す新OGGコンテナ。 ――このようにして新しい動画形式への期待が生まれる。

といってもサバー以外には興味ない話だろう。

この記事のURL

テキスト版省パケ版XML版


DeFFFTP

2003年 3月25日
記事ID d30325

FTPクライアントにFTPサーバのログイン情報を登録したあと、ログインパスワードが分からなくなってしまうと、 そのクライアントを使えばログインできるのに自分ではパスワードが分からないという困った状態になる。 パスワードをタイプしなければならない場合に困るし(パスワードの変更とかウェブからのログイン)、 OSの再セットアップをすると永遠にログインできなくなってサイトの更新ができなくなってしまう。

パスワードを忘れてしまう自分がいけないといえばそれまでだが、 FFFTPでこのような状態になったときに、下の表を使うと、ffftp.ini からパスワード情報を復元できる。OSを再セットアップするときは、念のために ffftp.ini をバックアップしておくと良いかも。暗号を解読するのでなく直接エディットボックス・コントロールから読み取るツールもあります。

表の画像。表を生成するのに必要なアルゴリズムは後述。

*は任意の一文字、解読欄で SP とあるのは半角スペース

表の使い方

FFFTP の暗号化はリニアな換字暗号(文字の置き換え)で、ソースも公開されてます。 半角英数字記号1文字につき3通りのパターンのどれかになり、 暗号化の結果は2文字または3文字。1文字めのASCIIコード番号が偶数のときは2文字、奇数のときは3文字になりますが、 追加される3文字めはダミーで、解読には関係しません。 例えば小文字の a は、FFFTPの暗号化を通すと、 RLという2文字になるか、AF* または eH* の3文字になります。 ここで*は任意の一文字。また、表の解読欄で SP とあるのは半角スペースです。

FFFTPをインストールしたフォルダにある ffftp.ini でパスワードは次のような感じで保存されてます。

[FFFTP\Options\Host61]
Set=0
HostName=Sample
HostAdrs=ftp.sample.net
UserName=okamiki
LocalDir=
Password=eKLeJvVLVMeN}

上の例では、ログインは okamiki でパスワードが eKLeJvVLVMeN} と暗号化されているのですが、表をみると、 eK* の意味は m ですから、eKL が m です。 同様に、eJv が i, VL が c, VM が k, eN} がy なので、 パスワードは micky と分かります。

表を見るのが面倒なら、JavaScript でも簡単に実行できます。(ソースを飛ばす

enc = "eKLeJvVLVMeN}";
plain = "", i = 0;
while( i < enc.length ) {
    c1 = enc.charCodeAt(i), c2 = enc.charCodeAt(i+1);
    Rnd = c1 >> 4 & 0x3;
    Ch = c1 & 0xF | (c2 & 0xF) << 4;
    Ch <<= 8, Ch >>= Rnd, Ch = (Ch & 0xFF) | ((Ch >> 8) & 0xFF);
    plain += String.fromCharCode( Ch );
    i = i + 2 + c1 % 2;
}
document.write("<p>解読結果: " + plain + "<\/p>");

出力例: 解読結果: micky

リンク

この記事のURL

テキスト版省パケ版XML版



webmaster@faireal.net