10 Commits

Author SHA1 Message Date
richgel999
481de7da7d Fixing frontend's selector codebook generator so it guarantees that all-flag selector clusters will be present in the output codebook.
Adding debug visualization flags to transoder
Hooking up debug visualization to WebGL demo
2019-05-20 10:48:20 -07:00
richgel999
a33b5144d5 Adding comments 2019-05-18 20:33:54 -07:00
richgel999
1dc1bd35c8 Adding slice description to -unpack/-validate commands
Adding iframe flags to transcoder slice/image desc API's
Recompiling transcoder in webgl_videotest directory
2019-05-18 20:21:15 -07:00
richgel999
9529bdbff8 Still a WIP - needs more testing (especially when video is disabled, which hasn't been tested on this branch yet):
- Adding conditional replenishment (CR) support to the system, so blocks which don't change their selectors or endpoints from the last frame don't need to be decoded. This can greatly increase the compression ratio on many video sequences.
- Updating help text.
- Adding support for slices to be marked as i-frames
- Updating transcoder to support CR
2019-05-18 17:54:52 -07:00
Rich Geldreich
1afb8e714b Fixing BASISU_DEVEL_MESSAGES for MSVC. 2019-05-10 22:33:52 -07:00
Rich Geldreich
130eb9f115 Major compression performance/quality improvements, for a 15-35% or so decrease in file size for the same Y PSNR/SSIM. The basis file format has changed due to these optimizations.
Increasing the max codebook size to 16K vs. 8K, for a major increase in the max achievable quality.
Adding exception catching to command line tool.
Enabling debug iterators on MSVC.
Refining command line options, adding "-individual" flag to create multiple .basis files (vs. a texture array).
Changing default colorspace to sRGB, because that's probably the best default. -linear disables this and uses linear colorspace metrics.
PNG reader in 32-bit builds checks the size of the file before loading to avoid out of memory exceptions.
2019-05-07 15:52:54 -07:00
Rich Geldreich
33996b1a5f Important: Changing the Basis file version, so any existing files will need to be recompressed!
Adding new fields to the basis header: texture type and framerate. Texture type may be 2D, 2D array, video, volume, or cubemap array. The compressor makes sure that anything other than pure 2D follows certain constraints (cubemap arrays must have a multiple of 6 input images, videos/texture array images all must have the same resolution/# of mipmaps, etc.)
When unpacking cubemaps, the -unpack command now writes cubemap .KTX files which various tools like PVRTexTool support.
2019-05-02 16:09:11 -07:00
Rich Geldreich
7a727fb31c ETC1S->DXT5A transcoding bugfix on solid color blocks
Adding development messages support
Adding a few new transcoder get methods to help with creating C-style wrappers
2019-04-30 20:01:39 -07:00
Rich Geldreich
16c9e35c45 Removing detex dependency
Adding new GPU texture format decoders for BC1/4/5, ETC2 EAC alpha, and BC7 mode 6
Adding GPU texture unpack failure checks and warnings
Adding support for 3 color blocks to transcoder, and making sure that BC3 blocks will never use 3 color (punchthrough alpha) blocks.
2019-04-30 13:50:01 -07:00
Rich Geldreich
bd7d786a8a Initial checkin 2019-04-29 18:53:00 -07:00