Ut Video Codec Suite 18.2.1 readme (日本語)


英語

Ut Video Codec Suite
Copyright © 2008-2017 UMEZAWA Takeshi

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

日本語

Ut Video Codec Suite
Copyright © 2008-2017 梅澤 威志

このプログラムはフリーソフトウェアです。 あなたはこれを、フリーソフトウェア財団によって発行された GNU 一般公衆利用許諾契約書 (バージョン2か、希望によってはそれ以降のバージョンのうちどれか) の定める条件の下で再頒布または改変することができます。

このプログラムは有用であることを願って頒布されますが、 *全くの無保証* です。 商業可能性の保証や特定の目的への適合性は、言外に示されたものも含め全く存在しません。 詳しくはGNU 一般公衆利用許諾契約書をご覧ください。

あなたはこのプログラムと共に、 GNU 一般公衆利用許諾契約書の複製物を一部受け取ったはずです。 もし受け取っていなければ、フリーソフトウェア財団まで請求してください (宛先は the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA)。

概要

Ut Video Codec Suite は、複数のプラットフォームとインターフェースをサポートするロスレス映像コーデックです。インターフェースは VCM、DMO、QuickTime をサポートします。内部保持形式は RGB、RGBA、YUV422、YUV420 をサポートします。

動作環境

必須環境 (Windows x86)

OS
Windows Vista 以降
CPU
SSE2 をサポートする i686 以降の CPU
(Intel だと Pentium 4 以降)

必須環境 (Windows x64)

OS
Windows Vista (x64) 以降
CPU
AMD64 あるいは Intel 64(旧称 EM64T)をサポートする CPU

必須環境 (Mac)

OS
OS X 10.10 Yosemite 以降
CPU
SSE2 をサポートする i686 以降の CPU
(Intel Mac でこれに該当しないものは存在しません)

推奨環境

CPU
第1世代 Intel Core i シリーズ (Nehalem) 以降

インストールに関する注意

Windows

バージョン 10.2.0 またはそれ以前がインストールされている場合、それをアンインストールしてからこのバージョンをインストールしてください。

VCM コーデックが正しく登録されないようであれば、最終手段としてインストール先ディレクトリに入っている utvideo.reg をレジストリに結合してください。なお、このファイルは Windows ディレクトリが C:\Windows であることを仮定しています。

FourCC 一覧

FourCCコーデック名内部保持形式対応入出力フォーマット(優先度順)
VCM / DMOQT
ULRAUtVideo RGBARGBA 4:4:4:4 8bit フルレンジRGBAARGB
ULRGUtVideo RGBRGB 4:4:4 8bit フルレンジRGB24
RGB32
RGB
ARGB
ULY4UtVideo YUV444 BT.601YCbCr (BT.601) 4:4:4 8bit リミテッドYV24
RGB24
RGB32
RGB
ARGB
ULY2UtVideo YUV422 BT.601YCbCr (BT.601) 4:2:2 8bit リミテッドYUY2 (YUYV YUNV yuvs)
UYVY (UYNV 2vuy)
YV16
RGB24
RGB32
yuvs
2vuy
RGB
ARGB
ULY0UtVideo YUV420 BT.601YCbCr (BT.601) 4:2:0 8bit リミテッドYV12
YUY2 (YUYV YUNV yuvs)
UYVY (UYNV 2vuy)
YV16
RGB24
RGB32
yuvs
2vuy
RGB
ARGB
ULH4UtVideo YUV444 BT.709YCbCr (BT.709) 4:4:4 8bit リミテッドYV24
RGB24
RGB32
RGB
ARGB
ULH2UtVideo YUV422 BT.709YCbCr (BT.709) 4:2:2 8bit リミテッドHDYC
YUY2 (YUYV YUNV yuvs)
UYVY (UYNV 2vuy)
YV16
RGB24
RGB32
HDYC
yuvs
2vuy
RGB
ARGB
ULH0UtVideo YUV420 BT.709YCbCr (BT.709) 4:2:0 8bit リミテッドYV12
HDYC
YUY2 (YUYV YUNV yuvs)
UYVY (UYNV 2vuy)
YV16
RGB24
RGB32
HDYC
yuvs
2vuy
RGB
ARGB
UQRAUtVideo Pro RGBA 10bitRGBA 4:4:4 10bitb64ab64a
UQRGUtVideo Pro RGB 10bitRGB 4:4:4 10bitb48r
b64a
b48r
b64a
UQY2UtVideo Pro YUV422 10bitYCbCr 4:2:2 10bitv210v210

