Filename extension | .bpg |
---|---|
Magic number | 42 50 47 fb |
Initial release | 2014 |
Latest release |
0.9.7
(15 May 2016 ) |
Type of format | lossy lossless bitmap image format |
Extended from | HEVC |
Open format? | Yes |
Website | bellard |
Better Portable Graphics (BPG) is a file format for coding digital images, which was created by programmer Fabrice Bellard in 2014. Its purpose is to be a more compression-efficient replacement for the JPEG image format when quality or file size is an issue. It is based on the intra-frame encoding of the High Efficiency Video Coding (HEVC) video compression standard. Tests on photographic images in July 2014 found that BPG produced smaller files for a given quality than JPEG, JPEG XR and WebP. BPG is getting attention due to its portability, high quality, and low memory requirements which can be very good for portable handheld and IoT devices. Research is in full swing to make BPG hardware amenable so that energy-efficient BPG which can be integrated in portable devices such as digital camera is possible. While there is not yet built-in native support for BPG in any mainstream browsers, websites can still deliver BPG images to all browsers by including a 56 KB JavaScript library written by Bellard.
HEVC already has several profiles defined for still-picture coding using HEVC's intra-frame encoding for various bit depths and color formats, including the progressively more capable Main Still Picture, Main 4:4:4 Still Picture, and Main 4:4:4 16 Still Picture profiles.
BPG is essentially a wrapper for uses of the HEVC's Main 4:4:4 16 Still Picture profile up to 14 bits per sample.
BPG's container format is intended to be more suited to a generic image format than the raw bitstream format used in HEVC (which is otherwise ordinarily used within some other wrapper format, such as the .mp4 file format).
BPG supports the color formats known as 4:4:4, 4:2:2, and 4:2:0. Support for a separately coded extra channel is also included for an alpha channel or the fourth channel of a CMYK image. Metadata support is included for Exif, ICC profiles, and XMP.