# Line Provider

Line Providers are components that are responsible for taking the [Line](https://github.com/YarnSpinnerTool/YSDocs/blob/versions/2.1/api/csharp/yarn/line/README.md) objects that the [Dialogue Runner](https://docs.yarnspinner.dev/2.1/using-yarnspinner-with-unity/components/dialogue-runner) produces, and fetches the appropriate localised content for that line. Line Providers produce [LocalizedLine](https://github.com/YarnSpinnerTool/YSDocs/blob/versions/2.1/api/csharp/yarn.unity/localizedline/README.md) objects, which are sent to the Dialogue Runner's [Dialogue Views](https://docs.yarnspinner.dev/2.1/using-yarnspinner-with-unity/components/dialogue-view).

When a Yarn script runs, the Dialogue Runne produces Line objects. These objects contain information *about* the line, but not the text of the line itself. This is because it's the responsibility of the game to load the *user-facing* parts of the line, including the text of the line in the player's current language setting, as well as any other assets that may be needed to present the line (such as audio files for voiceover.)

Yarn Spinner comes with two built-in types of line providers:

* [Text Line Provider](https://docs.yarnspinner.dev/2.1/using-yarnspinner-with-unity/components/line-provider/text-line-provider) is a Line Provider that fetches the text of a line, given a language to use.
* [Audio Line Provider](https://docs.yarnspinner.dev/2.1/using-yarnspinner-with-unity/components/line-provider/audio-line-provider) is a Line Provider that fetches the text of a line as well as an [Audio Clip](https://docs.unity3d.com/ScriptReference/AudioClip.html), given languages to use.

{% hint style="info" %}
If you don't set up a Line Provider for a Dialogue Runner, it will automatically create a Text Line Provider, and configure it to use the user's current language.
{% endhint %}
