2011年10月25日火曜日

Foobar2000で動画再生を実現するfoomciの公開

上のアイコンをクリックするとDLが開始します。

 

シーク・ウインドウサイズ変更、ディバッグウインドウ等の新たな機能を実装。

wmpで再生できるファイルはおおかた再生できます。

 

   1:  //変数初期化
   2:  //2011-10-25最終更新
   3:  cmd = "";
   4:  foomci = "foomci.exe";
   5:  IsFoomciExec = 0;
   6:  IsDebugModeOn = 0;
   7:  IsCDTray = 0;
   8:   
   9:  function on_playback_new_track(metadb){
  10:      if (IsFoomciExec==1){
  11:          v = fb.Volume;
  12:          fb.VolumeMute();
  13:          cmd = "exitfoomci"
  14:          sendMciCmd2foomci_cl();
  15:          IsFoomciExec = 0;
  16:          fb.play();
  17:          fb.volume = v;
  18:      }
  19:      else{
  20:          v = fb.Volume;
  21:          fb.VolumeMute();
  22:          ext=fb.TitleFormat("$ext(%_path%)").Eval(true)
  23:          if ((ext == "avi")|(ext == "mpg")|(ext == "wmv")|(ext == "mp4")){
  24:              var WshShell = new ActiveXObject("WScript.Shell");
  25:              fb.Stop();
  26:              IsFoomciExec = 1;
  27:              WshShell.Run(foomci+" "+window.id+"*"+window.Width+"*"+window.Height+"*"+fb.TitleFormat("%_path%").Eval(true)+"*foobar2000.exe /runcmd=Playback/Next*playermode");
  28:          }
  29:          fb.volume = v;
  30:      }
  31:  }
  32:   
  33:  function on_size(){
  34:      ww = window.Width;
  35:      wh = window.Height;
  36:      cmd = "put flv destination at "+0+" "+0+" "+ww+" "+wh;
  37:      sendMciCmd2foomci_cl();
  38:  }
  39:  function on_mouse_lbtn_down(x, y) {
  40:      if(y<wh/2){
  41:          if(IsDebugModeOn==0){
  42:              cmd = "debugmodeOn";
  43:              sendMciCmd2foomci_cl();
  44:              IsDebugModeOn=1;
  45:          }
  46:          else{
  47:              cmd = "debugmodeOff";
  48:              sendMciCmd2foomci_cl();
  49:              IsDebugModeOn=0;
  50:          }            
  51:      }
  52:      else{
  53:          cmd = "seek*"+x+"*"+ww;
  54:          sendMciCmd2foomci_cl();
  55:      }
  56:  }
  57:  function sendMciCmd2foomci_cl(){
  58:     if (IsFoomciExec == 1){
  59:          var WshShell = new ActiveXObject("WScript.Shell");
  60:          WshShell.Run(foomci+" "+cmd);
  61:     }
  62:  }
 


0 件のコメント:

コメントを投稿