---
name: "SDL_murmur3_32"
section: "3"
platform: "linux"
package: "libsdl3-doc"
version: "3.2.10+ds-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL_murmur3_32"
---

# SDL\_murmur3\_32(3)

Calculate a 32-bit MurmurHash3 value for a block of data.

## NAME

SDL\_murmur3\_32 - Calculate a 32-bit MurmurHash3 value for a block of data.

## HEADER FILE

Defined in SDL3/SDL\_stdinc.h

## SYNOPSIS

```
#include "SDL3/SDL.h"
```

**Uint32 SDL\_murmur3\_32(const void \*data, size\_t len, Uint32 seed);**

## DESCRIPTION

https://en.wikipedia.org/wiki/MurmurHash

A seed may be specified, which changes the final results consistently, but this does not work like  **SDL\_crc16**\
  and  **SDL\_crc32** : you can't feed a previous result from this function back into itself as the next seed value to calculate a hash in chunks; it won't produce the same hash as it would if the same data was provided in a single call.

If you aren't sure what to provide for a seed, zero is fine. Murmur3 is not cryptographically secure, so it shouldn't be used for hashing top-secret data.

## FUNCTION PARAMETERS

- *data*

  the data to be hashed.

- *len*

  the size of data, in bytes.

- *seed*

  a value that alters the final hash value.

## RETURN VALUE

( **Uint32** ) Returns a Murmur3 32-bit hash value.

## THREAD SAFETY

It is safe to call this function from any thread.

## AVAILABILITY

This function is available since SDL 3.2.0.
