-
Notifications
You must be signed in to change notification settings - Fork 59
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- transplant libwebp import from gzdoom
- Loading branch information
1 parent
326c49e
commit 2d5f908
Showing
182 changed files
with
70,851 additions
and
25 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
Contributors: | ||
- Aidan O'Loan (aidanol at gmail dot com) | ||
- Alan Browning (browning at google dot com) | ||
- Alexandru Ardelean (ardeleanalex at gmail dot com) | ||
- Brian Ledger (brianpl at google dot com) | ||
- Charles Munger (clm at google dot com) | ||
- Cheng Yi (cyi at google dot com) | ||
- Christian Duvivier (cduvivier at google dot com) | ||
- Christopher Degawa (ccom at randomderp dot com) | ||
- Clement Courbet (courbet at google dot com) | ||
- Djordje Pesut (djordje dot pesut at imgtec dot com) | ||
- Frank Barchard (fbarchard at google dot com) | ||
- Hui Su (huisu at google dot com) | ||
- H. Vetinari (h dot vetinari at gmx dot com) | ||
- Ilya Kurdyukov (jpegqs at gmail dot com) | ||
- Ingvar Stepanyan (rreverser at google dot com) | ||
- James Zern (jzern at google dot com) | ||
- Jan Engelhardt (jengelh at medozas dot de) | ||
- Jehan (jehan at girinstud dot io) | ||
- Jeremy Maitin-Shepard (jbms at google dot com) | ||
- Johann Koenig (johann dot koenig at duck dot com) | ||
- Jovan Zelincevic (jovan dot zelincevic at imgtec dot com) | ||
- Jyrki Alakuijala (jyrki at google dot com) | ||
- Konstantin Ivlev (tomskside at gmail dot com) | ||
- Lode Vandevenne (lode at google dot com) | ||
- Lou Quillio (louquillio at google dot com) | ||
- Mans Rullgard (mans at mansr dot com) | ||
- Marcin Kowalczyk (qrczak at google dot com) | ||
- Martin Olsson (mnemo at minimum dot se) | ||
- Maryla Ustarroz-Calonge (maryla at google dot com) | ||
- Mikołaj Zalewski (mikolajz at google dot com) | ||
- Mislav Bradac (mislavm at google dot com) | ||
- Nico Weber (thakis at chromium dot org) | ||
- Noel Chromium (noel at chromium dot org) | ||
- Nozomi Isozaki (nontan at pixiv dot co dot jp) | ||
- Oliver Wolff (oliver dot wolff at qt dot io) | ||
- Owen Rodley (orodley at google dot com) | ||
- Parag Salasakar (img dot mips1 at gmail dot com) | ||
- Pascal Massimino (pascal dot massimino at gmail dot com) | ||
- Paweł Hajdan, Jr (phajdan dot jr at chromium dot org) | ||
- Pierre Joye (pierre dot php at gmail dot com) | ||
- Roberto Alanis (alanisbaez at google dot com) | ||
- Sam Clegg (sbc at chromium dot org) | ||
- Scott Hancher (seh at google dot com) | ||
- Scott LaVarnway (slavarnway at google dot com) | ||
- Scott Talbot (s at chikachow dot org) | ||
- Slobodan Prijic (slobodan dot prijic at imgtec dot com) | ||
- Somnath Banerjee (somnath dot banerjee at gmail dot com) | ||
- Sriraman Tallam (tmsriram at google dot com) | ||
- Tamar Levy (tamar dot levy at intel dot com) | ||
- Thiago Perrotta (tperrotta at google dot com) | ||
- Timothy Gu (timothygu99 at gmail dot com) | ||
- Urvang Joshi (urvang at google dot com) | ||
- Vikas Arora (vikasa at google dot com) | ||
- Vincent Rabaud (vrabaud at google dot com) | ||
- Vlad Tsyrklevich (vtsyrklevich at chromium dot org) | ||
- Wan-Teh Chang (wtc at google dot com) | ||
- Yang Zhang (yang dot zhang at arm dot com) | ||
- Yannis Guyon (yguyon at google dot com) | ||
- Zhi An Ng (zhin at chromium dot org) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,211 @@ | ||
cmake_minimum_required(VERSION 3.11) | ||
project(webp) | ||
|
||
set(WEBP_SOURCES | ||
src/dec/alphai_dec.h | ||
src/dec/alpha_dec.c | ||
src/dec/buffer_dec.c | ||
src/dec/common_dec.h | ||
src/dec/frame_dec.c | ||
src/dec/idec_dec.c | ||
src/dec/io_dec.c | ||
src/dec/quant_dec.c | ||
src/dec/tree_dec.c | ||
src/dec/vp8i_dec.h | ||
src/dec/vp8li_dec.h | ||
src/dec/vp8l_dec.c | ||
src/dec/vp8_dec.c | ||
src/dec/vp8_dec.h | ||
src/dec/webpi_dec.h | ||
src/dec/webp_dec.c | ||
src/demux/anim_decode.c | ||
src/demux/demux.c | ||
src/dsp/alpha_processing.c | ||
src/dsp/alpha_processing_mips_dsp_r2.c | ||
src/dsp/alpha_processing_neon.c | ||
src/dsp/alpha_processing_sse2.c | ||
src/dsp/alpha_processing_sse41.c | ||
src/dsp/common_sse2.h | ||
src/dsp/common_sse41.h | ||
src/dsp/cost.c | ||
src/dsp/cost_mips32.c | ||
src/dsp/cost_mips_dsp_r2.c | ||
src/dsp/cost_neon.c | ||
src/dsp/cost_sse2.c | ||
src/dsp/cpu.c | ||
src/dsp/cpu.h | ||
src/dsp/dec.c | ||
src/dsp/dec_clip_tables.c | ||
src/dsp/dec_mips32.c | ||
src/dsp/dec_mips_dsp_r2.c | ||
src/dsp/dec_msa.c | ||
src/dsp/dec_neon.c | ||
src/dsp/dec_sse2.c | ||
src/dsp/dec_sse41.c | ||
src/dsp/dsp.h | ||
src/dsp/enc.c | ||
src/dsp/enc_mips32.c | ||
src/dsp/enc_mips_dsp_r2.c | ||
src/dsp/enc_msa.c | ||
src/dsp/enc_neon.c | ||
src/dsp/enc_sse2.c | ||
src/dsp/enc_sse41.c | ||
src/dsp/filters.c | ||
src/dsp/filters_mips_dsp_r2.c | ||
src/dsp/filters_msa.c | ||
src/dsp/filters_neon.c | ||
src/dsp/filters_sse2.c | ||
src/dsp/lossless.c | ||
src/dsp/lossless.h | ||
src/dsp/lossless_common.h | ||
src/dsp/lossless_enc.c | ||
src/dsp/lossless_enc_mips32.c | ||
src/dsp/lossless_enc_mips_dsp_r2.c | ||
src/dsp/lossless_enc_msa.c | ||
src/dsp/lossless_enc_neon.c | ||
src/dsp/lossless_enc_sse2.c | ||
src/dsp/lossless_enc_sse41.c | ||
src/dsp/lossless_mips_dsp_r2.c | ||
src/dsp/lossless_msa.c | ||
src/dsp/lossless_neon.c | ||
src/dsp/lossless_sse2.c | ||
src/dsp/lossless_sse41.c | ||
src/dsp/mips_macro.h | ||
src/dsp/msa_macro.h | ||
src/dsp/neon.h | ||
src/dsp/quant.h | ||
src/dsp/rescaler.c | ||
src/dsp/rescaler_mips32.c | ||
src/dsp/rescaler_mips_dsp_r2.c | ||
src/dsp/rescaler_msa.c | ||
src/dsp/rescaler_neon.c | ||
src/dsp/rescaler_sse2.c | ||
src/dsp/ssim.c | ||
src/dsp/ssim_sse2.c | ||
src/dsp/upsampling.c | ||
src/dsp/upsampling_mips_dsp_r2.c | ||
src/dsp/upsampling_msa.c | ||
src/dsp/upsampling_neon.c | ||
src/dsp/upsampling_sse2.c | ||
src/dsp/upsampling_sse41.c | ||
src/dsp/yuv.c | ||
src/dsp/yuv.h | ||
src/dsp/yuv_mips32.c | ||
src/dsp/yuv_mips_dsp_r2.c | ||
src/dsp/yuv_neon.c | ||
src/dsp/yuv_sse2.c | ||
src/dsp/yuv_sse41.c | ||
src/enc/alpha_enc.c | ||
src/enc/analysis_enc.c | ||
src/enc/backward_references_cost_enc.c | ||
src/enc/backward_references_enc.c | ||
src/enc/backward_references_enc.h | ||
src/enc/config_enc.c | ||
src/enc/cost_enc.c | ||
src/enc/cost_enc.h | ||
src/enc/filter_enc.c | ||
src/enc/frame_enc.c | ||
src/enc/histogram_enc.c | ||
src/enc/histogram_enc.h | ||
src/enc/iterator_enc.c | ||
src/enc/near_lossless_enc.c | ||
src/enc/picture_csp_enc.c | ||
src/enc/picture_enc.c | ||
src/enc/picture_psnr_enc.c | ||
src/enc/picture_rescale_enc.c | ||
src/enc/picture_tools_enc.c | ||
src/enc/predictor_enc.c | ||
src/enc/quant_enc.c | ||
src/enc/syntax_enc.c | ||
src/enc/token_enc.c | ||
src/enc/tree_enc.c | ||
src/enc/vp8i_enc.h | ||
src/enc/vp8li_enc.h | ||
src/enc/vp8l_enc.c | ||
src/enc/webp_enc.c | ||
src/mux/animi.h | ||
src/mux/anim_encode.c | ||
src/mux/muxedit.c | ||
src/mux/muxi.h | ||
src/mux/muxinternal.c | ||
src/mux/muxread.c | ||
src/utils/bit_reader_inl_utils.h | ||
src/utils/bit_reader_utils.c | ||
src/utils/bit_reader_utils.h | ||
src/utils/bit_writer_utils.c | ||
src/utils/bit_writer_utils.h | ||
src/utils/color_cache_utils.c | ||
src/utils/color_cache_utils.h | ||
src/utils/endian_inl_utils.h | ||
src/utils/filters_utils.c | ||
src/utils/filters_utils.h | ||
src/utils/huffman_encode_utils.c | ||
src/utils/huffman_encode_utils.h | ||
src/utils/huffman_utils.c | ||
src/utils/huffman_utils.h | ||
src/utils/palette.c | ||
src/utils/palette.h | ||
src/utils/quant_levels_dec_utils.c | ||
src/utils/quant_levels_dec_utils.h | ||
src/utils/quant_levels_utils.c | ||
src/utils/quant_levels_utils.h | ||
src/utils/random_utils.c | ||
src/utils/random_utils.h | ||
src/utils/rescaler_utils.c | ||
src/utils/rescaler_utils.h | ||
src/utils/thread_utils.c | ||
src/utils/thread_utils.h | ||
src/utils/utils.c | ||
src/utils/utils.h | ||
sharpyuv/sharpyuv.c | ||
sharpyuv/sharpyuv.h | ||
sharpyuv/sharpyuv_cpu.c | ||
sharpyuv/sharpyuv_cpu.h | ||
sharpyuv/sharpyuv_csp.c | ||
sharpyuv/sharpyuv_csp.h | ||
sharpyuv/sharpyuv_dsp.c | ||
sharpyuv/sharpyuv_dsp.h | ||
sharpyuv/sharpyuv_gamma.c | ||
sharpyuv/sharpyuv_gamma.h | ||
sharpyuv/sharpyuv_neon.c | ||
sharpyuv/sharpyuv_sse2.c | ||
) | ||
|
||
set(WEBP_INCLUDES | ||
include/webp/decode.h | ||
include/webp/demux.h | ||
include/webp/encode.h | ||
include/webp/format_constants.h | ||
include/webp/mux.h | ||
include/webp/mux_types.h | ||
include/webp/types.h | ||
) | ||
|
||
source_group("src" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/.+") | ||
source_group("src\\dec" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/dec/.+") | ||
source_group("src\\demux" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/demux/.+") | ||
source_group("src\\dsp" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/dsp/.+") | ||
source_group("src\\enc" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/enc/.+") | ||
source_group("src\\mux" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/mux/.+") | ||
source_group("src\\utils" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/src/utils/.+") | ||
source_group("sharpyuv" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/sharpyuv/.+") | ||
source_group("include" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/include/webp/.+") | ||
source_group("include\\webp" REGULAR_EXPRESSION "${CMAKE_CURRENT_SOURCE_DIR}/include/webp/core/.+") | ||
|
||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}) | ||
|
||
if(MSVC) | ||
# Use all cores for compilation | ||
set(CMAKE_CXX_FLAGS "/MP ${CMAKE_CXX_FLAGS}") | ||
|
||
# Ignore warnings in third party code | ||
#set_source_files_properties(${WEBP_SOURCES} PROPERTIES COMPILE_FLAGS "/wd4244 /wd4267 /wd4005 /wd4018 -D_CRT_SECURE_NO_WARNINGS") | ||
endif() | ||
|
||
add_library(webp STATIC ${WEBP_SOURCES} ${WEBP_INCLUDES}) | ||
target_link_libraries(webp ${WEBP_LIBS}) | ||
set_target_properties(webp PROPERTIES CXX_STANDARD 17) | ||
|
||
if(MSVC) | ||
set_property(TARGET webp PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
Copyright (c) 2010, Google Inc. All rights reserved. | ||
|
||
Redistribution and use in source and binary forms, with or without | ||
modification, are permitted provided that the following conditions are | ||
met: | ||
|
||
* Redistributions of source code must retain the above copyright | ||
notice, this list of conditions and the following disclaimer. | ||
|
||
* Redistributions in binary form must reproduce the above copyright | ||
notice, this list of conditions and the following disclaimer in | ||
the documentation and/or other materials provided with the | ||
distribution. | ||
|
||
* Neither the name of Google nor the names of its contributors may | ||
be used to endorse or promote products derived from this software | ||
without specific prior written permission. | ||
|
||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | ||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | ||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
Additional IP Rights Grant (Patents) | ||
------------------------------------ | ||
|
||
"These implementations" means the copyrightable works that implement the WebM | ||
codecs distributed by Google as part of the WebM Project. | ||
|
||
Google hereby grants to you a perpetual, worldwide, non-exclusive, no-charge, | ||
royalty-free, irrevocable (except as stated in this section) patent license to | ||
make, have made, use, offer to sell, sell, import, transfer, and otherwise | ||
run, modify and propagate the contents of these implementations of WebM, where | ||
such license applies only to those patent claims, both currently owned by | ||
Google and acquired in the future, licensable by Google that are necessarily | ||
infringed by these implementations of WebM. This grant does not include claims | ||
that would be infringed only as a consequence of further modification of these | ||
implementations. If you or your agent or exclusive licensee institute or order | ||
or agree to the institution of patent litigation or any other patent | ||
enforcement activity against any entity (including a cross-claim or | ||
counterclaim in a lawsuit) alleging that any of these implementations of WebM | ||
or any code incorporated within any of these implementations of WebM | ||
constitute direct or contributory patent infringement, or inducement of | ||
patent infringement, then any patent rights granted to you under this License | ||
for these implementations of WebM shall terminate as of the date such | ||
litigation is filed. |
Oops, something went wrong.