寄付について

Ut Video Codec Suite はフリーソフトウェアです。開発を支援するための寄付は常に歓迎しております。詳細は作者のblogの「寄付について」ページをご覧ください。

ニコニコ動画のコンテンツツリーについて

ニコニコ動画において、コンテンツツリーの親作品として指定するために、静画を投稿してあります(2012年4月2日に再投稿しました)。Ut Video Codec Suite を使用して作成された動画を投稿の際は、親作品として指定していただけると励みになります。

開発環境

Windows

開発ツール

マシン 1

OS
Windows 7 Ultimate x64
CPU
Intel Core i7-2600K
RAM
DDR3-1600 32GB

マシン 2

OS
Windows 7 Ultimate x64
CPU
Intel Core i3-540
RAM
DDR3-1333 16GB

マシン 3

OS
Windows 7 Ultimate x64
CPU
Intel Core i7-4770
RAM
DDR3-1600 16GB

マシン 4

OS
Windows 7 Ultimate x64
CPU
AMD Phenom II X4 910e
RAM
DDR2-800 4GB

OS X

開発ツール

マシン 1

OS
macOS 10.12 Sierra
CPU
Intel Core i5-2415M
RAM
DDR3-1333 8GB

改版履歴

バージョン 18.2.1

その他

バージョン 18.2.0

性能向上

バージョン 18.1.0

性能向上
バグ修正

バージョン 18.0.0

機能追加
性能向上

バージョン 17.4.1

ユーザーに見える変更点なし

バージョン 17.4.0

性能向上

バージョン 17.3.0

機能追加
性能向上

バージョン 17.2.0

性能向上

バージョン 17.1.0

性能向上

バージョン 17.0.0

機能追加

バージョン 16.1.1

バグ修正
その他

バージョン 16.1.0

機能追加

バージョン 16.0.0

機能追加
バグ修正

バージョン 15.5.0

機能追加
バグ修正

バージョン 15.4.0

性能向上

バージョン 15.3.0

その他

バージョン 15.2.0

機能追加
バグ修正

バージョン 15.1.0

バグ修正

バージョン 15.0.2

その他

バージョン 15.0.1

その他

バージョン 15.0.0

機能追加

バージョン 14.2.1

バグ修正
  • グローバル設定で「コーデック側で設定をグローバルに保持する」をチェックしていても、コーデックの設定が正しく保存されていなかった。

バージョン 14.2.0

性能向上
  • UQY2: フレーム分割数を指定できるようにし、マルチスレッド動作できるようにした。

バージョン 14.1.1

機能追加
  • UQY2: 映像の幅の制限を「2の倍数である」に緩和した。

バージョン 14.0.0

機能追加
  • 内部保持形式が YUV422 10bit のコーデック (FourCC: UQY2) を追加した。とても遅い。
その他
  • コーデックの名前を変更した。
  • 必須 OS (Windows) を Vista 以降にした。

バージョン 13.3.1

バグ修正
  • AVX をサポートしないプロセッサでクラッシュすることがあった。
  • 32個を超える論理プロセッサを持つシステムでクラッシュすることがあった。

バージョン 13.3.0

性能向上
  • ULRG,ULRA: 「圧縮率優先」でエンコードされた映像の RGB32/ARGB へのデコードを高速化した。

バージョン 13.2.1

バグ修正
  • SSSE3 をサポートしないプロセッサでクラッシュすることがあった。

バージョン 13.2.0

