0

こんにちは
、avi ファイルを表示する短いプログラムを作成しました。ムービーの実行中に (終了後ではなく) キーボードから入力を取得するプログラムが必要です: これが私のコードです:

figure('MenuBar','none')
set(gcf,'Color', 'white') set(gca,'Color'
,'white');
set(gca,'XColor','白');
set(gca,'YColor','白');
m=aviread('c:/t1.avi')
a=30:1:100;
b=100:-1:30;
c=[ababababab] %ムービーを前後に実行する
movie(m,c) %ムービーを実行する

助けてくれてありがとう
アリエル

4

4 に答える 4

1

ビデオを UIPanel (または別の適切な GUI アイテム) に挿入し、KeyPressFcn コールバックを使用することができます。これを見てください:Callback Sequencing and Interruption(機能するかどうかはわかりませんが、おそらく試してみる価値があります)。

于 2011-01-19T12:57:15.030 に答える
0

私の知る限り、MATLAB のマルチスレッドまたは並列処理機能は限られています。ただし、救済策があるようです。この記事では、MEX ファイルを使用して MATLAB と C++ コードを組み合わせる方法について説明します。

これを試したことがないことを認めなければならないので、あなたの場合にうまくいくとは言えませんが、始めるには良い場所です.

于 2011-01-19T10:53:38.717 に答える
0

解決策は winopen('c:/filename.avi') を使用することです

winopen('c:/filename.avi')
このコマンドは、メディア プレーヤーを開き、matlab スクリプトで次のコマンドを実行します。映画が終わるのを待ちません。バックグラウンドで実行されます。
ありがとう
アリエル

于 2011-01-19T16:59:51.423 に答える
0

入力を監視するように設計されていない限りmovie()、マルチスレッドにする必要があると思います。他の回答の1つからすると、少し複雑に聞こえます。

ビデオの短いセクションを再生してから、come コードを実行して入力をチェックし、ビデオの次のビットを再生することができます。ただし、ビデオの再生中にユーザーが入力バッファに入力することを期待できるかどうかはわかりません。

于 2011-01-19T12:58:03.547 に答える