00

MPEG-1/2 file signature

Magic number at the start of the file

00 00 01 BA

An MPEG-1 or MPEG-2 program stream (Video CD, DVD, broadcast) starts with the pack header 00 00 01 BA; a raw video sequence starts 00 00 01 B3.

Hex signature
00 00 01 BA
Offset
0 (start of file)
Length
4 bytes

What this magic number means

A magic number is a short, fixed run of bytes at a known position that tells a program what a file really is, no matter what the filename says. If a file starts with the bytes 00 00 01 BA, it is a MPEG-1/2 file.

What each byte of 00 00 01 BA means

Here is the signature byte by byte, the way a hex editor shows it: the position in the file, the value in hex and in decimal, and the character that value stands for in ASCII. Bytes with no printable character show a dot.

Byte offsetHexDecimalASCII
0000.
1000.
2011.
3BA186.

Signature variants

MPEG-1/2 appears with more than one byte pattern. These all identify the same family:

Hex signatureOffsetNote
00 00 01 BA0program stream pack header
00 00 01 B30video sequence header

Formats that use the 00 00 01 BA signature

These file types in our database carry this signature:

How to check a file's signature

You can read the bytes of any file yourself. They are shown in hex, the same way this page lists them.

Linux & macOS

  • xxd -l 16 example.mpg
  • hexdump -C -n 16 example.mpg
  • file example.mpg

Windows (PowerShell)

  • Format-Hex -Path example.mpg -Count 16

Python

  • open("example.mpg","rb").read(4).hex()

In your browser

Frequently asked questions

What is the MPEG-1/2 file signature?

MPEG-1/2 files start with the hex bytes 00 00 01 BA. This magic number identifies the format regardless of the file's name or extension.

How do I check a file's magic number?

Open the file in a hex editor, or run a command such as xxd -l 16 example.mpg on Linux or macOS, or Format-Hex -Path example.mpg -Count 16 in Windows PowerShell, and read the first bytes.

Can a file fake the MPEG-1/2 signature?

Renaming a file does not change its bytes, so the extension can lie but the signature usually cannot. A genuine MPEG-1/2 file has these exact bytes; a file with the wrong bytes is not really MPEG-1/2, whatever its name says.

Related signatures

Sources

Reuse this signature

This entry is part of the WhatFileType file signature reference, published under a CC BY 4.0 licence with the full provenance for every entry, a copy-paste embed and a JSON export. Credit WhatFileType and the data is yours to republish.