0
0

More than 3 years have passed since last update.

#ADX2 ロボット機能でCSVの内容に従ってキューを再生する

Last updated at Posted at 2021-02-09

はじめに

ADX2ロボット機能で、
自動再生するようなスクリプトを作ってみた。

今回は、CSV形式の情報を読みつつ再生しています。

用途は

  • とりあえず登録したデータを音で聞いて変なところが無いかとかチェック
  • テキストの内容をあっているかをざっくりと確認する
  • 流して聞いておかしなことが無いか(音質が他と違うなど)

といった時に使えるかもしれない。
スクリプトを使わなくてもツリーやリスト上で再生していけばよかったりもしますが、
CSVで再生内容とかも同時に表示してあげているので、よりチェック力があがるかもしれません。

やっていること

選択しているキューシートの
キューを集めて
csvを読み込んで
ログも表示しつつ
キュー名と同じものがあれば、

CSVのフォーマット

こんな感じで、
最初のところに番号(これがキュー名)
英語のテキスト、日本語のテキスト

といったCSV(今回はカンマじゃなくてタブ区切りですが)を用意しました。

image.png

スクリプト

PreviewVoice.py
# --Description:[tatmos]ボイスの内容を表示しつつ再生する
import sys
import cri.atomcraft.project
import cri.atomcraft.project as acproject
import cri.atomcraft.debug as acdebug
import cri.atomcraft.preview as acpreview
import csv

# 選択しているキューシートを得る
selected_CueSheets = acproject.get_selected_objects("CueSheet")["data"]
if not selected_CueSheets :
    acdebug.warning("生成するキューシートを選択してください.")
    sys.exit()

cues = list()
#キューを取得
for cusheet in selected_CueSheets:
    acdebug.log("cusheet Path:\"{0}\"".format(acproject.get_object_path(cusheet)["data"] ))
    #キューを集める 
    cues = acproject.find_objects(cusheet, "Cue")["data"]    

#csvを読む
with open('C:/MyDearest/UranusSenarioText.csv', 'r', encoding="utf_8") as f:
    reader = csv.reader(f, delimiter='\t')
    for row in reader:      
        acdebug.log("{0},{1},{2}".format(row[0],row[1],row[2]));
        for cue in cues:
            cue_name = acproject.get_value(cue, "Name")["data"]
            if cue_name == row[0]:
                # キューを再生
                acpreview.start_playback_cue(cue)
                break

実行すると

ログにCSVの内容を表示しつつ音を再生していきます
image.png

改善点としては

  • UIをつけて、一時停止や、任意送りできるようにする
  • 再生が終わるまで待ってから次のものを再生する
  • テキストIDを入れたら、それだけを再生する

など、UIをつけると良さそう。(現状だとUIはリモート型にする必要があるので今回はパス)

おわりに

現状のADX2ロボットでできることは、キューの再生・停止のみなので、
今後もっと拡張されていくといろいろできるようになると思う。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0