Main Content

hasFrame

ビデオ フレームが読み取り可能かどうかを判別

説明

tf = hasFrame(v) は、v に関連付けられているファイルから読み取り可能なビデオ フレームがある場合は logical 1 (true) を返します。その他の場合は logical 0 (false) を返します。

すべて折りたたむ

サンプル ビデオ ファイル xylophone_video.mp4VideoReader オブジェクトを作成します。

v = VideoReader("xylophone_video.mp4");

ビデオから、1 フレームずつすべてのフレームを読み取ります。

while hasFrame(v)
    frame = readFrame(v);
end

readFrame によって返された最後のフレームに関する情報を表示します。

whos frame
  Name         Size                Bytes  Class    Attributes

  frame      240x320x3            230400  uint8              

VideoReader オブジェクトをクリアします。

clear v

サンプル ビデオ ファイル xylophone_video.mp4VideoReader オブジェクトを作成します。次にビデオの幅と高さを決めます。

xyloObj = VideoReader("xylophone_video.mp4");
vidWidth = xyloObj.Width;
vidHeight = xyloObj.Height;

ビデオ構造体配列を作成します。

mov = struct("cdata",zeros(vidHeight,vidWidth,3,"uint8"),colormap=[]);

ビデオの最後までフレームを 1 つずつ読み取ります。

k = 1;
while hasFrame(xyloObj)
    mov(k).cdata = readFrame(xyloObj);
    k = k+1;
end

ビデオの幅と高さに基づいて Figure のサイズを設定し、ビデオを 1 回再生します。

vf = figure(Position=[0 0 xyloObj.Width xyloObj.Height]);
imshow(mov(1).cdata,Border="tight")
movie(vf,mov,1,xyloObj.FrameRate)

Figure contains an axes object. The axes object contains an object of type image.

VideoReader オブジェクトをクリアします。

clear xyloObj

入力引数

すべて折りたたむ

入力 VideoReader オブジェクト。関数 VideoReader を使用してビデオ ファイルから VideoReader オブジェクトを作成します。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2014b で導入