性能向上
  • 共通: x64 バージョンで、デコードを高速化した。

バージョン 13.1.0

性能向上
  • ULRG,ULRA,ULY2,ULH2: SSSE3 命令が使用可能な環境で、ネイティブな色空間からのエンコードを高速化した。
  • ULRG,ULRA,ULY2,ULH2: SSSE3 命令が使用可能な環境で、「圧縮率優先」でエンコードされた映像のネイティブな色空間へのデコードを高速化した。
  • ULY2,ULH2: SSSE3 命令が使用可能な環境で、RGB からのエンコードを高速化した。
  • ULY2,ULH2: SSE4.1 命令が使用可能な環境で、RGB へのデコードを高速化した。

バージョン 13.0.1

その他
  • 13.0.0 でパッケージングにミスを発見したのでやりなおした。

バージョン 13.0.0

機能追加
  • 色空間変換係数に BT.709 のものを使うコーデック (FourCC: ULH2, ULH0) を追加した。ULY2, ULY0 と同程度にアセンブラ化されている。
その他
  • コーデックの名前を変更した。
  • 推奨 CPU を Nehalem 以降にした。

バージョン 12.2.1

バグ修正
  • ULY0: インターレースで YUV422 で入出力するときの色空間変換処理が間違っていたと思われる。

バージョン 12.2.0

性能向上
  • 「デコード速度優先」でエンコードされた映像のデコードを高速化した。5% から 10% 程度。
  • x64 バージョンで、「圧縮率優先」でエンコードされた映像のデコードを高速化した。1% 程度。
  • ULY2: x64 バージョンで、RGB からのエンコードを高速化した。2% 程度。

バージョン 12.1.0

性能向上
  • ULRG,ULRA,ULY2: AVX 命令が使用可能な環境で、ネイティブな色空間からのエンコードを高速化した。x86 の場合は 10% 程度、x64 の場合は 12% 程度。
  • ULRG,ULRA,ULY2: AVX 命令が使用可能な環境で、「圧縮率優先」でエンコードされた映像のネイティブな色空間へのデコードを高速化した。x86 と x64 ともに 5% 程度。

バージョン 12.0.1

バグ修正
  • Windows Vista 以降で、アンインストールが失敗する。
  • x64 バージョンで、デコード時にクラッシュすることがある。

バージョン 12.0.0

機能追加
  • Media Foundation 用エンコーダおよびデコーダを追加した。エンコード設定ダイアログはまだ存在しない。

バージョン 11.1.1

バグ修正
  • Windows で、エンコード時およびデコード時に、出力イメージのサイズ(バイト数)が正しく設定されないことがある。

バージョン 11.1.0

性能向上
  • Mac で、RGB から ULY2 へのエンコードをアセンブラ化して高速化した。
  • 共通: デコードを少しだけ高速化した。
  • 共通: x64 で、エンコードを 10% 程度高速化した。
その他
  • Mac で、中間圧縮用コーデックとしては不要なフラグを出力しないことによって、エンコード後のサイズをちょっとだけ小さくした。

バージョン 11.0.0

機能追加
  • QuickTime for Mac 用エンコーダコンポーネントを追加した。RGB24/ARGB32 からのエンコードのみ。あまり速くない。エンコード設定ダイアログはまだ存在しない。
バグ修正
  • ULY2: QuickTime デコーダで、映像の幅や出力バッファの寸法によっては、映像が乱れてデコードされる。

バージョン 10.2.4

その他
  • Windows のインストーラで、インストール前の注意を表示するようにした。
  • Mac で、コーデック名をより適切に報告するようにした。

バージョン 10.2.3

バグ修正
  • Windows で、VCM コーデックオブジェクトにコーデック設定を設定した時、実際には成功しているにもかかわらず失敗していると返していた。
その他
  • Windows で、どうしてもうまくインストールできないときのための救済用 .reg ファイルを再追加した。

バージョン 10.2.2

バグ修正
  • Windows Vista x64 と Windows XP x64 で、x86 VCM コーデックの登録に失敗していた。

