メインコンテンツ

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 hidden axes object contains an object of type image.

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

clear xyloObj

入力引数

すべて折りたたむ

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

拡張機能

すべて展開する

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

バージョン履歴

R2014b で導入