投稿

4月, 2015の投稿を表示しています

FontForgeでフォントに「文脈依存の置換(conditional features)」を設定する

イメージ
FontForgeでフォントに「文脈依存の置換(conditional features)」を設定する手順を解説します。
文脈依存の置換は、前の文字によって次の文字を異字体に置き換える機能です。
筆記体(Script)書体にはぜひ必要な機能です。文字間の線を滑らかに繋げるために、前の文字に合わせて字形を変えなければならないからです。
caltにより設定された条件により、aaltによる置換を呼び出すものと思われます。 わたしも本設定を試している途中なので詳細はまだ不明です。

なお、本手順中でLookupとSubtableの名称は、FontForgeが自動生成するデフォルトのものを使用しました。
FontForgeは、日本語環境では日本語の設定名を生成します。
今回は、LANG=Cを頭に付けたコマンドライン呼び出しにより、英語ロケールとUIで作業を行いました。
英語のリファレンスを検索しやすい、などの利点もあるので、英語ロケールで作業することをおすすめします。


References:
チュートリアル (その 7)』による条件付き機能による置換を使用します。英語版『Tutorial #7 (Conditional Features )』も、日本語版が少し古くなっているので、必要に応じて参考にしました。
しかし、この英語版も説明が丁寧ではないので(あるいは英語版も古くなっているので) 、既存の条件付き置換を使用したフォントをFontForgeで開いて設定を読んだりしました。

This sample setting:
letter "b" を前の文字によって "b.high" に置き換えます。
"b.high"には適当なコードポイントを割り当てました。これがテストであるためです。本当はフォント固有の異字体を置くためのコードポイントが定義されているので、その領域を使うべきです。

## Create "b.high" letter


適当なコードポイントに"b.high"を作成します。
デフォルト設定では、一部の文字を覗いてユニコードコードポイントによる"uniXXXX"といった名前が付いています。エディタ上部の名前入力欄か、MenuのElement>…

ffmpegフォークで、動画から静止画を連続キャプチャ (Ubuntu 15.04)

イメージ
ソルジャーレギオンのデザインが知りたくなったので、「ガメラ2 レギオン襲来」を静止画キャプチャして観察することにしました。
最初は、VLCのキャプチャ機能で、シーンを前後しつつ撮っていたのですが、フレームを指定して移動する機能がVLCに見つからず、映りの良い静止画を撮るのが難しかったため、ffmpegで一括取得した静止画から良さそうなフレームを抜き出すことにしました。
ソース動画はBD由来、ただし北米版です。
作業環境はUbuntu15.04。



簡易まとめ:
・ffmpegフォークのavconvを使う
・'-ss'オプションを先にしても高速化は望めない?
・'-qscale'は必須
・'-qscale'は0でも1でも結果は同じ
avconvを使う Ubuntuは15.04の時点で、ffmpegフォークでコマンド互換のavconvを採用しています。
手間をかけて外部からffmpegを持ってくるよりも、avconvを使うべきです。

静止画取得のオプション指定 今回のコマンドは以下のようにしました。
 avconv -ss 2250 -t 22 -qscale 1 -f image2 %06d.jpg -i

'-ss'は抜き出し開始位置を指定します。
『'-ss'オプションを'-i'より先に指定すると、開始位置から動画を読むので高速化する』というTIPSがあるとされていますが、今回作業した環境ではその効果が見られませんでした。
(オプション位置を逆にした版を試していないので、もしかしたら効果があったのかもしれませんが。効果がなくても目的は果たせるので確認していません。)

'-t' は抜き出し終点とされていますが、これは抜き出し開始時点からの相対的な経過秒です。
絶対時間ではありません。

'-qscale'は静止画のクオリティを指定するオプションです。指定しないと明らかに品質が落ちます。
指定値の最高レベル1を指定しておきます。今回の環境では、指定値は0でも1でも結果は同じでした。

'-r' はfps固定で動画を抜き出すオプションです。今回は、gif動画を作るわけではないので、固定フレーム24fpsにする必要はありません。…