高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先



QTMTB 47 - QuickTime ムービーファイルの保存

(97 年 1 月 31 日) 次に示す一連の Q&A は、QuickTime ムービーの作成と保存に際して発生する可能のある、いくつかのやっかいな問題に関連しています。

Q: 既存の QuickTime ムービーに編集を加えた後、それを保存するために最適な方法を教えてください。

A: ムービープレーヤを例に説明します。

* “保存”コマンドは、常に、オープンされているムービーファイルのムービーリソースを更新し、ムービーファイルの中にデータの "エイリアス" 参照を格納します。通常、編集を加えた後では、ファイルは再生に最適なフォーマットではなくなります。

* “別名で保存”コマンドはユーザに 2 つのオプションを提示します。
1. 新しいムービーファイルを作成する (オリジナルに対するデータ参照は維持されます)。
2. "独立再生形式" のムービーを作成する。

オプション 1 の場合、ムービープレーヤでは、CreateMovieFile を呼び出し (createMovieFileDontCreateMovie フラグをセットして)、さらに編集された "オリジナル" のムービーリソースを使って AddMovieResource を呼び出します。

ユーザがオプション 2 (独立再生形式) を選択した場合、ムービープレーヤでは、FlattenMovie ムービーを呼び出して、新しいムービーファイルとリソースを作成します (ただし、オリジナルファイルはオープンされたままです)。

Q: アプリケーションが、修正されたオリジナルファイルのムービーリソースを含んでいる場合、オプション 1 または 2 のどちらを選択すればいいでしょうか。データだけでなく (データ参照を使った)、オリジナルファイルにはトラックが追加されています。

A: どちらのオプションも正常に動作します。オプション 2 (FlattenMovie) を選択すると、新しいファイルはインターリーブされます。いずれにしてもすべてのムービーデータがディスクに書き込まれるため、このことはそれほど問題にはなりません。FlattenMovie はファイルをムービー再生に最適化します (新しいファイルを対象にフラット化を行います。オリジナルファイルに上書きしないように注意してください)。

Q: 新しいファイルで作業を続けたい場合はどうすればいいですか。

A: 新しいフラットムービーで作業をする場合は、FlattenMovieData を使います。FlattenMovieData により、新しいムービーリソースを自動的に取得することができます (AddMovieResource を使って、このリソースを新しいファイルに書き込みます)。

Q: FlattenMovieData/AddMovieResource メソッドを使う場合、オリジナルのファイルはクローズできるのでしょうか。これ以降の変更は、オリジナルのムービーではなく、新しいムービーに加えたいと思っています。

A: ファイルはクローズできます (オリジナルのムービーリソースに対して DisposeMovie を使うことを忘れないでください。オリジナルのムービーリソースはファイルをクローズした後もオリジナルファイルをポイントしています)。

注意: このルーチンを利用すると、ムービーは "Fast Start" フォーマットで格納されません。このため、Web や CD 再生に最適なものではなくなります (通常、ハードディスクはこの影響を受けません)。クロスプラットフォーム再生を前提にファイルを再生に最適なフォーマットにしたい場合は、flattenAddMovieToDataFork フラグをセットした FlattenMovie を使ってください。この後、オリジナルとまったく同様に、このムービーをオープンする必要があります (つまり、OpenMovieFile/NewMovieFromFile を使って)。

----------------------------------------------------------------------------
                                --Drew Colace
                           devsupport@apple.com
                            

[ Technical Q&A's : Graphics & Media : QuickTime : QuickTime Movie Toolbox : QTMTB 47 ]