top of page

2

File/Folder

AZSTOKE_InsertMediaOrinalFolderCreate

フォルダ生成Part1-メディアインサートに専用フォルダを生成メディア名が被る問題解決!!

RANK

os = reaper.GetOS()


if "Win" == string.match(os,"(Win)") then

   package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dll"

else

   package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dylib"

end

require("reaper_AZSTOKE_SILVER")



function Msg(param)

   reaper.ShowConsoleMsg(tostring((param)).."\n")

end


retval,inputList = AZ_SILVER.AZ_GetUserInputList("insertMedia",1,"path:","D:/")


if retval then

   _,filePathList = AZ_SILVER.AZ_GetFilePathList(inputList[1],"wav")


   _,_,addPath = reaper.AZ_SetProjectPathFolder("AZSTOKE",3)

   _,beforePath,afterPath = reaper.AZ_SetProjectInfoRecAddPath(0,addPath)


   startPos = 0


   for i, value in pairs(filePathList) do

       item = reaper.AZ_InsertMediaTrackIdSecond(0,1,filePathList[i],0,startPos)

       _,endTime = reaper.AZ_GetMediaItemEndTime(item)

       startPos = endTime + 1

   end


   reaper.AZ_SetProjectInfoRecPath(0,beforePath)

end

os = reaper.GetOS()


if "Win" == string.match(os,"(Win)") then

   package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dll"

else

   package.cpath = package.cpath .. ";"..reaper.GetResourcePath() .."/UserPlugins/?.dylib"

end

require("reaper_AZSTOKE_SILVER")


・SilverAPIを利用可能にする



function Msg(param)

   reaper.ShowConsoleMsg(tostring((param)).."\n")

end


・デバック用コンソール出力関数を用意


retval,inputList = AZ_SILVER.AZ_GetUserInputList("insertMedia",1,"path:","D:/")


・UserInputでテキスト入力画面をinputListに入力


if retval then


・テキストボックスでOKを押したら以下を実行


   _,filePathList = AZ_SILVER.AZ_GetFilePathList(inputList[1],"wav")



・テキスト入力したパス情報に入っているファイルを出力


   _,_,addPath = reaper.AZ_SetProjectPathFolder("AZSTOKE",3)


・プロジェクトの録音フォルダに専用フォルダを作成、現在時刻をフォルダ名に追記して生成


   _,beforePath,afterPath = reaper.AZ_SetProjectInfoRecAddPath(0,addPath)


・プロジェクトの録音フォルダに作成したフォルダを設定


   startPos = 0


・開始位置を0に設定


   for i, value in pairs(filePathList) do


・ファイルパス分ループ再生


       item = reaper.AZ_InsertMediaTrackIdSecond(0,1,filePathList[i],0,startPos)


・指定トラックIDと指定秒数にメディアをインサートする


       _,endTime = reaper.AZ_GetMediaItemEndTime(item)


・インサートしたメディアの終了時間を出力してendTimeに保存


       startPos = endTime + 1


・終了時間から1秒追加してStartPosに設定

   end


   reaper.AZ_SetProjectInfoRecPath(0,beforePath)


・プロジェクト設定の録音フォルダを前に戻す対応

end

APIの利用にはプランに加入し

専用APIをダウンロード

する必要があります。

​※SILVERは5月中の公開を予定しております

  • インサートする用のメディアを用意しておく

- Script Code -
- Script Image -
- Warm Up -
- Script Detail -
- API LINK -

LUA

​ReaScript File Download 👇

​※実行するには専用APIが必要です

- Script Download -
bottom of page