バージョン 10.2.1

その他
  • Windows で、インストーラを Inno Setup ベースにし、x86 と x64 で単一のインストーラになるようにした。

バージョン 10.2.0

性能向上
  • Mac で、Windows 版と同程度にアセンブラ化した。

バージョン 10.1.0

性能向上
  • Mac で、マルチスレッド化した。

バージョン 10.0.3

バグ修正
  • Windows で、入出力の幅と高さが一致していることをチェックしていない。

バージョン 10.0.2

バグ修正
  • Windows で、デコード時に稀にクラッシュすることがある。

バージョン 10.0.1

バグ修正
  • Windows で、グローバル設定で「コーデック側で設定をグローバルに保持する」にしていると、コーデックを読み込んだときにクラッシュする。
その他
  • Mac で、ベース SDK を 10.6 から 10.5 にした。

バージョン 10.0.0

機能追加
  • QuickTime for Mac 用コンポーネントを追加した。RGB24/ARGB32 へのデコードのみ。とても遅い。
その他
  • 入出力フォーマットのチェックがより正確になった。

バージョン 9.0.3

バグ修正
  • ULY2: DMO エンコーダで、RGB24/32 以外のフォーマットで入力すると、自分で提示した出力フォーマットを受け入れていなかった。
  • ULY0: DMO エンコーダで、RGB24/32 以外のフォーマットで入力すると、自分で提示した出力フォーマットを受け入れていなかった。
その他
  • DMO エンコーダおよびデコーダで、入出力フォーマットをチェックする際に、一部のパラメータをチェックしないようにした。

バージョン 9.0.1

バグ修正
  • DMO デコーダで、出力フォーマットを列挙する際に矛盾したフォーマットを返していた。

バージョン 9.0.0

機能追加
  • DMO インターフェースでデコーダを使えるようにした。

バージョン 8.5.2

バグ修正
  • utv_vcm.dll のインストール先が間違っており、VCM インターフェースでコーデックが使えなかった。

バージョン 8.5.1

バグ修正
  • ULY2: x64 版で RGB からエンコードする時に、映像が壊れたりエンコーダがクラッシュしたりする可能性がある。
その他
  • utvideo.dll から VCM インターフェースを分離して utv_vcm.dll とした。

バージョン 8.5.0

性能向上
  • 共通: x86 でのデコードを 10% ほど高速化した。
  • 共通: x64 版をアセンブラ化し、おおむね x86 版と同程度の速度にした。

バージョン 8.4.0

性能向上
  • ULRG: デコード速度優先でエンコードされたものの RGB24 や RGB32 へのデコードを高速化した。Core 2 で x86 の場合 14% ほど、x64 の場合 6% ほど。
  • ULRA: デコード速度優先でエンコードされたものの RGBA へのデコードを高速化した。Core 2 で x86 の場合 17% ほど、x64 の場合 6% ほど。

バージョン 8.3.0

性能向上
  • ULY2: デコード速度優先でエンコードされたものの YUY2 や UYVY へのデコードを高速化した。Core 2 で 12% ほど。
  • ULY0: デコード速度優先でエンコードされたものの YV12 へのデコードを高速化した。Core 2 で 5% ほど。
その他
  • ULY2: YVYU と VYUY での入出力のサポートを廃止した。
  • ULY0: YVYU と VYUY での入出力のサポートを廃止した。

バージョン 8.2.1

その他
  • ULY2: デコード時に RGB32 で出力する場合、安全のためアルファチャンネルと解釈されうるフィールドは 255 で埋めるようにした。
  • ULY0: デコード時に RGB32 で出力する場合、安全のためアルファチャンネルと解釈されうるフィールドは 255 で埋めるようにした。

バージョン 8.2.0

性能向上
  • 共通: デコードを高速化した。Core 2 で x86 の場合 20〜30% ほど、x64 の場合 20〜40% ほど。

バージョン 8.1.0

機能追加
  • エンコーダの設定をコーデック側でグローバルに保持できるようにした。
  • コーデックを使う側(編集ソフトなど)からの設定変更を無視できるようにした。

