MATLAB Function Reference | ![]() ![]() |
フレームを Audio Video Interleaved (AVI) ファイルに付加します。
表示
aviobj = addframe(aviobj,frame)
aviobj = addframe(aviobj,frame1,frame2,frame3,...)
aviobj = addframe(aviobj,mov)
aviobj = addframe(aviobj,h)
詳細
aviobj = addframe(aviobj,frame)
は、frame
の中のデータを、avifile
を前もってコールすることにより作成されるaviobj
で識別できる AVI ファイルに付加します。frame
は、インデックス付きイメージ(m
行n
列の大きさ)、または、double
、uint8
の精度をもつトゥールカラーイメージ(m
x n
x 3)のどちらかです。 frame
が、AVIファイルに付加される最初のフレームでない場合、前のフレームの次元と整合性を保つ必要があります。
addframe
は、更新されたAVI
ファイルオブジェクトaviobj
のハンドルを出力します。たとえば、addframe
は、あるフレームをAVIファイルに付加する度に、AVIファイルオブジェクトのTotalFrames
プロパティを更新します。
aviobj = addframe(aviobj,frame1,frame2,frame3,...)
を使って、複数のファイルをAVIファイルに付加します。
aviobj = addframe(aviobj,mov)
は、MATLABムービ の中に含まれるフレームmov
をAVIファイルaviobj
に付加します。カラーマップが前もって設定されていない限り、インデックス付きイメージとしてフレームをストアしているMATLAB ムービは、最初のフレームのカラーマップを自身のカラーマップとして使います。
aviobj = addframe(aviobj,h)
は、フィギュア、または、軸ハンドルh
からフレームを求め、AVIファイルにこのフレームを付加します。addframe
は、AVIファイルに付加する前に、フィギュアをオフスクリーン配列にレンダリングします。これは、フィギュアが、他のウインドウ、または、スクリーンセーバの影響で、スクリーン上ではっきりしない場合でさえ、正しく AVI ファイルをフィギュアとして記述することを保証します。
注意 アニメーションが、XORグラフィックスを使用している場合、getframe を使って、MATLABムービのフレームにグラフィックスを捕らえる必要があります。その後で、addframe のシンタックス、aviobj = addframe(aviobj,mov) を使って、AVIムービにフレームを付加することができます。これらについては、例題を参照してください。
|
例題
つぎの例題は、addframe
をコールして、フレームをAVIファイルオブジェクトaviobj
に付加するものです。
fig=figure; set(fig,'DoubleBuffer','on'); set(gca,'xlim',[-80 80],'ylim',[-80 80],... 'nextplot','replace','Visible','off') aviobj = avifile('example.avi') x = -pi:.1:pi; radius = 0:length(x); for i=1:length(x) h = patch(sin(x)*radius(i),cos(x)*radius(i),... [abs(cos(x(i))) 0 0]); set(h,'EraseMode','xor'); frame = getframe(gca); aviobj = addframe(aviobj,frame); end aviobj = close(aviobj);
参考
![]() | acsc, acsch | addpath | ![]() |