Search Issue Tracker

Active

Under Consideration for 6000.5.X

Votes

0

Found in

6000.3.6f1

6000.4.0b6

6000.5.0a7

Issue ID

UUM-133969

Regression

No

Pipes are not working for nested generators

Audio Authoring

-

Description
Sending data via {{ProcessorInstance.Pipe}} in a nested generator throws an exception.

Initial setup

Download, unzip and open the attached Unity project {}sap-message-pipe-repro{}.

Reproduction steps

  1. Open the scene SampleScene
  2. Enter play mode

Expected behaviour

Nothing unusual should happen.

Actual behavior

An exception is thrown every frame, spamming the console.

Reproducible with versions

6000.3.6f1, 6000.4.0b6, 6000.5.0a7

Not reproducible with versions

Not relevant for versions pre 6.3 as the feature did not exist in versions prior to that.

Can’t test with versions

Not relevant for versions pre 6.3.

Tested on (OS): 

macOS 26.2

Logs and Links

Stack trace:

{{InvalidOperationException: DualThreadHandle is not valid, cannot get available data.}}
{{UnityEngine.Audio.ProcessorInstance+Pipe.GetAvailableData[TAudioContext] (TAudioContext context) (at /opt/UnitySrc/unity1/Modules/Audio/Public/ScriptableProcessors/ScriptBindings/ScriptableProcessor.bindings.cs:262)}}
{{SynthAsset+Realtime.Process (UnityEngine.Audio.RealtimeContext& context, UnityEngine.Audio.ProcessorInstance+Pipe pipe, UnityEngine.Audio.ChannelBuffer buffer, UnityEngine.Audio.GeneratorInstance+Arguments args) (at Assets/Scripts/Child.cs:23)}}
{{SynthAsset+Realtime.UnityEngine.Audio.GeneratorInstance.IRealtime.Process (UnityEngine.Audio.RealtimeContext& context, UnityEngine.Audio.ProcessorInstance+Pipe pipe, UnityEngine.Audio.ChannelBuffer buffer, UnityEngine.Audio.GeneratorInstance+Arguments args) <0x3c59fc468 + 0x000ff> in <40f815355a454e4a92d147089da3a8d9>:0}}
{{UnityEngine.Audio.IGeneratorProcessorExtensions+JobStruct`1[TUserProcessor].Execute (UnityEngine.Audio.IGeneratorProcessorExtensions+JobStruct`1+Storage[TUserProcessor]& storage, System.IntPtr additionalPtr, System.IntPtr additionalPtr2, Unity.Jobs.LowLevel.Unsafe.JobRanges& ranges, System.Int32 jobIndex) (at /opt/UnitySrc/unity1/Modules/Audio/Public/ScriptableProcessors/ScriptBindings/ScriptableGenerator.bindings.cs:578)}}
{{UnityEngine.Audio.ProcessorHeader:wrapper_native_indirect_0x9dee41fb8(IntPtr&, ProcessorHeader, ProcessorFunction, Void)}}
{{UnityEngine.Audio.ProcessorHeader:InvokeProcessor(ProcessorFunction, Void*) (at /opt/UnitySrc/unity1/Modules/Audio/Public/ScriptableProcessors/ScriptBindings/ScriptableProcessor.bindings.cs:627)}}
{{UnityEngine.Audio.RealtimeContext:Process(GeneratorInstance, ChannelBuffer, Arguments) (at /opt/UnitySrc/unity1/Modules/Audio/Public/ScriptableProcessors/ScriptBindings/RealtimeContext.cs:67)}}
{{Realtime:Process(RealtimeContext&, Pipe, ChannelBuffer, Arguments) (at Assets/Scripts/Parent.cs:26)}}
{{Realtime:UnityEngine.Audio.GeneratorInstance.IRealtime.Process(RealtimeContext&, Pipe, ChannelBuffer, Arguments)}}
{{UnityEngine.Audio.JobStruct`1:Execute(Storage&, IntPtr, IntPtr, JobRanges&, Int32) (at /opt/UnitySrc/unity1/Modules/Audio/Public/ScriptableProcessors/ScriptBindings/ScriptableGenerator.bindings.cs:578)}}

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.