Knowledge Base > Recording > Hybrid MP4 & Hybrid MOV Formats

Hybrid MP4 & Hybrid MOV Formats

Overview

Hybrid MP4 and Hybrid MOV are the names of new output formats introduced in OBS 30.2 (Hybrid MP4) and OBS 32.0 (Hybrid MOV), that aim to provide reliable and compatible output without the drawbacks of traditional or fragmented MP4/MOV. It remains recoverable even if writing the file is aborted, e.g. due to system crashes or power outages, while still maintaining wide compatibility.

This works through the file being written as a fragmented file, but then being finalised like a regular MP4/MOV in a process we call "soft-remux", which hides the fragmentation within, so that MP4/MOV-compatible software will treat is like a regular file.

The primary difference between Hybrid MP4 and Hybrid MOV is codec support. See the following section to find out which one is right for you.

Features

Codec Support

Video
Codec Hybrid MP4 Hybrid MOV
H.264/AVC
H.265/HEVC
AV1
ProRes
Audio
Codec Hybrid MP4 Hybrid MOV
AAC
Opus
FLAC
ALAC
PCM ⚠️

Note: PCM in MP4 is a relatively recent addition to the standard, and not supported in all applications. Hybrid MOV may provide better compatibility.

Chapter Markers

Chapters can be inserted into the file, for example, to make it easier to find highlights or the start of certain sections during the editing process. These markers are supported by most video players and editing suites such as DaVinci Resolve.

Markers can be added via the following means:

  • Hotkey ("Add chapter marker")
  • WebSockets CreateRecordChapter request
  • OBS Frontend API obs_frontend_recording_add_chapter(const char *name)

Chapters added via hotkey will have the format "Unnamed <N>" where N is a simple counter. When added via the frontend API or WebSockets a custom name can be specified, if left empty the same scheme will be used to generate a chapter name.

Note: Chapters are written during the finalisation process, i.e. they are not recoverable in the event of a crash. This may change in the future.

Creation Time and Date

Unlike the existing MP4/MOV output the creation date will be set to the output starting time, allowing users to more easily organise and catalogue their files.

Additional Metadata

The encoder settings in JSON format can be written as metadata to the file, see the next section for how to enable this feature.

Muxer Options

Option Description Default

use_negative_cts

Use negative composition timestamps instead of edit list to deal with b-frame delay. May not be compatible with older software

On (1)

write_encoder_info

Write encoder configuration JSON as metadata attached to each track

Off (0)

use_metadata_tags

Write metadata as generic key-value pairs instead of using QuickTime metadata keys

Off (0)

skip_soft_remux

Disable finalisation ("soft-remux"), for debugging purposes only

Off (0)

Options can be set via the "Custom Muxer Options" field in the format key=value and separated by spaces, e.g. use_negative_cts=1 write_encoder_info=1

Technical Details

See our blog for a detailed technical breakdown on how Hybrid MP4/Hybrid MOV works: https://obsproject.com/blog/obs-studio-hybrid-mp4