---
title: Sound Entity
description: "Play 0x74, server → client."
---

`play` · `0x74` · **clientbound** (server → client)

Plays a sound that follows an entity. The server sends it for sounds tied to a moving source. `sound` is a registry ID or inline sound event; `seed` selects a random variant so all clients hear the same one.

Sent by the server, read by the client. Listen for it with `client.on("SoundEntity", (data) => …)` on the receiving side.

## Fields

| Field | Type | Notes |
|---|---|---|
| `sound` | ItemSoundHolder |  |
| `soundCategory` | soundSource |  |
| `entityId` | VarInt |  |
| `volume` | Float |  |
| `pitch` | Float |  |
| `seed` | Long |  |

## Send it

```ts
await client.sendPacket("SoundEntity", {
  sound: /* ItemSoundHolder */,
  soundCategory: /* soundSource */,
  entityId: /* VarInt */,
  volume: /* Float */,
  pitch: /* Float */,
  seed: /* Long */,
});
```

Field aliases listed under Notes are accepted as alternative keys when writing.

Source: [`src/Core/Versions/776/Packets/play/clientbound/SoundEntity.ts`](https://github.com/GDLev/mc-protocol/blob/master/src/Core/Versions/776/Packets/play/clientbound/SoundEntity.ts)
