# SetAnimationStreamSource(AnimationPlayableOutput, AnimationStreamSource)

> Sets the stream source for the specified AnimationPlayableOutput.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Experimental.Animations](/engine/6000.3/script-reference/unityengine/experimental/animations.md)
* **Assembly:** UnityEngine.AnimationModule

```csharp
public static void SetAnimationStreamSource(this AnimationPlayableOutput output, AnimationStreamSource streamSource)
```

### Parameters

**** (\[AnimationPlayableOutput]\(/engine/6000.3/script-reference/unityengine/animations/animationplayableoutput)): The [AnimationPlayableOutput](/engine/6000.3/script-reference/unityengine/animations/animationplayableoutput.md) instance that calls this method.**** (\[AnimationStreamSource]\(/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource)): The [AnimationStreamSource](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource.md) to apply on this output.

### Remarks

When setting the [AnimationStreamSource](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource.md) of the output to [AnimationStreamSource.DefaultValues](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource/defaultvalues.md), the [AnimationStream](/engine/6000.3/script-reference/unityengine/animations/animationstream.md) of this output initalizes every frame with the default values of the [Animator](/engine/6000.3/script-reference/unityengine/animator.md).

When setting the [AnimationStreamSource](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource.md) of the output to [AnimationStreamSource.PreviousInputs](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource/previousinputs.md), the [AnimationStream](/engine/6000.3/script-reference/unityengine/animations/animationstream.md) of this output initalizes every frame with the result of any previously evaluated outputs on the same [Animator](/engine/6000.3/script-reference/unityengine/animator.md).

If you use the graph connected to an [AnimationPlayableOutput](/engine/6000.3/script-reference/unityengine/animations/animationplayableoutput.md) to post-process the result of other Animation graphs connected to the same [Animator](/engine/6000.3/script-reference/unityengine/animator.md), you should use [AnimationStreamSource.PreviousInputs](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource/previousinputs.md). For example, if you use the [AnimationStream](/engine/6000.3/script-reference/unityengine/animations/animationstream.md) to build an Inverse Kinematics constraint to post-process the built-in [AnimatorController](/engine/6000.3/script-reference/unityeditor/animations/animatorcontroller.md), your [AnimationPlayableOutput](/engine/6000.3/script-reference/unityengine/animations/animationplayableoutput.md) should be set to [AnimationStreamSource.PreviousInputs](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource/previousinputs.md).

In order to start the [AnimationStream](/engine/6000.3/script-reference/unityengine/animations/animationstream.md) from a blank slate, you should use [AnimationStreamSource.DefaultValues](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource/defaultvalues.md). For example, to build a custom animation source starting from the default pose, the [AnimationPlayableOutput](/engine/6000.3/script-reference/unityengine/animations/animationplayableoutput.md) should be set to [AnimationStreamSource.DefaultValues](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource/defaultvalues.md).

Additional Resources: [AnimationStreamSource](/engine/6000.3/script-reference/unityengine/experimental/animations/animationstreamsource.md).