バージョン 8.0.0

機能追加
  • DMO インターフェースでエンコーダを使えるようにした。
その他
  • x64 版のインストーラには x64 バージョンの DLL のみが含まれるようにした。
  • x86 版のインストーラを x64 Windows にインストールできるようにした。

バージョン 7.1.1

その他
  • DLL をフルパスで登録するようにした。

バージョン 7.1.0

性能向上
  • Athlon 系プロセッサで発生するパフォーマンスの劇的な低下を改善した。

バージョン 7.0.4

その他
  • コーデックをシステムに登録する方法を(また試験的に)変更した。

バージョン 7.0.3

その他
  • コーデックをシステムに登録する方法を(試験的に)変更した。

バージョン 7.0.2

その他
  • x86 版のインストーラで x64 Windows にインストールできないようにした。
  • 文言を多少調整した。

バージョン 7.0.1

バグ修正
  • x64 版のインストーラで、環境によっては DLL が期待通りに登録されない。
その他
  • コーデックの表示名が長すぎて、名前を表示するところに収まらないことがあるため、表示名を短くした。

バージョン 7.0.0

機能追加
  • x64 バージョンを追加した。x64 バージョンのインストーラには x64 バージョンと x86 バージョンの両方の DLL が含まれる。
その他
  • DLL のインストール先を Program Files 以下から System32/SysWOW64 以下に変更した。

バージョン 6.1.0

機能追加
  • 共通: フレーム分割数を論理プロセッサ数と同じにするオプションを追加した。

バージョン 6.0.2

その他
  • 6.0.1 でパッケージングにミスを発見したのでやりなおした。

バージョン 6.0.1

その他
  • ダイナミックリンクからスタティックリンクに変更した。

バージョン 6.0.0

機能追加
  • 共通: インターレース映像に対する特別な処理を追加した。
バグ修正
  • ULY0: 縦長の映像を扱うとクラッシュする可能性があった。

バージョン 5.3.1

バグ修正
  • ULY0: フレーム分割の方法が間違っていた。

バージョン 5.3.0

機能追加
  • ULY0: エンコード時に YUY2 で入力できるようにした。とりあえず作っただけなので、YUY2 入力時のエンコードは遅い。
  • ULY0: デコード時に YUY2 で出力できるようにした。とりあえず作っただけなので、YUY2 出力時のデコードは遅い。

バージョン 5.2.3

バグ修正
  • 共通: 特定の性質を持つフレームをエンコードする際に、稀にフレームが破損する。

バージョン 5.2.2

その他
  • 5.2.1 でパッケージングにミスを発見したのでやりなおした。

バージョン 5.2.1

その他
  • 5.2.0 でパッケージングにミスを発見したのでやりなおした。

バージョン 5.2.0

機能追加
  • ULY2: エンコード時に RGB32 で入力できるようにした。アセンブラ化済み。
  • ULY0: エンコード時に RGB32 で入力できるようにした。とりあえず作っただけなので、RGB32 入力時のエンコードは遅い。
  • ULY0: デコード時に RGB32 で出力できるようにした。とりあえず作っただけなので、RGB32 出力時のデコードは遅い。

バージョン 5.1.2

その他
  • 5.1.1 でパッケージングにミスを発見したのでやりなおした。

バージョン 5.1.1

バグ修正
  • ULY0: デコード時に、出力イメージのサイズ(バイト数)が正しく設定されないことがある。ULY0 以外ではこの問題はない。

バージョン 5.1.0

機能追加
  • ULY0: エンコード時に RGB24 で入力できるようにした。とりあえず作っただけなので、RGB24 入力時のエンコードは遅い。
  • ULY0: デコード時に RGB24 で出力できるようにした。とりあえず作っただけなので、RGB24 出力時のデコードは遅い。

バージョン 5.0.0

機能追加
  • YUV420 のためのコーデック (FourCC: ULY0) を追加した。
