Master Audio Playlist Integration with SALSA LipSync:
NOTE: A small update (v1.0.2) to the workflow script has been released. Please see the 'Release Notes' section below.
We've created a set of helper-scripts to link up Dark Tonic's Master Audio Playlist functionality with our SALSA 2D and 3D components. This workflow allows you to drive lip-sync from a playlist created and managed in Master Audio.
The asset package download contains two C# helper-scripts, one for 2D asset components and one for 3D asset components. The SALSA Unity asset is connected to the Master Audio playlist's current AudioClip and is updated via Master Audio's PlaylistController.SongChanged event.
PLEASE NOTE: Master Audio is an awesome, top-selling, top-rated Unity asset created by Dark Tonic and is not affiliated with, or supported by Crazy Minnow Studio. Please contact Dark Tonic Games for information about Master Audio.
Brief instructions are available below, but you can watch the short video on our YouTube channel and follow along if you prefer.
NOTE: While every attempt has been made to ensure the safe content and operation of these files, they are provided as-is, without warranty or guarantee of any kind. By downloading and using these files you are accepting any and all risks associated and release Crazy Minnow Studio, LLC of any and all liability.
- Download and import the helper-script unitypackage into your project.
- Add a Master Audio prefab to your scene via the Master Audio Manager window.
- Setup a new playlist and add clips. NOTE: you may want/need to 'Override' the playlist's 'Crossfade Mode' and set the time to 0.
- Add a Playlist Controller prefab to your scene via the Master Audio Manager window.
- Configure the Playlist Controler GameObject to use the new playlist created in step #3.
- Add the appropriate Salsa2D or Salsa3D asset component to your 2D or 3D GameObject.
- Add the appropriate 2D or 3D helper-script to the GameObject using SALSA (as shown in the screenshot).
- Choose whether to mute the Master Audio playlist (recommended).
- Choose whether to autodetect (recommended), force, or ignore Playlist synchronization (see Release Notes section below)
- Link the Playlist Controller (from step #4) to the helper-script's 'Playlist' slot.
- Play your scene for some playlist-driven, lip-syncing goodness.
- Using Master Audio to drive/feed SALSA's lip-sync technology with audio clips has the side effect of both Master Audio and SALSA playing the same clip simultaneously. While this may not be perceptable on some systems, odds are it is not desireable whether it is audible or not. In version 1.0.1 of the workflow script, a boolean flag is now available that will mute the Master Audio Playlist. This is applied in Awake(), so changes during runtime will not affect script logic. However, this can be overridden at runtime, externally in other scripts or actions if desired.
- Master Audio's playlist synchronization feature may produce timing issues with SALSA's lip-sync audio clip timing when using earlier versions of this script (prior to v1.0.2). This effect will not be noticeable when using the "mute" feature in Release Notes item #1 and lip-synchronization itself is not affected. Master Audio Playlist Synchronization functionality is now supported in this helper script (v1.0.2+). There are two options available: "Autodetect Sync Mode" and "Force Sync Mode". Autodetect will check the current clip's SongFadeInPosition mode and if set to "Synchronize Clips", SALSA's AudioSource.time will be synchronized with the Master Audio Playlist's current AudioSource.time. If, for some reason, autodetect mode is not working correctly, use "Force Sync Mode" to indiscriminately force SALSA's AudioSource to synchronize with the Master Audio Playlist's AudioSource. NOTE: "Force Sync Mode" overrides the "autodetect" mode.
Check out the short video tutorial/demonstration:
Simple Automated Lip Sync Approximation
~ We look forward to seeing what you create! ~