- Script Code -
dofile(reaper.AZ_GetLuaInitPath())
require("reaper_AZSTOKE_BRONZE")
require("reaper_AZSTOKE_SILVER")
require("reaper_AZSTOKE_GOLD")
url = "p4v URL"
userName = "p4vユーザー名"
password = "p4vパスワード"
workspace = "p4vワークスペース名"
depotPath = "p4vフォルダパス"
setTime = 0
if reaper.AZ_P4_Connect(url, userName, password) then
fileList = reaper.AZ_P4_ExportAudioToProject(workspace, depotPath, "", -1, "wav", true, {".*/unuse/.*", ".*_old\\..*"})
for i, filePath in pairs(fileList) do
parentDir = reaper.AZ_GetPathInfo(filePath)["ParentName"]
track = reaper.AZ_InsertTrackSearchUniqueOnly(0, parentDir)
item = reaper.AZ_InsertMediaTrackItemSecond(track, filePath, 0, setTime)
endTime = reaper.AZ_GetMediaItemEndTime(item)
setTime = endTime + 1
end
reaper.AZ_P4_Disconnect()
end
- Warm Up -
- Script Detail -
dofile(reaper.AZ_GetLuaInitPath())
require("reaper_AZSTOKE_BRONZE")
require("reaper_AZSTOKE_SILVER")
require("reaper_AZSTOKE_GOLD")
・RIGDOCKSをインポート
url = "p4v URL"
userName = "p4vユーザー名"
password = "p4vパスワード"
workspace = "p4vワークスペース名"
depotPath = "p4vフォルダパス"
・Perforceサーバーへの接続情報を記載
setTime = 0
・メディアの挿入位置
if reaper.AZ_P4_Connect(url, userName, password) then
・Perforceサーバーに接続
fileList = reaper.AZ_P4_ExportAudioToProject(workspace, depotPath, "", -1, "wav", true, {".*/unuse/.*", ".*_old\\..*"})
・最新状態のファイルのうち、以下の条件を満たすファイルをプロジェクトフォルダに出力し、そのパスを取得
・wavファイル
・「unuse」フォルダ内に無い
・「_old.」という文字列を含まない
for i, filePath in pairs(fileList) do
・for文で各パスごとに処理を行う
parentDir = reaper.AZ_GetPathInfo(filePath)["ParentName"]
・ファイルパスの親フォルダ名を取得
track = reaper.AZ_InsertTrackSearchUniqueOnly(0, parentDir)
・親フォルダ名と同じ名前のトラックがReaper上にない場合のみ作成する
item = reaper.AZ_InsertMediaTrackItemSecond(track, filePath, 0, setTime)
・親フォルダ名と同じ名前のトラックにファイルを挿入
endTime = reaper.AZ_GetMediaItemEndTime(item)
setTime = endTime + 1
・挿入したファイルの終了位置を取得し、その1秒後を次のファイルの挿入位置とする
end
reaper.AZ_P4_Disconnect()
・各ファイルに対する処理の終了後、Perforceサーバーから切断する
end
- API LINK -
Perforce
AZSTOKE_Perforce_latest_Insert_2
不要ファイルを選別しながらPerforceで管理されたファイルをReaperにインポート












