BNK File Documentation


Summary

In this database a Test Drive Unlimited Data Package is a proprietary .bnk archive from Eden Games’ racing games Test Drive Unlimited and TDU2, bundling 3D car models, textures and sounds that the game loads at runtime. It is edited with the community TDU Modding Tools. Note that most .bnk files elsewhere are unrelated: they are Wwise SoundBanks (game audio) starting with the bytes BKHD, so identify yours by the game or program that made it.

Technical details

FeatureValue
Full name (this database)Test Drive Unlimited Data Package
File extension.bnk
MIME typeapplication/octet-stream
Format typeProprietary game asset archive (models, textures, audio)
DeveloperEden Games (Test Drive Unlimited / TDU2)
Used byTest Drive Unlimited (2006), TDU2 (2011)
Open standardNo — proprietary and undocumented
Magic numberGame-specific; not the Wwise BKHD header
Edited withTDU Modding Tools (community)
Other common meaningWwise SoundBank (audio) — starts with 42 4B 48 44 “BKHD”
Also used byAdLib/Sound Blaster instrument bank; ExamView test bank
Wwise developerAudiokinetic (now part of Epic Games)
Wwise related extensions.wem, .pck, .wav, .ogg
Identify byThe game or program that created the file
File signature (magic bytes)
42 4B 48 44

This signature applies to the Wwise SoundBank meaning of .bnk, the most common one across modern games, not to the Test Drive Unlimited archive. A Wwise bank opens with the ASCII chunk tag BKHD (“Bank Header”) at offset 0. The Test Drive Unlimited data package uses a different, undocumented Eden Games header and is not a Wwise bank, so it will not begin with BKHD. Because the .bnk extension is heavily overloaded, the reliable check is to open the first bytes: 42 4B 48 44 means Wwise audio; anything else points to TDU, an old AdLib instrument bank, or an ExamView test bank.

What is a BNK file?

As named in this database, a .bnk file is a Test Drive Unlimited data package: a proprietary archive from Eden Games’ open-world racing games Test Drive Unlimited (2006) and Test Drive Unlimited 2 (2011). One .bnk bundles game assets, typically 3D car models, textures and sound data, into a single container the engine loads at runtime. The format is closed and undocumented, so it is read and written only by the game and by the community-built TDU Modding Tools that reverse-engineered enough of the layout to swap cars, liveries and other assets.

The .bnk extension is one of the most overloaded in existence, and honesty matters here. The Test Drive Unlimited package is the meaning this page is named for, but if you found a .bnk outside those two games it is far more likely to be a Wwise SoundBank, the dominant modern use of the extension, or one of two older formats. The rest of this article explains the TDU package, then covers the audio meaning in the detail most people actually arrive looking for, and finishes with how to tell which one you have.

The Test Drive Unlimited package

A TDU .bnk is an asset container, closer in spirit to a game archive than to a single file. Inside a package the engine expects several kinds of data together, so an editor has to parse the package structure before it can reach any one asset.

ContainsWhat it is
3D modelsCar and object geometry the engine renders
TexturesPaint, materials and surface maps for those models
SoundsEngine and effect audio bundled with the assets
Package indexInternal directory locating each asset within the file

The exact byte layout of the header and index is Eden Games’ own and was never published, so this page does not invent offsets for it. What is known in practice is the tooling: the open-source TDU Modding Tools (and the older TDU-only BNK editors it superseded) open these packages to replace models and textures for modding. Those tools are specific to Test Drive Unlimited and do not work on the Wwise banks described next, which share only the three letters of the extension.

The far more common meaning: a Wwise SoundBank

Most .bnk files in modern games are SoundBanks produced by Audiokinetic Wwise, the audio middleware used across thousands of titles since 2006 (Audiokinetic was acquired by Epic Games in 2022). A SoundBank is a compiled binary package that bundles audio data, playback events, mixing structures and engine logic into one file the game streams at runtime. Unlike the TDU package, its structure is partly known from reverse engineering, and it begins with a recognisable signature.

Chunk    Purpose
BKHD     Bank Header: format version + bank ID  (first bytes, "BKHD")
DIDX     Data Index: locates each embedded media by ID
DATA     the raw audio blob the DIDX entries point into
HIRC     Hierarchy: sounds, events, containers, mixing structures
STID     String/ID map for referenced banks (optional)

The audio inside is stored as WEM (Wwise Encoded Media), a second proprietary layer, which is why simply renaming a .bnk to .mp3 never produces playable sound. The bank is a container of many compressed WEM streams plus the event logic that decides when they play, not a single audio file.

Extracting audio from a Wwise bank

Because the format is closed, ripping game audio uses a reverse-engineered toolchain, and it is always at least two steps. First, unpack the bank into its component .wem streams: tools such as wwiser or Wwise-Unpacker read the DIDX/DATA chunks and write out the embedded media. Second, decode each .wem to a normal format: WEM audio is frequently Vorbis-based, so ww2ogg turns it into OGG with little loss, and vgmstream decodes it to WAV. Only after those steps can you re-encode to MP3 if you want it. Names are the catch: banks reference sounds by numeric ID, so recovering human-readable track names usually needs a companion Wwise names list, which wwiser can apply when generating its playback scripts.

The AdLib and ExamView meanings

Two more unrelated formats use .bnk. The oldest is the AdLib / Sound Blaster instrument bank, a DOS-era FM-synthesis bank that stored instrument definitions for the OPL sound chips; it is obsolete and opens only in old AdLib or Sound Blaster utilities. The other is an ExamView test bank, a question bank for the ExamView assessment software used by teachers and textbook publishers, which opens only in ExamView. Neither has any structural relationship to the TDU package or the Wwise bank; they simply reuse the three letters.

How to tell which kind of .bnk you have

Identify by origin and by the first bytes. If the file came from Test Drive Unlimited or TDU2 (in the game’s install folder or a car mod), it is the Eden Games data package, and you open it with TDU Modding Tools. If it came from almost any other modern game, open the first four bytes: 42 4B 48 44 (“BKHD”) confirms a Wwise SoundBank, which you process with wwiser, Wwise-Unpacker and vgmstream. A file from an old DOS synth setup is an AdLib bank, and one from a teacher or a textbook CD is an ExamView test bank. When downloading any of these extraction utilities, get them from their official GitHub repositories rather than generic “BNK opener” or “BNK converter” sites, which commonly bundle adware. Ripping a game’s audio or assets is generally fine for personal use but may breach the game’s licence if you redistribute the results.

References