Difference between revisions of "IC Python API:Audio Driven"
From Reallusion Wiki!
Chuck (RL) (Talk | contribs) m (→Code Flow) |
Chuck (RL) (Talk | contribs) m (→Steps to Take) |
||
Line 41: | Line 41: | ||
== Steps to Take == | == Steps to Take == | ||
+ | # Clone or download the Reallusion/iClone GitHub. | ||
+ | # Copy '''AudioDriven''' folder into the iClone install directory > '''...\Bin64\OpenPlugin'''. | ||
+ | # Load the script into the project from the menu: '''Plugins > Python Samples > Audio Driven'''. | ||
+ | # Load an audio file in .wav format. | ||
+ | # Select a prop in the scene. | ||
+ | # Adjust the animation parameters and click the '''Apply''' button when finished. | ||
== Code Flow == | == Code Flow == |
Revision as of 19:40, 27 June 2019
- Main article: RL Python Samples.
Demo Video
Description
This script lets the user pick an audio file in wave format and apply an interpretation of it in movement to a selection of props.
Course Prerequisites
Make sure to install Numpy and Scipy Python modules by following the instructions here.
You should familiarize yourself with the following fundamental articles before you proceed:
Learn How to
- Deal with audio files and data.
- Drive complex prop animations.
- Create complex and responsive user interface elements.
Required Files
- iClone scene with one or more props.
- An audio file in wave (*.wav) format.
- Audio Driven Python script.
- Audio Driven Extensions Python script.
You can download this plugin from the Reallusion Marketplace. To acquire and view the source code, please visit Reallusion GitHub.
Steps to Take
- Clone or download the Reallusion/iClone GitHub.
- Copy AudioDriven folder into the iClone install directory > ...\Bin64\OpenPlugin.
- Load the script into the project from the menu: Plugins > Python Samples > Audio Driven.
- Load an audio file in .wav format.
- Select a prop in the scene.
- Adjust the animation parameters and click the Apply button when finished.
Code Flow
APIs Used
You can research the following references for the APIs deployed in this code.
main.py
- RLPy.REventCallback.__init__()
- RLPy.RDialogCallback.__init__()
- RLPy.REventHandler.UnregisterCallback()
- RLPy.REventHandler.RegisterCallback()
- RLPy.RUi.CreateRDialog()
- RLPy.RAudio.CreateAudioObject()
- RLPy.RGlobal.GetFps()
- RLPy.RScene.FindObject()
- RLPy.RScene.RemoveObject()
- RLPy.RTransformKey()
- RLPy.RGlobal.GetTime()
- RLPy.RTime.GetFrameIndex()
- RLPy.RTransform()
- RLPy.RTime()
- RLPy.RTime.IndexedFrameTime()
- RLPy.RAudio.LoadAudioToObject()
- RLPy.RGlobal.Play()
- RLPy.RGlobal.GetStartTime()
- RLPy.RRgb()
- RLPy.RKey()
- RLPy.RUi.GetMainWindow()
- RLPy.RUi.AddMenu()