top of page
- Script Code -

dofile(reaper.AZ_GetLuaInitPath())

require("reaper_AZSTOKE_SILVER")

require("reaper_AZSTOKE_GOLD")


cancelType,inputList = reaper.AZ_GetUserInputList("LOUDMATCHIFY",2,"ListPath:,WavPath:","D:/,D:/")


jsonStr = reaper.AZ_ReadFile(inputList[1],"savedata.txt")

loudnessTable = reaper.AZ_Json_Deserialize(jsonStr)


if cancelType then

   fileList = reaper.AZ_GetFilePathList(inputList[2],"wav")

   

   startPos = 0

   mediaInterval = 1

   

   for i, value in pairs(fileList) do

       item = reaper.AZ_InsertMediaTrackIdSecond(0,0,value,0,startPos)

       name = reaper.AZ_GetMediaItemName(item)

       reaper.AZ_SetMediaItemHANDAUTOMER(item,1)

       reaper.AZ_LOUDMATCHFY_SetVolumeForMediaItem(item ,loudnessTable, 1,0)

       maxMomentary = reaper.AZ_GetMediaItemLoudnessMaxMomentary(item)

       endPos = reaper.AZ_GetMediaItemEndTime(item)

       startPos = endPos + mediaInterval

       Msg(name)

       Msg(maxMomentary)

   end

end

- Warm Up -

  • Trackを作成しておく

  • LOUDMATCHIFYで利用可能なセーブデータを生成しておく

  • 音量調整したいファイルを用意しておく

- Script Detail -

dofile(reaper.AZ_GetLuaInitPath())

require("reaper_AZSTOKE_SILVER")

require("reaper_AZSTOKE_GOLD")


・SILVERとGOLDを利用可能にする


cancelType,inputList = reaper.AZ_GetUserInputList("LOUDMATCHIFY",2,"ListPath:,WavPath:","D:/,D:/")


・テキスト入力を可能にする。


jsonStr = reaper.AZ_ReadFile(inputList[1],"savedata.txt")


・セーブデータ先のフォルダからsavedata.txtを検索してその文字列を取得する。


loudnessTable = reaper.AZ_Json_Deserialize(jsonStr)


・取得した文字列を配列に置き換える


if cancelType then


・テキスト入力画面でOKを押した場合は以下を実行


   fileList = reaper.AZ_GetFilePathList(inputList[2],"wav")


・調整したいファイルのリストを取得

   

   startPos = 0

   mediaInterval = 1

   

   for i, value in pairs(fileList) do


・取得したリスト分Forループ


       item = reaper.AZ_InsertMediaTrackIdSecond(0,0,value,0,startPos)


・ファイルをトラック1にインサートしてitemを取得


       name = reaper.AZ_GetMediaItemName(item)


・itemの名前を取得してnameに代入


       reaper.AZ_SetMediaItemHANDAUTOMER(item,1)


・itemにHANDAUTOMERの圧縮率1をかける


       reaper.AZ_LOUDMATCHFY_SetVolumeForMediaItem(item ,loudnessTable, 1,0)


・itemにLOUDMATCHIFYを実行、セーブデータの配列を読み込んで音量調整


       maxMomentary = reaper.AZ_GetMediaItemLoudnessMaxMomentary(item)


・itemの現段階のmaxMomentaryを出力


       endPos = reaper.AZ_GetMediaItemEndTime(item)


・終了位置を取得


       startPos = endPos + mediaInterval


・次のオーディオ位置を設定


       Msg(name)

       Msg(maxMomentary)


・名前とラウドネス値をコンソールに出力


   end

end

- API LINK -

AZ_GetUserInputList

AZ_ReadFile

AZ_Json_Deserialize

AZ_GetFilePathList

AZ_InsertMediaTrackIdSecond

AZ_GetMediaItemName

AZ_SetMediaItemHANDAUTOMER

AZ_LOUDMATCHFY_SetVolumeForMediaItem

AZ_GetMediaItemLoudnessMaxMomentary

AZ_GetMediaItemEndTime

LOUDMATCHIFY

AZSTOKE_LOUDMATCHIFY_ACTION_1

「LOUDMATCHIFY」-Part2- 名称検知ラウドネスの実行

01_BRONZE_ss_edited.png
01_SILVER_edited_edited.png
03_GOLD_edited_edited.png
bottom of page