全体のコード

tutorial02-1_new_basic_project.py

1 # --Description:[チュートリアル]プロジェクト〜キューまでの基本再生データ作成と保存
2 
3 import sys
4 import os
5 # cri atomcraft モジュールの読み込み
6 import cri.atomcraft.debug as acdebug
7 import cri.atomcraft.project as acproject
8 
9 # 作成するプロジェクト名
10 project_name = "TutorialProject_Robot"
11 # プロジェクトを作成する場所
12 projects_dir = os.path.expanduser('~/Documents/CRIWARE/CriAtomCraft/projects')
13 if not os.path.isdir(projects_dir):
14  os.makedirs(projects_dir)
15 
16 # チュートリアル用波形ファイルの場所
17 data_dir = os.path.dirname(os.path.dirname(__file__)) + '/tutorial_data'
18 
19 
20 # プロジェクト作成
21 result = acproject.create_project(projects_dir, project_name, True)
22 if not result["succeed"]:
23  acdebug.warning("Failed Create Project")
24  sys.exit()
25 
26 # ワークユニット作成
27 result = acproject.create_workunit("WorkUnit_Tutorial", True, None)
28 if not result["succeed"]:
29  acdebug.warning("Failed Create WorkUnit")
30  sys.exit()
31 
32 # ワークユニット情報を取得
33 workunit = result["data"]
34 
35 # マテリアルルートフォルダー取得
36 material_rootfolder = acproject.get_material_rootfolder(workunit)["data"]
37 
38 # マテリアルルートフォルダに波形ファイルを登録
39 material = acproject.register_material(material_rootfolder, data_dir+"/tutorial_data01/gun1_High.wav")["data"]
40 
41 
42 # ----- キューシート・キューの作成 -----
43 # キューシートフォルダを取得
44 cuesheet_rootfolder = acproject.get_cuesheet_rootfolder(workunit)["data"]
45 
46 # キューシートフォルダ「WorkUnit_Tutorial」を取得
47 cuesheet_folder = acproject.get_child_object(cuesheet_rootfolder, "CueSheetFolder", "WorkUnit_Tutorial")["data"]
48 
49 # キューシートフォルダにキューシートを作成
50 cuesheet = acproject.create_object(cuesheet_folder, "CueSheet", "Tutorial")["data"]
51 
52 # ----- キュー・トラック・ウェーブフォームリージョンを作成 -----
53 # キューを作成
54 cue = acproject.create_object(cuesheet, "Cue", "gun1_High")["data"]
55 # トラックを作成
56 track = acproject.create_object(cue, "Track", "Track")["data"]
57 # マテリアルを指定してウェーブフォームリージョンを作成
58 waveform_region = acproject.create_waveform_region(track, material)["data"]
59 
60 
61 # プロジェクトの保存
62 result = acproject.save_project_all()
63 if not result["succeed"]:
64  acdebug.warning("プロジェクトファイルの保存に失敗しました。")