why duplicate audiomixer??

I included audiomixer in ‘addressable groups’.
The group is newly created, and ‘audiomixer resource’ exists in the sounds folder.
We proceeded with ‘custom build’ referring to addressable manual, and set ‘play mode script’ to ‘use existing build’ in editor and played.
However, while loading using addressable during play of scene, an error occurred in the array due to duplicate audiomixer.


internal bool GetResourceLocations(object key, Type type, out IList locations)
{
if (type == null && (key is AssetReference))
type = (key as AssetReference).SubOjbectType;

key = EvaluateKey(key);

locations = null;
HashSet current = null;
foreach (var locatorInfo in m_ResourceLocators)
{
var locator = locatorInfo.Locator;
IList locs;
if (locator.Locate(key, type, out locs))
{
if (locations == null)
{
//simple, common case, no allocations
locations = locs;
}
else
{
//less common, need to merge…
if (current == null)
{
current = new HashSet();
foreach (var loc in locations)
current.Add(loc);
}

current.UnionWith(locs);
}
}
}

if (current == null)
return locations != null;

locations = new List(current);
return true;
}

The code above identified duplicate audiomixer in ‘locs’ in ‘lListlocs;’ section.

I need your advice on how to solve this problem.

Hi @Park-Junhyeong this is a bug that will be fixed in the next release (1.20.2)
“Fixed issue where Serializable types of structs and class members of MonoBehaviour or ScriptableObjects would be returned as a location with GetResourceLocations but would not be loadable.”

This bug was caused by a recent change in the editor that affected the behavior of GetResourceLocations.

In the mean time if you’re able to create a copy of the Addressables package and modify its code, you could try this workaround