Martin Storsjö
b1c13f4954
Properly limit the range for the random target motion vectors
...
A 16x16 pixel block is copied to the destination pointed out by the
target motion vector. Since the motion vector is relative to the
center of the buffer, the upper bound of the range is size/2-16.
Previously we never used negative motion vectors, but there is no
reason not to test that direction. Therefore, the possible range
would be [-size/2,size/2-16]. Additionally pad this range with
INTPEL_NEEDED_MARGIN.
2014-05-04 17:50:55 +03:00
Martin Storsjö
03db750ba9
Limit the ME scanning range to 16 pixels from the end of the buffer
...
The block size is chosen randomly; if the block size is 16,
LineFullSearch_c will read a block with 16 pixels from kiMaxPos;
thus kiMaxPos cannot be larger than height-16, otherwise the calls
end up with reads out of bounds.
2014-05-04 17:35:01 +03:00
Martin Storsjö
f99336d866
Don't compare a boolean to an integer
...
This avoids a warning when building with MSVC.
2014-05-04 14:53:36 +03:00
volvet
e4a9c7f8e4
Merge pull request #779 from zhilwang/intraSad
...
Add IntraSad asm code.
2014-05-04 16:29:59 +08:00
Licai Guo
485b2b5b43
Add IntraSad asm code.
...
Enable intraSad ASM code
Refine format
Add X86_ASM pretect for intraSad ASM code UT
remove duplicated code.
2014-05-04 12:12:38 +08:00
sijchen
844f88bbbe
Merge pull request #772 from lyao2/scrollingUT
...
this only solve the problem temporarily. but for the building of tests working, merge this first.
we need to re-consider the including of typedef headers
2014-04-30 17:20:41 +08:00
lyao2
4248cc9c42
fix typedef re-define issue
2014-04-30 16:46:58 +08:00
sijchen
e284ee0342
Merge pull request #765 from lyao2/scrollingUT
...
fix re-define issue
2014-04-29 17:03:41 +08:00
lyao2
1c90837001
remove typedef.h
2014-04-29 15:50:08 +08:00
huili2
7772a9dc31
bug fix of EC_copy
2014-04-28 20:34:00 -07:00
huili2
c0d21a23f3
Merge pull request #745 from lyao2/scrollingUT
...
add scroll detection UT
2014-04-25 15:07:15 +08:00
lyao2
34ad719cf2
Squashed commit of the following:
...
commit f73d6cf0fcae5f401fc2817ab736af996113ca09
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Thu Apr 24 15:02:21 2014 +0800
remove comments
commit 75416c2cf6c1ebb7aabf9e8c52d8c7163a8009b7
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Thu Apr 24 14:52:09 2014 +0800
for test
commit 7dfb65ce514edcff892bfb3919921cadcce1d055
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Thu Apr 24 14:12:31 2014 +0800
for test
commit eff771645e8c349dc4e454ab1751530b3cef18ed
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Thu Apr 24 10:51:34 2014 +0800
for test
commit 9c42b9a7a04068e70be94529941f549b58e63780
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Wed Apr 23 17:46:59 2014 +0800
update cpu_flag
commit cce3fccc0a4249b82ab2e0e92fe53579ef942799
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Wed Apr 23 17:26:56 2014 +0800
for test
commit 3d292995b3c4437a2674a687cc4e8da1b5fb83f5
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Wed Apr 23 16:45:57 2014 +0800
remove space
commit c608c2ba7cf010f1dcf8c0344f68536c48e181cb
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Wed Apr 23 16:42:43 2014 +0800
remove tabs
commit 3b769342a06e25ad23a2c86f23a94d0d7ca1a4c8
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Wed Apr 23 16:33:55 2014 +0800
refine UT case
commit 89b869f0c8f8c9bbd61e9de32caa77877aeae064
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Tue Apr 22 13:40:50 2014 +0800
Squashed commit of the following:
commit abe55494134ef8342ffe9566df4e1b3265fe21b6
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Tue Apr 22 10:50:07 2014 +0800
set MV range
commit 8c7f70c351e50d945c29118bed8b3781c22b7dbc
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Mon Apr 21 16:53:10 2014 +0800
refinement
commit bf35f19a7dc88743aacf8e89e681e0ef3302d40a
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Fri Apr 18 17:24:31 2014 +0800
correct tabs
commit 130b7f895d7020bfc571d910966891da93150242
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Fri Apr 18 17:17:06 2014 +0800
correct format
commit 0429703b0844363559dd2b3d44e45034232a9d8f
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date: Fri Apr 18 15:12:44 2014 +0800
add scroll UT
2014-04-24 15:12:49 +08:00
huili2
4a6259cf74
add slice/frame copy UT for EC
2014-04-23 21:45:17 -07:00
Martin Storsjö
788b67cbde
Fix the indentation of a line in targets.mk
...
This would be avoided if the targets.mk files are updated by
rerunning mktargets.sh instead of manually updating them.
2014-04-23 10:55:30 +03:00
huili2
427da1c990
Merge pull request #714 from ruil2/enc_setting
...
add usagetype parameter in encoder unit test to test screen content
2014-04-18 17:33:58 +08:00
ruil2
25c04102a9
turn off TestHorizontalSearch_SSE41 unit test becasue of random issues
2014-04-18 11:55:27 +08:00
ruil2
a15e640137
add usagetype parameter in encoder unit test to test screen content
2014-04-18 11:17:25 +08:00
ruil2
2d675cf741
Merge pull request #704 from JuannyWang/sampleNow
...
[Encoder UT] sample UT code refactor
2014-04-17 15:19:29 +08:00
Licai Guo
3d9d00b27c
Update targets.mk
2014-04-17 10:43:10 +08:00
JuannyWang
1c3c560a05
[Encoder UT] sample UT code refactor
2014-04-17 10:12:37 +08:00
JuannyWang
cc26f561f4
decMbAux UT bug fix
2014-04-15 09:29:46 +08:00
Martin Storsjö
04ca4ba488
Don't override the deblocking setting in the encoder test
...
Since this is on by default now, we don't need a separate test
that has it enabled. Thus we can now remove one of the encoder
tests.
By not overriding the deblocking setting at all, the hash
changes for the other tests that use SEncParamExt.
2014-04-14 15:38:10 +03:00
ruil2
1e3053208d
update the default value for bPrefixNalAddingCtrl and iLoopFilterDisableIdc
2014-04-14 14:06:02 +08:00
ruil2
21ed4a1f06
Merge pull request #671 from mstorsjo/c-api-test-warnings
...
Make the first C function parameter const void* in c_interface_test
2014-04-11 16:25:17 +08:00
Martin Storsjö
6d93d800e7
Make the first C function parameter const void* in c_interface_test
...
This fixes warnings when building with MSVC.
2014-04-11 10:34:10 +03:00
Martin Storsjö
a25f7b7c84
Declare for loop variables consistently in GetIntraPredictorTest
...
Previously, the same variable 'i' was sometimes declared within a for
loop and sometimes outside of the loop, all within the same function.
This avoids spurious warnings in MSVC 2005.
2014-04-11 10:31:58 +03:00
volvet
37201e273e
Merge pull request #660 from zhilwang/refine-me-asm-ut
...
Refine ME cross search ASM UT.
2014-04-09 20:38:45 -07:00
Licai Guo
7d7fac2adc
Refine ME cross search ASM UT.
2014-04-10 10:41:54 +08:00
JuannyWang
468bfb58ad
decodeMbAux UT addition
2014-04-09 16:53:39 +08:00
Licai Guo
c1cab64927
refine decoder side intrapred unit test, test assembly routine
...
only when the cpu feature can support it
2014-04-08 19:31:16 -07:00
Martin Storsjö
3dcd458ffd
Remove trailing whitespace in the source files
2014-04-08 18:13:23 +03:00
Martin Storsjö
1b2d3943f1
Use uintptr_t for casting pointers to integers
...
This fixes compilation on mingw-w64 and makes failing tests pass
on MSVC in 64 bit mode.
2014-04-08 09:46:47 +03:00
Licai Guo
5c60e8f868
Add ASM related functions for ME cross search
...
Add asm level functions
Add asm code for ME
Modify format
Add unit test for asm code.
Modify function name and format.
Remove unuse comment
Modify targets file
Add Macro protect for SSE41 funtion test
Modify according to review request.
2014-04-08 11:24:45 +08:00
JuannyWang
801b664201
add encoder UT of mbAux
2014-04-03 16:25:06 +08:00
ganyang
e51b636595
add GetIntraPred UT Files
2014-04-03 10:38:46 +08:00
JuannyWang
df6813063f
[Encoder UT] add expGolom UT and encoder trace modification
2014-04-02 13:57:09 +08:00
sijchen
f695227b00
add funtion pointer for search methods
2014-04-02 10:12:39 +08:00
Martin Storsjö
411df4c75f
Explicitly request 2 threads when testing slice threading
...
Previously the default value of iMultipleThreadIdc was 0,
which made sure threads were used for the test with multiple
slices (if run on a multicore machine). Now the default is 1,
so multiple threads has to be requested.
Explicitly request 2 threads, to make sure the threading code is
tested, even on machines with only one core.
2014-04-01 11:39:04 +03:00
ganyang
eb6f6ecf40
Add EncoderMB UT test file, and reformat UT files.
2014-04-01 13:55:22 +08:00
wayne liu
49df436616
fix bug of assign data
2014-03-31 20:20:15 -07:00
ganyang
2d335320c1
add ExpandPic encoder unit test
2014-03-28 10:36:14 +08:00
volvet
f7fba4b122
Merge pull request #580 from ylatuya/api
...
Prefix API with the Wels namespace
2014-03-26 15:45:02 -07:00
sijchen
59f243b487
Adjust function interface and add void function for further coworking, adjust test accordingly
2014-03-26 16:52:53 +08:00
sijchen
bbe016543f
Add basic cross search functions and its unit tests
2014-03-26 16:23:44 +08:00
Dong Zhang
421fe98af4
Add DecUT Motion Compensation on New Code Base
2014-03-25 18:57:52 -07:00
Andoni Morales Alastruey
328740f294
Prefix API with the Wels namespace
2014-03-25 17:40:01 +01:00
Licai Guo
2b1cd597c8
remove relative include paths
2014-03-24 22:14:43 -07:00
Licai Guo
f26bb57415
reorganize tests
2014-03-24 22:14:43 -07:00
sijchen
fcae0c7c48
Change the output of diamond search from qpel to interpel
2014-03-25 11:03:37 +08:00
huili2
cbbbe4cbae
add UT for PredMv in decoder
2014-03-20 01:09:04 -07:00
Dong Zhang
3528f4f2b9
Add Unit Test Expand Picture
2014-03-19 20:21:22 -07:00
Licai Guo
d897d362ab
Merge pull request #532 from huili2/WELS_CLIP1
...
Modify MACRO WELS_CLIP1 as inline functions
2014-03-19 08:50:04 +08:00
Martin Storsjö
e1b5e038d2
Use .obj as suffix for object files on MSVC
...
This avoids warnings when linking about "unrecognized source file
type, object file assumed".
2014-03-18 19:41:06 +02:00
Ethan Hugg
fc6f756436
Merge pull request #522 from mstorsjo/layered-encoding-test
...
Add a test of encoding multiple spatial layers
2014-03-18 09:46:00 -07:00
Martin Storsjö
8f2763b681
Add missing includes of time.h
...
This fixes building on MSVC.
2014-03-18 11:10:36 +02:00
huili2
090e8cc1ed
modify WELS_CLIP1 to be inline functions
2014-03-18 01:54:25 -07:00
Licai Guo
2fd892d98a
update master to latest and add ut of intraprediction in decoder
2014-03-18 01:13:52 -07:00
ruil2
b7b01faf29
Merge pull request #526 from licaiguo/IdctResAddPred-pr
...
add IdctResAddPred unit test for decoder
2014-03-18 15:04:29 +08:00
Licai Guo
95a2a40190
add IdctResAddPred unit test for decoder
2014-03-17 20:09:09 -07:00
Licai Guo
37fa5f554e
Merge pull request #513 from ruil2/encoder_interface
...
Encoder interface
2014-03-18 09:51:32 +08:00
Martin Storsjö
02b4beb70d
Add a test of encoding multiple spatial layers
...
This increases the coverage of the unit tests.
2014-03-17 20:08:45 +02:00
Licai Guo
258828f7ec
Merge pull request #503 from mstorsjo/encoder-test-coverage
...
Add encoder tests with deblocking and/or denoising
2014-03-17 16:46:38 +08:00
ruil2
36abe317a5
modify unit test for return type modification
2014-03-17 11:56:19 +08:00
Martin Storsjö
868f912dc2
Add encoder tests with deblocking and/or denoising
...
This increases the coverage of assembly routines (and encoder
features in general) tested by the codec unit test.
2014-03-14 22:33:33 +02:00
Ethan Hugg
6944ace5e1
Add time.h for Windows build.
2014-03-14 10:59:35 -07:00
Ethan Hugg
43bc9d7c07
Merge pull request #498 from mstorsjo/add-missing-include
...
Include time.h in DataGenerator.cpp
2014-03-14 08:21:02 -07:00
Martin Storsjö
dca9d628f7
Include time.h in DataGenerator.cpp
...
This fixes building on MSVC.
2014-03-14 15:16:34 +02:00
Martin Storsjö
d847aacace
Remove an unused variable
...
This fixes a warning in MSVC.
2014-03-14 15:15:57 +02:00
sijchen
2fe99d688b
add basic me test
2014-03-14 16:40:02 +08:00
Martin Storsjö
c3ddd926ba
Include time.h in the MemoryAlloc test
...
This is required to get the time() function. This fixes building
on older MSVC versions.
2014-03-10 11:38:48 +02:00
ruil2
a922155c9a
Merge pull request #466 from sijchen/add_memalign_test
...
Add memalign unit test
2014-03-10 17:25:41 +08:00
sijchen
dfd3d89a20
specific slice mode in encoder test
2014-03-10 16:57:19 +08:00
sijchen
53a570556d
add memalign unit test
2014-03-10 16:28:05 +08:00
Martin Storsjö
a93dd7ca42
Use the slice mode enum in BaseEncoderTest
2014-03-07 14:53:29 +02:00
Ethan Hugg
a86c1b048b
Merge pull request #391 from mstorsjo/threaded-test
...
Add a test with sliced encoding
2014-03-03 07:54:14 -08:00
Martin Storsjö
f13b5c3465
Add a test with sliced encoding
...
This serves as a simple test of the thread library.
2014-03-03 11:08:35 +02:00
Martin Storsjö
b6dd41ebc3
Use gtest functions for comparing hash strings
...
This prints the mismatched strings if the test failed,
simplifying managing and updating the test suite.
2014-03-03 10:53:31 +02:00
Martin Storsjö
9ccabd1fe3
Fix cropping when using SEncParamBase
...
The iFrameWidth/iFrameHeight fields are already aligned by the
SetActualPicResolution() function. Previously when iFrameWidth was
aligned directly in ParamBaseTranscode, this aligned value was used
to set iActualWidth/iActualHeight - losing the original, cropped
size.
This makes sure the output bitstream from the test of encoding
res/Static_152_100.yuv actually is cropped as it should.
2014-03-03 10:34:37 +02:00
Martin Storsjö
a5f5b37a25
Renumber vtable entries in the C ABI test
2014-02-26 22:13:59 +02:00
Martin Storsjö
c7ff8876bb
Add a new public method for initializing SEncParamExt to default values
...
This simplifies forward source compatibility when new fields are
added to SEncParamExt - when new fields are added to SEncParamExt,
this method makes sure those fields are initialized to the
default value - otherwise all API users would have to manually check
SEncParamExt every time it is updated to make sure there's no new fields
that should be set to a nonzero value by default (e.g. like
bEnableFrameSkip).
2014-02-26 22:12:11 +02:00
Licai Guo
e762951539
add more unit test on decoder
2014-02-25 22:51:56 -08:00
Martin Storsjö
e88348b76d
Allow building tests on MSVC versions where stdint.h is missing
...
Of the supported MSVC versions, only 2008 actually is missing
stdint.h, it is included in MSVC since 2010.
2014-02-24 15:38:37 +02:00
Martin Storsjö
0f3dfb33b0
Use the local sha1 function names directly without compatibility defines
2014-02-24 15:38:19 +02:00
Martin Storsjö
4f5fd952b6
Use the bundled sha1 implementation instead of relying on openssl
...
This simplifies running tests on platforms where OpenSSL isn't
commonly available.
2014-02-24 15:38:19 +02:00
Martin Storsjö
e8a2cf6d1f
Make the SHA1Result function write the output into a byte array
2014-02-24 15:38:19 +02:00
Martin Storsjö
7a4a066469
Make the SHA1 header compatible with C++
2014-02-24 15:38:19 +02:00
Martin Storsjö
fdd79e734a
Add an SHA1 implementation by Paul Jones
2014-02-24 15:38:15 +02:00
ruil2
3ba6a5f4da
Simplify encoder interface--remove EncoderFrame2 from interface
...
function
2014-02-20 10:33:07 +08:00
Martin Storsjö
49f4dad1b7
Split the encoder Initialize method into two
...
This avoids the struct type casting and having to pass a parameter
that says which kind of struct it actually is.
2014-02-18 22:51:54 +02:00
Martin Storsjö
a899f05f2d
Don't have SEncParamExt inherit SEncParamBase
...
Instead just duplicate the common fields. These fields had to
be duplicated for the C interface compatibility anyway - but
this way there is no risk to accidentally introduce an ABI
break since there is no need for the layout of SEncParamBase to
actually match the start of SEncParamExt.
2014-02-18 22:51:54 +02:00
Martin Storsjö
6d6a63a703
Mark the Initialize pointer parameter as const
...
This makes it clear to the callers that the struct will
not be modified by this call.
2014-02-18 22:51:53 +02:00
Martin Storsjö
5cb8518306
Remove the Initialize2 function from the external API
...
This function no longer needs to be public since one can pass
SEncParamExt to the normal Initialize function.
2014-02-18 22:51:53 +02:00
Martin Storsjö
1075338b9b
Use the actual struct type instead of a void pointer to the decoder Initialize method
2014-02-18 13:00:59 +02:00
Martin Storsjö
658d1e3651
Remove the unused iInitType parameter to the decoder Initialize method
2014-02-18 13:00:45 +02:00
ruil2
35fa429fb0
encoder interface update step1
2014-02-18 09:51:47 +08:00
Martin Storsjö
76383c7150
Add a test that verifies that the bool typedef in C is ABI compatible with C++
2014-02-13 11:03:36 +02:00
Martin Storsjö
ce22f84a2b
Regenerate target makefiles after the latest mktargets.py changes
2014-02-12 22:11:05 +02:00
jwwang
4fa810da8b
1. support .c in makefile generator. 2. add test to check C interfaces.
2014-02-12 14:52:35 +08:00
Martin Storsjö
d0185ab253
Remove redundant /./ parts from pathnames in makefiles
...
This is mostly a cosmetic improvement for the quiet make output.
2014-02-08 18:46:52 +02: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