---
name: "load_midi"
section: "3alleg"
platform: "linux"
package: "liballegro-doc"
version: "2:4.2.2-2.2"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/load_midi"
---

# load\_midi(3alleg)

Loads a MIDI file. Allegro game programming library.

## NAME

load\_midi - Loads a MIDI file. Allegro game programming library.

## SYNOPSIS

**#include \<allegro.h\>**

**MIDI \*load\_midi(const char \*filename);**

## DESCRIPTION

Loads a MIDI file (handles both format 0 and format 1). Example:

```
   MIDI *music;
   music = load_midi("backmus.mid");
   if (!music)
      abort_on_error("Couldn't load background music!");
```

## RETURN VALUE

Returns a pointer to a MIDI structure, or NULL on error. Remember to free this MIDI file later to avoid memory leaks.

## SEE ALSO

[**destroy\_midi**(3alleg)](/destroy_midi/3alleg.md), [**play\_midi**(3alleg)](/play_midi/3alleg.md), [**get\_midi\_length**(3alleg)](/get_midi_length/3alleg.md), [**exmidi**(3alleg)](/exmidi/3alleg.md)
