top of page
- Script Code -

dofile(reaper.AZ_GetLuaInitPath())

require("reaper_AZSTOKE_BRONZE")

require("reaper_AZSTOKE_SILVER")

require("reaper_AZSTOKE_GOLD")


retval, inputList = reaper.AZ_GetUserInputList("", 2, "Source Path,Excel Path", ",")


if retval then


    sourceParentPath = inputList[1]

    

    excelPath = inputList[2]

    

    track = reaper.AZ_InsertTrackSearchUniqueOnly(0, "work")

    

    sourcePathList = reaper.AZ_GetFilePathList(sourceParentPath, "wav")

    

    items = reaper.AZ_InsertMediaItems(track, sourcePathList, 0, 1)

    

    excel = reaper.AZ_Excel_OpenFile(excelPath)

    

    worksheet = reaper.AZ_Excel_OpenWorksheet(excel, "volume")

    

    for i, item in pairs(items)do

    

      itemName = reaper.AZ_GetMediaItemName(item)

      

      searchResult = reaper.AZ_Excel_SearchRowsInWorksheet(worksheet, itemName, "A")

      

      volume = 0

      

      for k, v in pairs(searchResult["Cells"]) do

      

          volume = v["B"]

      end

      

      if volume ~= 0 then

      

          reaper.AZ_SetMediaItemVolume(item, volume)


      end

      

    end

    

    reaper.AZ_Excel_CloseFile(excel)

  

end

- Warm Up -

  • Excelファイルを用意する

  • インポートする音声ファイルを用意する

- Script Detail -

dofile(reaper.AZ_GetLuaInitPath())

require("reaper_AZSTOKE_BRONZE")

require("reaper_AZSTOKE_SILVER")

require("reaper_AZSTOKE_GOLD")


・RIGDOCKSをインポート


retval, inputList = reaper.AZ_GetUserInputList("", 2, "Source Path,Excel Path", ",")


・必要事項の入力を要求


if retval then


    sourceParentPath = inputList[1]

    

・入力値から音声ファイルの親フォルダのパスを取得


    excelPath = inputList[2]


・入力値からExcelファイルのパスを取得

    

    track = reaper.AZ_InsertTrackSearchUniqueOnly(0, "work")

    

・「work」という名前のトラックを作成


    sourcePathList = reaper.AZ_GetFilePathList(sourceParentPath, "wav")

    

・親フォルダの配下にある音声ファイルのパスを全て取得


    items = reaper.AZ_InsertMediaItems(track, sourcePathList, 0, 1)

    

・音声ファイルを「work」トラックに挿入


    excel = reaper.AZ_Excel_OpenFile(excelPath)

    

・エクセルファイルを開く


    worksheet = reaper.AZ_Excel_OpenWorksheet(excel, "volume")

    

・エクセルファイルの「volume」ワークシートを開く


    for i, item in pairs(items)do

    

      itemName = reaper.AZ_GetMediaItemName(item)

    

・メディアアイテムの名前を取得


      searchResult = reaper.AZ_Excel_SearchRowsInWorksheet(worksheet, itemName, "A")

    

・ワークシート内にメディアアイテム名に対応する行があるか検索


      volume = 0

      

      for k, v in pairs(searchResult["Cells"]) do

      

          volume = v["B"]

    

・対応する行がある場合、B列に記載された音量値を取得する


      end

      

      if volume ~= 0 then

      

          reaper.AZ_SetMediaItemVolume(item, volume)

    

・音量値が取得できた場合のみ、メディアアイテムの音量値をその値に設定する


      end

      

    end

    

    reaper.AZ_Excel_CloseFile(excel)

    

・Excelファイルを閉じる


end



- API LINK -

Excel

AZSTOKE_Excel_SetVolume_1

音声ファイルをReaperにインポートし、音量値をExcelファイルのデータに合わせる

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