Opened 9 years ago

Last modified 9 years ago

#4169 open enhancement

Support BPG Image format

Reported by: jamal Owned by:
Priority: wish Component: avcodec
Version: git-master Keywords: bpg hevc
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

libbgp can be found here: http://bellard.org/bpg/
The spec is here http://bellard.org/bpg/bpg_spec.txt

A wrapper is probably not a good idea as the library may or may not link to libx265, libpng and openjpeg/jpeg-turbo while seemingly providing no way to know if it does for ffmpeg to check at configure time.
Also, it uses an striped down version of libavcodec/libavutil, so it's kinda redundant.

It's worth noting that libbpg contains some relevant changes to ffhevc, which most likely should be ported for the purpose of this ticket.
No separate patches are provided, so the changes may have to be cherry picked from the included source files.

The following list of changes to ffmpeg is described in their README file

3) FFmpeg modifications
-----------------------

- Completed support of chroma_format_idc = 0 (monochrome mode).

- Fixed RDPCM support (intra predictions).

- Added a 'dynamic bit depth' mode where all the bit depths from 8 to
  14 are supported without code duplication but slower decoding.

- Added a modified SPS header to reduce the size of the BPG decoder
  (the solution instead is to generate standard VPS and SPS headers
  from the BPG header).

- Added defines to keep only the HEVC intra code and suppress the
  parsing of all the irrelevant NAL units.

- Stripped FFmpeg from all codecs except HEVC and the necessary
  support code.

- Generated the IDCT coefficients dynamically to reduce the code size.

Change History (1)

comment:1 by Carl Eugen Hoyos, 9 years ago

Keywords: hevc added
Status: newopen
Note: See TracTickets for help on using tickets.