- 性能向上
-
- Mac で、RGB から ULY2 へのエンコードをアセンブラ化して高速化した。
- 共通: デコードを少しだけ高速化した。
- 共通: x64 で、エンコードを 10% 程度高速化した。
- その他
-
- Mac で、中間圧縮用コーデックとしては不要なフラグを出力しないことによって、エンコード後のサイズをちょっとだけ小さくした。
v210 という YUV422 10bpc の非圧縮映像フォーマットがあります。このフォーマットは16バイトに6ピクセルを pack するようになっています。4バイトごとに2ビット余りますが、そこは0を埋めます。
さて、AVI ファイル…というか BITMAPINFOHEADER には biBitCount という WORD メンバがあって、非圧縮のフォーマットの場合は平均 bpp を格納することになっています。上記のとおり16バイトに6ピクセルなので、21.333…bpp と非整数です。結局何を入れればいいのか分からないので手元のソフトウェアの動作を見てみると以下のようになりました。
- VirtualDub 1.9.11 (ちょっと古い)
- 20 = 4バイトごとに余った2ビットを計算に入れない場合の bpp
- Premiere Elements 4 (これまた結構古い)
- 16 = 8bpc として計算した場合(例: UYVY)の bpp
うーん?
あと、v210 を定義している(と思われる)文書では、QuickTime の場合では 24 にしろ、と書いてあるように読めます。
てんでバラバラなのでどうしたものやら。
2012年04月にいただいた寄付は以下の1件です。ありがとうございました。
| 日付 | お名前 | 方法 | 金額 |
|---|---|---|---|
| 04/25 | すいすい | 銀行振り込み | 10,000円 |
記帳は1日にやったのにblogに書くのを忘れるとはどういうことか。
バージョン 11.0.0 で、Mac 上で QuickTime 経由で MOV ファイルにエンコードすることができるようになりました。一方、昔からある Windows 版では AVI ファイルにエンコードします。この記事では、相互にどのように読み込みができるかを説明します。
- 機能追加
-
- QuickTime for Mac 用エンコーダコンポーネントを追加した。RGB24/ARGB32 からのエンコードのみ。ULY2 は Windows と比較してあまり速くない。
- バグ修正
-
- ULY2: QuickTime デコーダで、映像の幅や出力バッファの寸法によっては、映像が乱れてデコードされる。
POSIX 環境で非同期的なタイマを使うには setitimer() を使いますが、これだとタイマが 1 個しか使えません。(正確には SIGALRM, SIGVALRM, SIGPROF という性質の違うタイマをそれぞれ 1 個ずつ)
さすがにこれでは厳しいということで、POSIX.1b には timer_create() という関数が定義されていて、これだと好きなだけタイマを作ることができます。さらに、setitimer() と違い、タイマごとに好きなシグナルを発生させることができますし、シグナルを発生させる代わりにスレッドを起動して通知関数を呼び出させることもできます。
こんなツイートをしたら 5RT されてしまった。
這いよれ!ホメ春香さん
http://twitter.com/#!/umezawa_takeshi/status/189943776091971585
正確には「UTF-8 で見えるように設定することができる」ですが。さらに言うと、2008年7月時点(Cygwin 1.7.0 リリース時)でそうなっているようです。情報古いよ俺。
たとえば、「漢字.txt」というファイルだけがあるディレクトリにおいて以下のようになります。
umezawa@umewin /cygdrive/c/Users/umezawa/Documents/test $ ls | od -t x1 0000000 e6 bc a2 e5 ad 97 2e 74 78 74 0a 0000013
2012年03月にいただいた寄付は以下の1件です。ありがとうございました。
| 日付 | お名前 | 方法 | 金額 |
|---|---|---|---|
| 03/05 | Derek Buitenhuis | PayPal | $20.00 |
Derek Buitenhuis 氏は FFmpeg に libutvideo コーデックラッパーを contribute した方です。
なお、2012年01月から02月には寄付はありませんでした。