その他
  • 設定を行わない場合は「デコード速度優先」で動作するようにした。
  • ULY2: 横幅が偶数のもののみ扱えるようにした。

バージョン 4.1.0

性能向上
  • 共通: エンコードをほんのわずかだけ高速化した。
  • 共通: デコードをほんのわずかだけ高速化した。

バージョン 4.0.2

その他
  • ULRG: デコード時に RGB32 で出力する場合、安全のためアルファチャンネルと解釈されうるフィールドは 255 で埋めるようにした。
  • 共通: エンコード時に出力の biBitCount には入力の実効ビット数を設定するようにした。

バージョン 4.0.1

その他
  • 4.0.0 でパッケージングにミスを発見したのでやりなおした。

バージョン 4.0.0

機能追加
  • RGBA のためのコーデック (FourCC: ULRA) を追加した。

バージョン 3.8.0

機能追加
  • 共通: Predict left フレーム内予測方式を追加した。手元の計測では、今までの実装(Predict median)と比較して、エンコード速度ほぼ同じ、圧縮率 10% 低下(ファイルサイズが 10% 増える)、デコード速度 50% 向上(デコード時間が 30% 強短くなる)。

バージョン 3.7.0

性能向上
  • 共通: デコードを高速化した。Core 2 の場合で 9% 程度。
  • ULY2: RGB24 からのエンコードを高速化した。Core 2 の場合で 9% 程度。

バージョン 3.6.0

性能向上
  • ULY2: RGB24 からのエンコードをアセンブラ化により高速化した。Core 2 の場合で 42% 程度。これでシングルスレッドでも Huffyuv (Predict median) より有意に速くなった。

バージョン 3.5.0

機能追加
  • ULY2: デコード時に RGB24 で出力できるようにした。最初からアセンブラバージョンがある。
バグ修正
  • ULY2: RGB24 エンコード時に、横幅が 4 の倍数ではない場合、映像の右端にゴミが発生する。

バージョン 3.4.0

機能追加
  • ULY2: エンコード時に RGB24 で入力できるようにした。例によってとりあえず作っただけなので、RGB24 入力時のエンコードは遅い。
バグ修正
  • ULY2: RGB32 デコード時に出力フォーマットの biHeight の正負を見ていないため、環境によっては上下が反転してデコードされる。

バージョン 3.3.1

バグ修正
  • 共通: エンコーダを使う側のソフトによっては、エンコードを開始すると不正な処理で落ちる。
その他
  • 設定ダイアログのタイトル文字列を適切なものに変更した。
  • バージョン情報ダイアログにバージョンを表示するようにした。

バージョン 3.3.0

性能向上
  • 共通: デコードを高速化した。Core 2 の場合で 20% 程度。これでシングルスレッドでも Huffyuv (Predict median) より有意に速くなった。
  • 共通: エンコードを高速化した。Core 2 の場合で 8% 程度。
  • ULY2: RGB32 へのデコードをアセンブラ化により高速化した。Core 2 の場合で 47% 程度(前述の共通の高速化の効果を含む)。
バグ修正
  • 共通: 処理できないフォーマットを渡してエンコード/デコードを開始しようとしてもエラーにならない。

バージョン 3.2.0

機能追加
  • ULY2: デコード時に RGB32 で出力できるようにした。とりあえず作っただけなので、RGB32 出力時のデコードは遅い。
バグ修正
  • ULRG: フレーム分割の方法が間違っていた。この修正により、フレーム分割数が 1 ではない場合、3.1.0 以前の ULRG との互換性は失われる。

バージョン 3.1.0

機能追加
  • ULY2: YUYV, YUNV, UYVY, UYNV, YVYU, VYUY のサポートを追加した。
  • ULRG: RGB32 のサポートを追加した。
バグ修正
  • ULRG: WMP で再生しようとすると不正な処理で落ちるのを修正した。

バージョン 3.0.0

バージョン 2.2.0

バージョン 2.1.0

バージョン 2.0.0

バージョン 1.1.3

一般公開された最初のバージョン。


製作者のサイト