> ## Documentation Index
> Fetch the complete documentation index at: https://docs.daily.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Daily Audio Track

> The DailyAudioTrack sets up an audio tag for a specific audio track, identified by a sessionId and type.

`<DailyAudioTrack sessionId={sessionId} />`

Use this component to compose a custom audio arrangement in a Daily call.

## Props

<ParamField body="sessionId" type="string" required>
  The participant's `session_id` for which the audio track should be played.
</ParamField>

<ParamField body="onPlayFailed" type="Function">
  Callback when an `<audio>` tag fails to `play()`.
</ParamField>

<ParamField body="type" type="'audio' | 'screenAudio'" default="'audio'">
  The participant's track type to play.
</ParamField>

## Data attributes

`DailyAudioTrack` renders a couple of dynamic `data` attributes:

| Attribute         | Description                            |
| :---------------- | :------------------------------------- |
| `data-session-id` | Contains the corresponding `sessionId` |
| `data-audio-type` | Contains the corresponding `type`      |

## Example

```jsx theme={null}
import { DailyAudioTrack } from '@daily-co/daily-react';

function ParticipantAudio({ sessionId }) {
  const handlePlayFailed = useCallback((e) => {
    console.error(
      `Failed to play ${e.type} for ${e.sessionId}. Audio tag: ${e.target}.`
    );
  }, []);
  return (
    <DailyAudioTrack
      sessionId={sessionId}
      onPlayFailed={handlePlayFailed}
      type="audio"
    />
  );
}
```

## See also

<CardGroup>
  <Card title="Components" icon="layout" iconType="solid">
    * [DailyAudio](/reference/daily-react/daily-audio)
    * [DailyVideo](/reference/daily-react/daily-video)
  </Card>

  <Card title="Hooks" icon="code" iconType="solid">
    * [useAudioLevelObserver()](/reference/daily-react/use-audio-level-observer)
    * [useMediaTrack()](/reference/daily-react/use-media-track)
  </Card>
</CardGroup>
