Bento4 is a C++library and toolset used for reading and writing ISO-MP4 files. This format is defined based on the international standards ISO/IEC 14496-12, 14496-14, and 14496-15, and is a derivative version of the Apple Quicktime file format. Therefore, Bento4 can also be used to read and write most Quicktime files. In addition to supporting ISO-MP4, Bento4 also has the following functions: parsing and multiplexing H.264/H.265 elementary streams, converting ISO-MP4 to MPEG2-TS, encapsulating HLS and MPEG-DASH, CMAF processing, content encryption/decryption, etc.
Features
Based on ISO-MP4 format and related technologies, this library also supports the following formats and functions:
• MPEG DASH: Supports fragmented MP4 files (compliant with international standard ISO/IEC 23009-1)
• HLS: Supports TS or MP4 sharding (can synchronously output DASH/HLS format, compliant with RFC 8216 standard)
• CMAF (Common Media Application Format): Compliant with ISO/IEC 23000-19 standard
• MPEG Universal Encryption (CENC): Compliant with ISO/IEC 23001-7 international standard
• PIFF (Protected Interoperability File Format): An encrypted shard MP4 format developed by Microsoft for smooth streaming of encrypted HTTP
• Read and write metadata compatible with 3GPP and iTunes
•ISMA encryption/decryption: compliant with ISMA E&A specifications
• OMA 2.0/2.1 DCF/PDCF encryption/decryption: following OMA standards
• ISO-MP4 files that comply with 3GPP series standards
• Ultra High Definition Alliance (DECE) CFF (Common File Format)
• H. Analysis and Reuse of 264 (AVC) Video and AAC Audio Basic Stream
• Supports multiple DRM systems compatible with MP4 format content (usually using CENC universal encryption), including Marlin, PlayReady, Widevine, FairPlay, and Adobe Access, among others
• Supports a wide range of codecs: H.264 (AVC), H.265 (HEVC), AAC, HE-AAC, xHE AAC, AC3/eAC3 (Dolby Digital) AC4、 Dolby Atmos, DTS, ALAC, etc
• Supports Dolby Vision and HDR
This SDK adopts a cross platform design, with highly portable code that can be compiled using any modern C++compiler. The implementation process does not rely on any external libraries, and the standard distribution includes all the code required for compilation. The standard distribution package provides the following support:
Makefile for Unix like systems (including Linux and Android)
Microsoft Visual Studio project files
XCode project for MacOS X/iOS
Support SCons build system and CMake
see detailsBento4
Bento4 is a C++library and toolset used for reading and writing ISO-MP4 files. This format is defined based on the international standards ISO/IEC 14496-12, 14496-14, and 14496-15, and is a derivative version of the Apple Quicktime file format. Therefore, Bento4 can also be used to read and write most Quicktime files. In addition to supporting ISO-MP4, Bento4 also has the following functions: parsing and multiplexing H.264/H.265 elementary streams, converting ISO-MP4 to MPEG2-TS, encapsulating HLS and MPEG-DASH, CMAF processing, content encryption/decryption, etc.
Features
Based on ISO-MP4 format and related technologies, this library also supports the following formats and functions:
• MPEG DASH: Supports fragmented MP4 files (compliant with international standard ISO/IEC 23009-1)
• HLS: Supports TS or MP4 sharding (can synchronously output DASH/HLS format, compliant with RFC 8216 standard)
• CMAF (Common Media Application Format): Compliant with ISO/IEC 23000-19 standard
• MPEG Universal Encryption (CENC): Compliant with ISO/IEC 23001-7 international standard
• PIFF (Protected Interoperability File Format): An encrypted shard MP4 format developed by Microsoft for smooth streaming of encrypted HTTP
• Read and write metadata compatible with 3GPP and iTunes
•ISMA encryption/decryption: compliant with ISMA E&A specifications
• OMA 2.0/2.1 DCF/PDCF encryption/decryption: following OMA standards
• ISO-MP4 files that comply with 3GPP series standards
• Ultra High Definition Alliance (DECE) CFF (Common File Format)
• H. Analysis and Reuse of 264 (AVC) Video and AAC Audio Basic Stream
• Supports multiple DRM systems compatible with MP4 format content (usually using CENC universal encryption), including Marlin, PlayReady, Widevine, FairPlay, and Adobe Access, among others
• Supports a wide range of codecs: H.264 (AVC), H.265 (HEVC), AAC, HE-AAC, xHE AAC, AC3/eAC3 (Dolby Digital) AC4、 Dolby Atmos, DTS, ALAC, etc
• Supports Dolby Vision and HDR
This SDK adopts a cross platform design, with highly portable code that can be compiled using any modern C++compiler. The implementation process does not rely on any external libraries, and the standard distribution includes all the code required for compilation. The standard distribution package provides the following support:
Makefile for Unix like systems (including Linux and Android)
Microsoft Visual Studio project files
XCode project for MacOS X/iOS
Support SCons build system and CMake
see detailsBento4