MP4 Box Introduction


Free Download Mp4Gain
picture

MP4 Box Introduction

MP4 Normalizer

A box consists of two parts: the box header and the box body.

Mp4 Normalizer

box header: the box metadata, such as the type and size of the box.
frame body: the data part of the frame, the actual content stored is related to the frame type, such as the media data stored in the body part of mdat.
In the box header, only type and size are required fields. When size==0, there is a large field. In some boxes, there are also version fields and flags, these boxes are called Full Boxes. When other boxes are nested in the body of the box, the box is called a containing box.

box header
The fields are defined as follows:

type: frame type, including “default type” and “custom extension type”, occupying 4 bytes;
Predefined types: such as ftyp, moov, mdat, and other predefined types;
Custom Extension Type: If type==uuid, it means this is a custom extension type. size (or large size) followed by 16 bytes, the value of the custom type (extended_type)
size – The size of the entire frame, including the frame header, in bytes. When the size is 0 or 1, special handling is required:
size equals 0: the size of the frame is determined by the subsequent large size (generally only the mdat frame that loads media data will use the large size);
size equal to 1: the current frame is the last frame in the file, usually contained in the mdat frame;
largesize: the size of the box, occupying 8 bytes;
extended_type: type of custom extension, which occupies 16 bytes;
The Box pseudocode is as follows:

aligned(8) class Box (unsigned int(32) boxtype, optional unsigned int(8)[16] extended_type) {
unsigned int(32) size;
unsigned int(32) type = boxtype;
if (size==1) {
unsigned int(64) largesize;
} else if (size==0) {
// box extends to end of file
}
if (boxtype==’uuid’) {
unsigned int(8)[16] usertype = extended_type;
}
}
box body
The data body of the table, different tables contain different content, you need to refer to the definition of the specific table. Some box bodies are very simple, like ftyp. Some boxes are more complex and may have other nested boxes, like moov.

Box vs Full Box
Based on Box, the FullBox type is extended. Compared to Box, FullBox has more version fields and flags.

version: The version of the current box, ready for expansion, occupies 1 byte;
flags: flag bits, occupying 24 bits, the meaning is defined by the specific box itself;


Free Download Mp4Gain
picture


Mp4Gain Main Window
picture


Mp4Gain Features
picture


Free Download Mp4Gain
picture

Getting started with the MP4 file format

Getting started with the MP4 file format

Mp4 Normalizer

The main content of this article includes what is MP4, the basic structure of MP4 files, the basic structure of Box, the introduction of common and important boxes, the difference between ordinary MP4 and fMP4, and how to parse MP4 files through code.

MP4 Normalizer

Writing Background: Recently, I often answer questions on live streams and short videos from teammates, such as “flv.js implementation principle”, “Why the mp4 file provided by the design partner cannot be played in the browser, but can be played normally locally”, “MP4 compatibility is very good, can be used for live streaming”, etc.

In the response process, it is found that the introduction of the MP4 protocol is often involved. I briefly understood and took notes on this article before. I’ll tidy it up a bit here, and by the way, it will be used as a reference document for the team. If there are any errors or omissions, please point them out.

What is MP4?
First, the package format is presented. Multimedia encapsulation format (also called container format) refers to placing video data, audio data, etc. in a file according to certain rules. Common MKV, AVI and MP4 presented in this article are all package formats.

MP4 is one of the most common package formats and is widely used due to its cross-platform nature. The suffix for MP4 files is .mp4 and basically all major players and browsers support the MP4 format.

MP4 file format is mainly defined by MPEG-4 Part 12 and MPEG-4 Part 14. Among them, MPEG-4 Part 12 defines the ISO basic media file format for storing time-based media content. MPEG-4 Part 14 actually defines the MP4 file format and expands on the basis of MPEG-4 Part 12.

For students involved in work related to live broadcasts, audio and video, an understanding of the MP4 format is necessary. Below is a brief introduction.

MP4 File Format Overview
MP4 files are made up of multiple frames, each frame stores different information, and there is a tree structure between the frames, as shown in the figure below.

There are many types of boxes, the following are 3 most important top level boxes:

