Commit Graph

13 Commits

Author SHA1 Message Date
Rich Geldreich
5e8ad71036 Merge pull request #27 from zeux/wasmopt
Fix webgl CMakeLists.txt setup
2019-06-11 10:59:56 -07:00
richgel999
ab722fa2e1 - Adding support for skip blocks, i-frames and p-frames to the backend and transcoder, for texture video use.
- For PVRTC1, we now memset() any extra blocks after the blocks we know will be transcoded into. This is done because in GL there is padding that occurs on textures smaller than 8x8.
- Removing all OpenMP usage and replacing it with a basis C++11 job system.
- Fixing TSVQ class so it can split very long "thin" clusters that before weren't being split. This improves endpoint quantization on videos and complex 2D textures.
- More frontend perf. optimizations.

Tested on OSX, Linux with gcc/clang, and Win using MSVC 2019.
2019-06-07 20:35:38 -07:00
Arseny Kapoulkine
00001426de Fix webgl CMakeLists.txt setup
It looks like #7 didn't update CMakeLists.txt properly - defines
specified with -D have to be added as compile definitions.

Additionally, -O3 must be specified redundantly as a compile option and
as a link option - compile option makes .wasm bits small & fast, and
link option enables JS minifier.

After this fix CMake build results in minimal js/wasm files as well.
2019-06-02 20:46:47 -07:00
Arseny Kapoulkine
c2430c3792 Use emmalloc instead of dlmalloc to save a bit more space
basis_transcoder.js 58707
basis_transcoder.wasm 217809
2019-05-22 21:14:05 -07:00
Arseny Kapoulkine
f5d502912d Make codec options externally configurable and remove BC7 support
This change makes it possible to exclude formats using compile time
options. BC7 is *never* exposed on the web and it has an absolutely huge
coding table which means we're just wasting space.

basis_transcoder.js 58707
basis_transcoder.wasm 224404
2019-05-22 20:57:17 -07:00
Arseny Kapoulkine
6fa7476bf9 Remove std::iostream from the transcoders
The impact on the file size is enormous, and it's used to output one
line into console which isn't exposed through the API anyhow.

basis_transcoder.js 58707
basis_transcoder.wasm 705079
2019-05-22 20:53:10 -07:00
Arseny Kapoulkine
af8f9f8bc4 Remove assert(x) hack in favor of NDEBUG
basis_transcoder.js 140999
basis_transcoder.wasm 832985
2019-05-22 20:51:29 -07:00
Arseny Kapoulkine
a52a31e5b0 Rebuild basis_transcoder with new Emscripten (emsdk 1.38.31)
basis_transcoder.js 141235
basis_transcoder.wasm 833219
2019-05-22 20:48:42 -07:00
shrekshao
ab63add898 Fix CMakeList and rebuilt test 2019-05-15 14:24:55 -07:00
Don McCurdy
70eda127a8 Clean up. 2019-05-15 09:47:00 -07:00
Don McCurdy
871ccb0cb7 Update readmes. 2019-05-15 09:45:25 -07:00
Don McCurdy
e3ffbcc98a Include prebuilt transcoder. 2019-05-15 09:35:53 -07:00
Don McCurdy
e654e346bc Rename demo folders. 2019-05-15 09:30:31 -07:00