Skip to content

MovieManager

MIZUTANI KIRIN edited this page May 14, 2020 · 4 revisions

概要

外部動画の読み込み、動画の再生/停止などの関数をまとめたManagerです。

使い方

  1. KirinUtilが導入されていない場合導入作業をしてください。
  2. MovieManagerが追加されてない場合Menu > KirinUtil > Add Class > MovieManagerを選択して追加してください。
  3. MovieManagerはAVProVideoが必要です。プロジェクトに「AVProVideo」をインポートしてください。
  4. Inspector > Util > BasicのMovieManagerボタンを押すとUtilのあるGameObject直下にMovieManagerが追加されます。
  5. Inspectorで画像ファイルパスなどを登録していきます。
    MovieManager
  6. このクラスをコードで使うときはusing KirinUtil;を書いてください。

Inspector説明

  rootPath:
    読み込む動画の基準ルートフォルダを指定します。
    [dataPath] Application.dataPathを基準にします。
    [persistentDataPath] Application.persistentDataPathを基準にします。
    [temporaryCachePath] Application.temporaryCachePathを基準にします。
    [streamingAssetsPath] Application.streamingAssetsPathを基準にします。
  
  movieDirPath:
    rootPathを基準に相対パスで画像の場所を指定します。
  
  uiMovies:
    ここに必要な動画の分だけ情報を登録していきます。
  
  fileName:
    動画のファイル名を拡張子付きで指定します。
  
  obj:
    動画を表示したい空のGameObjetを指定します。
    
  visible:
    [True] objを表示します。
    [False] objを非表示にします。
    
  loop:
    [True] ループ再生になります。
    [False] 1度だけ再生されます。
    
  volume:
    音声の大きさを指定します。(0.0f-1.0f)
    
  LoadedUIMovieEvent():
    uiMoviesに登録した全ての動画が読み込まれたら実行されます。
    
  MovieFinishEvent(Int32):
    動画の再生が終わったら呼び出されます。引数はuiMoviesに登録したList番号です。

関数一覧

void LoadUIMovies()

uiMoviesに登録された動画を読み込みます。

// Example
private void Start(){
  Util.movie.LoadUIMovies();
}

void Play(int num)

動画を再生します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
}

void Pause(int num)

動画を一時停止します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
  
  Util.movie.Pause(0);
}

bool IsPlay(int num)

動画が再生中かどうかをboolで返します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
  
  bool isPlay = Util.movie.IsPlay(0);  // True
}

bool IsPause(int num)

動画が一時停止中かどうかをboolで返します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
  Util.movie.Pause(0);
  
  bool isPlay = Util.movie.IsPause(0);  // True
}

void Stop(int num)

動画を停止します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
  
  Util.movie.Stop(0);
}

void Rewind(int num)

動画を初めに巻き戻して再生します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Rewind(0);
}

void Seek(int num, float seekTime)

動画を指定した秒数に移動します。

  num:
    uiMoviesのList番号を指定します。
    
  num:
    移動したい秒数を指定します。
// Example
private void Start(){
  Util.movie.Seek(0, 1.0f);
}

void float GetCurrentTimeMs(int num)

動画の現在の再生位置(ミリ秒)を返します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
  
  float time = Util.movie.GetCurrentTimeMs(0);
}

float GetCurrentTimeSec(int num)

動画の現在の再生位置(秒)を返します。

  num:
    uiMoviesのList番号を指定します。
// Example
private void Start(){
  Util.movie.Play(0);
  
  float time = Util.movie.GetCurrentTimeSec(0);
}

void UnloadMovie(int num)

動画をアンロードします。

  num:
    uiMoviesのList番号を指定します。

void UnloadAllMovies()

uiMoviesに登録された動画を全てアンロードします。

  num:
    uiMoviesのList番号を指定します。