ftyp: file type box, which describes the MP4 specification and the version with which the file complies;
moov: Movie Box, the media metadata information, there is only one.
mdat: Media data box, which stores the actual media data, usually there are several;

Although there are many types of boxes, the basic structure is the same. The next section will first introduce the box structure and then explain common boxes in more detail.

Mp4 Normalizer

Mp4 Normalizer

Mp4 Normalizer

Mp4 normalizer and normalize other video formats

Fix MP4 volume

Mp4Gain is a powerful and advanced loudness normalizer that does not limit normalize mp3, like most normalizers.

Mp4Gain is innovative because it offers the possibility of making volume booster (volume enhancer) to the most well-known and used audio and video formats. You can even extract the audio from a video, normalize it and generate an audio file in any of the many formats that Mp4Gain handles (mp3, flac, ogg, m4a, etc)

Any video and audio file is made up of thousands of frames and Mp4Gain analyzes frame by frame (usually there are between 44100 and 48 thousand samples per second) and optimizes and maximizes the volume. In this way, the user will no longer perceive that their different audio or video files have different volume levels compared to the rest.

Mp4Gain also offers an advanced volume leveling capacity, because although for the common user it will be enough to click a button and with that they will be able to maximize the volume level, very advanced users can optimize the settings to their liking, they can even add ReplayGain , if you want or choose the output db level, etc.

In case the user, by mistake, mistakenly moves a setting, it is easy to reset and return them to their initial configuration, although for the home user it is not necessary to modify the settings.

The program is very intuitive in its use, all you have to do is load the audio or video file (or several files, since it can process hundreds or thousands) and click on the button and with that this user will obtain the desired result.

Mp4Gain maintains the data (tags) that each format is capable of storing.

We advise you to download Mp4Gain and try it on your computer to enjoy the results.

What is the difference between MP3 and Mp4?

MP3 and MP4, what are the differences?

Many wonder if MP4 is in all respects an “improved version” of MP3. The answer to this question is definitely “NO”, as these are two different types of file data.

mp3

In fact, MP3s refer only to the audio encoding aspect, while MP4s also store images, videos, text and subtitles, so in this case we are talking about a real digital container of different types of information.

Mp4

To better understand what the differences are between the two formats, let’s take a closer look at both.

MP3, history and functions

Designed by the Moving Picture group of experts and introduced to the world in the early 1990s, MP3, short for MPEG-1 Audio Layer 3, is an audio format that has revolutionized the concept of music and its portability.

Its operation is based on a specific lossy compression algorithm that allows to significantly reduce the volume of data useful for playing an audio track, called Lossy (translated: Loss).

Despite this compression, the end result remains faithful to the original recording for the vast majority of users.
In practice, any frequency considered imperceptible to the human ear is considered “removable”.

What does all this imply? Simple! The resulting MP3 file will be extremely smaller than the starting track, therefore, at a volume that previously could only hold 20 music files, hundreds of MP3 tracks can be stored.

MP4, history and features

The release of MP4, or MPEG4 Part 14, dates back to the early 2000s, precisely to 2002, and is used for digital video and audio broadcasts, images, and subtitles.

It is defined as a multimedia container in standard format or part of MPEG4 and does not have a standard information encoding method.

MP4 technology is based on the Apple QuickTime MOV format with, in addition, support for different MPEGs and higher quality audio expressed in AAC (Advanced Audio Coding) format.

From all this it can be understood that MP4 can be audio, video or audio + video files at the same time, also considering the possible presence of images or subtitles.

This is, for example, the most widely used format in the ever-evolving world of digital television and mobile video telephony.

Remember that the two extensions MP4 and M4A indicate the same type of file, what changes is only the extension and, in most cases, you can rename a specific file so that it is suitable for reading by the program.

Bottom line: when to use MP3 and MP4?

Finally, when should you choose an MP3 or MP4 format?

In the event that your file is exclusively an audio track, to be listened to while you are running and to be played through a small portable device, it is good to convert your songs to MP3 format.

This will take up less space on your device, preserve good audio quality, and can store many more songs in the player’s memory.

If, on the other hand, the files you are interested in are videos, perhaps accompanied by audio, images and subtitles, and they will be played on a device with a screen, the format I recommend is undoubtedly MP4.