Martin Storsjö
e66ad9ab86
Remove the real32_t typedef
...
The float type is defined in standards and is portably available
on all supported compilers and platforms.
2014-02-08 14:12:03 +02:00
Martin Storsjö
d36b10fac5
Remove typedefs for float_t and double_t
...
The actual float and double data types are defined in C89 and are
usable as such without any extra typedefs.
Removing the extra typedefs simplifies the compatibility typedef
headers, simplifies portability and makes the code base easier
to work with for people new to the library.
2014-02-08 14:11:44 +02:00
Martin Storsjö
ba6bf7da18
Consistently use inline instead of __inline
...
This seemed to have been missed in 109fecc
.
2014-02-08 14:08:46 +02:00
Ethan Hugg
e366f5779b
Merge pull request #267 from mstorsjo/install
...
Add a "make install" target
2014-02-07 10:03:06 -08:00
Martin Storsjö
45689f832b
Add a "make install" target
2014-02-06 22:44:32 +02:00
Martin Storsjö
f5fd72f61e
Build one large static library containing both decoder and encoder
2014-02-06 22:44:32 +02:00
Ethan Hugg
b4a941698a
Merge pull request #266 from mstorsjo/remove-null-define
...
Remove fallback defines for NULL
2014-02-06 07:30:44 -08:00
Ethan Hugg
5bdda25ba3
Merge pull request #265 from mstorsjo/fix-tests-windows
...
Fix building/running tests on windows
2014-02-06 07:29:37 -08:00
Martin Storsjö
3a1bc92778
Include <algorithm> for std::min
...
This fixes building the test code on MSVC 2013.
(Actually building all of the tests on windows still is tricky
due to the OpenSSL dependency for SHA1, but there's a patchset
in review to take care of that.)
2014-02-06 10:55:12 +02:00
Martin Storsjö
43814000e4
Open output files in binary mode in the testsuite
...
This fixes running tests on windows.
2014-02-06 10:54:39 +02:00
Martin Storsjö
f252acf8a5
Remove fallback defines for NULL
...
No actual (supported) compiler lacks a definition for NULL, and it
is mandated to be present in stddef.h according to the C89 standard.
2014-02-06 10:38:15 +02:00
Ethan Hugg
33a1209a21
Merge pull request #264 from jwwang/add_gtests
...
Add gtests
2014-02-05 19:43:07 -08:00
jwwang
f2aaffbb72
fix clang error
2014-02-06 11:37:42 +08:00
jwwang
94bd097fcf
minor naming/style/bug fixes
2014-02-05 18:04:32 +08:00
jwwang
0c2227e4b1
Remove temp files using the iterator pattern
2014-02-05 18:00:48 +08:00
jwwang
596be02cc4
Fix incomplete decocder output for not flushing the temp file
2014-02-05 18:00:48 +08:00
jwwang
8247eef9bb
refactor and add decode_encode_test to pipeline decoder outoput to encoder test
2014-02-05 18:00:48 +08:00
Ethan Hugg
db6ce9c3d8
Merge pull request #262 from orbitcowboy/master
...
cleanup unused variable in codec/common/deblocking_common.cpp.
2014-02-03 07:24:49 -08:00
orbitcowboy
7d29cecc0e
cleanup variable initializations.
2014-01-31 23:13:21 +01:00
orbitcowboy
21197abe96
cleanup unused variable in codec/common/deblocking_common.cpp.
2014-01-31 23:00:30 +01:00
ekr
856d770af5
Merge pull request #260 from mstorsjo/quiet-make
...
Add a make option for silencing the commands run
2014-01-30 04:14:36 -08:00
Martin Storsjö
8ecdcc7172
Add a make option for silencing the commands run
...
Add "V=No" to the make command to silence the make output.
This makes it easier to spot warnings or other unexpected messages
in the build output.
2014-01-30 13:56:19 +02:00
Ethan Hugg
1e744b1933
Merge pull request #257 from mstorsjo/simplify-endian-func
...
Simplify the implementation of GetValueOf4Bytes
2014-01-29 15:25:30 -08:00
Ethan Hugg
fbcd962169
Merge pull request #256 from mstorsjo/bigendian
...
Make the library work on big endian
2014-01-29 15:24:32 -08:00
Ethan Hugg
914650abc6
Merge pull request #255 from mstorsjo/unify-stack-align-macros
...
Remove the array_stack_align.h header from the encoder lib
2014-01-29 15:17:44 -08:00
Martin Storsjö
1d2c37f7de
Simplify the implementation of GetValueOf4Bytes
...
What the two different implementations currently do is simply
to write a 32 bit number, in the native endianness, into the
given buffer.
The actual purpose of this function is still unknown though,
it can be removed completely without breaking decoding - it
is possibly a remnant from earlier functionality in the
decoder.
2014-01-29 22:44:42 +02:00
Martin Storsjö
cadbec75d8
Fix shifting tricks in deblocking for big endian
...
The code interprets an array of 4 uint8_t values as one uint32_t
and does shifts on the value. The same optimization can be
kept in big endian as well, but the shift has to be done in the
other direction.
This code could be made truly independent of endianness, but
that could cause some minimal performance degradaion, at least
in theory.
This makes "make test" pass on big endian, assuming that
WORDS_BIGENDIAN is defined while building.
2014-01-29 22:30:33 +02:00
Martin Storsjö
47ec78843a
Don't read an uint8_t array as an uint32_t
...
This makes the code work properly on big endian.
The MC case is similar to how it's done in the encoder.
Neither of these should have any significant performance
impact.
2014-01-29 22:27:55 +02:00
Martin Storsjö
66c39a4fd4
Remove the array_stack_align.h header from the encoder lib
...
All of these macros are already available in the common
macros.h header. Unify all the macros to be named ENFORCE_*
instead of mixed FORCE/ENFORCE.
2014-01-29 22:07:52 +02:00
Ethan Hugg
e413ed20a2
Merge pull request #254 from mstorsjo/directory-typofix
...
Fix a typo in a directory name
2014-01-29 07:04:19 -08:00
Ethan Hugg
b2528a256a
Merge pull request #253 from varunbpatil/help_update
...
updated README - make options
2014-01-29 07:03:48 -08:00
Martin Storsjö
b2178aacc0
Fix a typo in a directory name
2014-01-29 10:29:53 +02:00
Varun B Patil
683b3222fe
updated README - make options
2014-01-29 13:47:55 +05:30
Ethan Hugg
9b70a6dbaf
Merge pull request #198 from mstorsjo/makefile-deps
...
Automatically track per-file dependencies
2014-01-28 11:13:57 -08:00
Ethan Hugg
97a4b708de
Merge pull request #246 from varunbpatil/detect_arch
...
Attempt to detect OS arch(32/64 bit) on most platforms
2014-01-28 11:12:41 -08:00
Ethan Hugg
ec576baf25
Merge pull request #249 from mstorsjo/encconsole-arg-parsing-ifdef
...
Fix parsing of the -drec option if ENABLE_FRAME_DUMP isn't set
2014-01-28 11:05:31 -08:00
Ethan Hugg
b58bf88b44
Merge pull request #247 from mstorsjo/simplify-missed-inline-asm-macro
...
Unify the codepaths for WELS_GET_PERFIX_BITS at the second place
2014-01-28 11:04:50 -08:00
Ethan Hugg
08638a9396
Merge pull request #252 from mstorsjo/share-processing-asm
...
Merge identical assembly code between the processing and encoder libs
2014-01-28 11:04:12 -08:00
Ethan Hugg
3c40261256
Merge pull request #251 from mstorsjo/crt-string-cleanup
...
Clean up the rest of the usage of crt_safe_util_x
2014-01-28 09:42:56 -08:00
Ethan Hugg
0d7bafcebc
Merge pull request #248 from mstorsjo/msvc-proj-cleanup
...
MSVC project file warning cleanup
2014-01-28 09:40:17 -08:00
Ethan Hugg
6938cfce07
Merge pull request #250 from mstorsjo/format-string-fix
...
Fix a format string to use the correct type
2014-01-28 09:39:27 -08:00
Martin Storsjö
04dba61d22
Remove an unused assembly source file
...
Nothing within processing uses functions from this file.
2014-01-28 13:55:41 +02:00
Martin Storsjö
3761901ed4
Remove sad.asm from the processing lib, move satd_sad from the encoder to the common lib
...
sad.asm as used in processing is an exact subset of the
code in satd_sad.asm in the encoder.
2014-01-28 13:54:57 +02:00
Martin Storsjö
e0da5a1686
Remove the now unused STRCAT macro
2014-01-28 12:43:22 +02:00
Martin Storsjö
208f033bcd
Use WelsStrcat instead of the STRCAT macro
2014-01-28 12:43:22 +02:00
Martin Storsjö
903f265965
Fix a format string to use the correct type
2014-01-28 12:42:01 +02:00
Martin Storsjö
5c5dcfb14c
Remove an unused global variable and commented out code
2014-01-28 12:36:54 +02:00
Martin Storsjö
fa93c88fa2
Implement WelsStrcat based on WelsStrncpy
...
This is a more convenient behaviour (truncating on overflow and
always null terminating the buffer) compared to the MSVC
safe strcat_s which aborts the process if the string doesn't fit
into the target buffer.
Also mark the source buffer as const in the function prototype.
2014-01-28 12:27:22 +02:00
Martin Storsjö
9840f11784
Remove the now unused count parameter to WelsStrncpy
...
Also remove manual null termination as WelsStrncpy now always
takes care of it.
2014-01-28 12:13:11 +02:00
Martin Storsjö
a16ccc0b4d
Fix the implementations of WelsStrncpy
...
Make the MSVC "safe" version truncate instead of aborting the
process if the buffer is too small.
Update all the other functions to use the right parameter
(iSizeInBytes, not iCount) as 'n' parameter to strncpy.
(By passing iCount as parameter to the normal strncpy functions,
it meant that the resulting buffer actually never was null
terminated.)
Additionally make sure that the other implementations of WelsStrncpy
always null terminate the resulting buffer, just as the MSVC safe
version does when passed the _TRUNCATE parameter.
2014-01-28 12:08:35 +02:00