Screen('PlayMovie') 動画ファイルの再生

まずは、動画を再生するデモ

SimpleMovieDemo

が動作することを確認してください。

環境によっては、GStreamerをインストールする必要があります。

GStreamer SDKのサイトからRuntimeをダウンロードします。お使いのOSおよびビット数に合ったRuntimeをダウンロードしてください。(最新のGStreamerでは動作しないこともあるようです。その場合は、help GStreamerの中にインストーラーへのリンクが記載されているので、それを試してみてください)

インストール時に注意が必要で、必ずカスタムを選択し、「Entire feature will be installed ...」を選択する必要があります。

詳しくは help GStreamer をご覧ください。

SimpleMovieDemoのソースコード(mファイル)を見てみましょう。

(コマンドウィンドウで、open SimpleMovieDemo で開きます)

moviename が、絶対パスで指定されていることに注意します。デモでは、PsychtoolboxRootを使っていますが、現在のフォルダ名を返す pwd を使うと便利です。

さらに、現在のフォルダ名(正確には現在のフォルダまでの絶対パス情報)に日本語が含まれていると動画を再生できないようです。例えば「実験プログラム」のフォルダの中に「実験1」のフォルダを作って、その中にプログラムや動画を保存してはいけないということです。フォルダ名はすべてアルファベット表記にしてください。

以下は、Screen('PlayMovie') のヘルプの和訳です。

[droppedframes] = Screen('PlayMovie', moviePtr, rate, [loop], [soundvolume]);
'moviePtr'で指定されるムービーオブジェクト(動画)の再生を開始します。
'rate'は0で再生を停止、1で普通の速度での再生、-1で普通の速度で巻き戻し再生。
'loop'で、再生を繰り返します。
'soundvolume' は音声の再生に関するもので、0はミュート、0.01から1.0のあいだの数字で音量を調節します。
OS-Xでは、 Apple社の Quicktime-7 API を使用して再生します。
Windowsなどの、その他のOSでは、Quicktimeとは異なるソフト(the playback engine)を使って再生することになるかもしれません。
戻り値(droppedframes)は、動画の再生を実時間と一致させたり、音声とのずれをなくすために、やむを得ずフレーム落ち(コマ落ち)をした場合の、フレーム数です。