altShiiva
altShiiva の概要
機能は OpenShiiva 0.8.9 とほぼ同じです。mp4エンコーダです。異なる点は、
- 日本語ファイルパスに対応
- 書き出しファイルのfps設定を追加
- PSP用mp4書き出しに対応
mp4を他のアプリケーションで作成し、altShiivaではPSP最適化処理のみを行う使い方も可能です。
使い勝手は正直まだまだですが、とりあえず公開です。
コマンドライン版の mp4psp ではPSP最適化処理のみを行うことができます。またATOM構造をダンプするオプションも付いています。
Mac OS X 10.3.7 で開発、動作テストしています。10.2.x で動くかどうかは確かめていません。
使用条件
このソフトはフリーウェアです。ライセンスはGPLです。
このソフトウェアを使用したことによるデータ消失、ハードウェアの故障、などあらゆる事故に関して作者は一切の責任を負いません。特にPSP用に作成した動画を使用したことによりPSPが壊れても作者は一切の責任を負いませんし、メーカー保証の範囲内かどうか分かりません。自己責任で使用してください。
けどまあ、少なくともうちのPSPはまだ壊れてないです。適正なファイルでない場合、動画を再生しても真っ暗なまま動かない、ということがまれに発生します。この場合はいったん電源を切れば復帰できます。スリープでは直らないので、電源が切れたことを確認できるまでスイッチを長押してください。これはバイナリエディタでファイルを直接編集したときに起こりました。普通の駄目ファイルの場合は破損データか不明データと表示されるだけでしょう。
ダウンロード
アプリケーション(Mac OS X 10.3 以上推奨。10.2.xでも動くらしい)
altShiiva0.9.1.dmg (524,399 Bytes)
コマンドライン(Mac OS X 10.3 以上推奨。10.2.xでもたぶんOK)
mp4psp0.9.1.dmg (232,065 Bytes)
ソースコード
altshiiva0.9.1src.dmg (930,690 Bytes)
altshiiva0.9.1src.tgz (888,828 Bytes)
更新履歴
0.9.1 - 2004.12.30
・タイトルの濁点、半濁点が文字化けするのを修正
・最適化のみの作業でタイトルにごみが付いていたのを修正
・最適化専用コマンドライン版 mp4psp 0.9.1 を公開
・ソースコードを公開
バグとかエンコードに関する不具合とか
現在判明している不具合
・PSP上で早送りやジャンプをすると操作不能になってしまうことがある。ムービーの実時間より長い時間(存在しない時間)にジャンプすると操作不能になることがある。
→調査中です。ATOM構造がまだ完璧じゃなかとです。
・vobの字幕がチラチラすることがある
→Video タブの Deinterlace:を Always にするとチラチラしないらしいです。
エンコード途中で落ちる、どうやってもPSPで見れない、見れたけど変、などという場合は、元ファイルの情報や行った設定をできるだけ詳細に書いて hetima@hetima.com に送ってください。コンソールに多少のログが書き出されるので、分かる方はそれも併記してください。
avi ファイルの扱いが不安定な場合は、DivX Doctor II を使っていったん mov コンテナに移し替えると安定するかもしれません。
使い方
以下はPSP動画作成に重点を置いた説明です。
Files タブ
まず「Set input file」で読み込むファイルを選びます。mov、mp4、aviなどQuickTimeで読めるものと、vobファイルを選択できます。vobは音声がAC3のものでないと駄目なようです。
「Set output mp4」で書き出すファイル名を決めます。読み書きともに日本語を含むファイルパスに対応しています。
下のチェックボックスは特にチェックしなくて良いです。
Crop & Scale タブ
出力ファイルのサイズを決めます。PSP用に書き出す場合は、「Scale」にチェックを入れて、必ず320x240あるいは160x112にしましょう。もとからこのサイズのときは、クロップしないならチェックしなくて良いです。「Displayed size」のチェックは外しましょう。ポップアップはリサイズか何かのアルゴリズムです。特にいじらなくて良いです。
Video タブ
基本は「XviD、Quantiser:4〜6、BFrames:0、Key frame interval:150〜300、Bitrate:チェックしないで空白」あたりで大丈夫です。Bitrateを設定するときはキロバイト/秒ですのでご注意を(768kbps = 96KB/s)。
「BFrames」は0にしておいた方が良いでしょう。
「fps」は書き出すファイルのfpsを設定します。ただし、mov、mp4、avi など QuickTime で読めるファイルに対してだけ有効です。あまり正確ではありません。14.985 fpsか29.97 fpsを選んでおけばPSPで再生できます。もとからPSPに対応しているfpsであれば「Same as Source」にしておいた方が仕上がりは奇麗です。1/2はfpsを半分にします。29.97fps を 14.985fps にしたい場合はこちらを選んだ方が仕上がりは奇麗です。
・Quantiser と Bitrate の関係
Quantiser は品質の設定で、数値が小さいほど高品質になります。だいたい4が基準。画質にこだわらないなら6か7くらいまで頑張れる。ファイルサイズのことは考えずにエンコードされるので、動きの激しいソースだとビットレートが上がります。そこで Bitrate を指定するわけですが、Quantiser の設定によっては希望通りのレートまで下がらないことが多いです。両方の設定を考慮して、品質とサイズの中間値で書き出される感じです。サイズを優先して設定したい場合は、Quantiser を最低の31にして、Bitrate を設定するのがいちばん正確な結果になります。
Bitrateを無闇に大きくしても、最高品質を越えるサイズにはなりません。Quantiser = 1 にするのと、Bitrate = 9999KB/s などとするのは同義と考えて良いでしょう。
Subtitles タブ
これはvobの字幕の設定です。僕はよく分かりません。
Audio タブ
「Encode audio」をチェックして、出てくるダイアログで設定してください。PSP用に書き出す場合は、サンプリングレートを必ず24KHzにしてください。ビットレートはステレオなら64kbpsくらいが適当でしょうか。
PSP タブ
PSP用に書き出す場合は、必ず「Optimize for PSP」にチェックを入れてください。
「Title」はPSP上で表示されるタイトルのことです。日本語対応。「Create THM file」にチェックを入れるとサムネイルのTHMファイルも一緒に書き出します。サムネイルの中身は、下側のプレビューをスライダーで適当に動かして、「Take THM from Current Preview」を押してください。
「Do Optimize Only」はエンコードは行わず、Files タブの「Set input file」で読み込んだファイルの最適化のみを行います。ファイルは上書きされます。ファイルはmp4であれば最適化処理は成功します。が、適切なサイズ、ビットレート、fpsでなければPSPで再生できません。
「Create THM file」にチェックを入れておくとTHMファイルも作ります。
Processing タブ
すべての設定が終わったら「Go!」ボタンを押して後は待つだけです。「Show a frame every」は0にしておいた方が速いし、安定します。エンコード中にスライダーを動かすとたまにクラッシュするのであまりいじらない方が良いでしょう。
PSPで再生できるmp4の情報(エンコード設定、ファイル名規則、など)は
http://psp.holybell.to/index.php?mp4
が詳しいです。
今後の予定 など
・音声が最後の方で途切れることがよくあるので対処したいです
・ファイル選択をドラッグ&ドロップでできるようにしたいです
・プリセットを保存できるようにしたいです
・バッチ処理できるようにしたいです
・PCM音声のvobに対応してないらしいので対応したいです
・ATOM構造の更なる解析
・正直、他のエンコーダの方が性能が良いです。altShiiva は Universal Binary でもないし……。
ライセンス
altShiiva Copyright 2004 Hetima Computer.
このソフトウエアは以下のプロジェクトをベースに作成しています。
OpenShiiva 0.8.9
http://openshiiva.sourceforge.net/
mpeg4ip 1.2
http://mpeg4ip.sourceforge.net/
xvidcore 1.0.3
http://www.xvid.org/
その他 OpenShiiva 0.8.9 に含まれるプロジェクト