Commit Graph

678 Commits

Author SHA1 Message Date
Martin Storsjö
1c2940479d Silence warning logging while running tests that can produce errors 2014-10-29 22:44:40 +02:00
Martin Storsjö
2907cb2875 Remove an impossible condition
uiIntraPeriod is unsigned, and thus can't ever be negative.

The subtraction on the line above can't ever make the value wrap
around either, since param_.uiIntraPeriod % uiGOPSize always is
smaller than or equal to param_.uiIntraPeriod. Thus, the check
never is necessary even if the value would be signed either.

This fixes warnings when building with clang.
2014-10-29 22:07:21 +02:00
Martin Storsjö
a625dc836d Remove unused variables 2014-10-29 22:07:20 +02:00
huashi
54c24dfd60 refactor --for BaseEncoderTest 2014-10-29 17:53:08 +08:00
ruil2
58cc29225e Merge pull request #1463 from sijchen/after_review4
[Encoder] for reference selection under screen
2014-10-29 17:17:07 +08:00
huashi
26615fffd0 set option for ParamExt----random cases 2014-10-28 20:36:33 +08:00
Sijia Chen
4fab8c2ee7 for reference selection under screen:
1, ref_list_mgr_svc.cpp, Ln314: fix a wrong DeleteLTRFromLongList which should not be used under screen strategy
2, ref_list_mgr_svc.cpp, Ln910: remove the frame which is furthest in distance to the current frame in ref list
3, wels_preprocess.cpp: use scene LTR ref list when the current frame is scene LTR
-, ref_list_mgr_svc.cpp, Ln811: add DEBUG trace
reviewed at: https://rbcommons.com/s/OpenH264/r/870/
2014-10-28 16:58:59 +08:00
ruil2
abc01e6b81 add encoder cabac support 2014-10-27 13:06:33 +08:00
ruil2
2dbb757d30 Merge pull request #1451 from sijchen/for_format
Fixes and change naming
2014-10-24 15:18:55 +08:00
Sijia Chen
6a2a4efef6 fix names to keep consistent of style
improve UT to cover more cases under GetStatistics
2014-10-24 14:39:50 +08:00
Martin Storsjö
f0c6891627 Add casts to avoid warnings about comparison between signed and unsigned 2014-10-24 09:05:32 +03:00
huili2
dcdcc7f3b8 Merge pull request #1443 from dongzha/AddUTSwitch
add UT for sim-SVC layer switch
2014-10-24 10:21:36 +08:00
sijchen
43c62d06eb Merge pull request #1439 from sijchen/for_format
[Reformat] format cpp files for next release
2014-10-24 09:00:36 +08:00
Martin Storsjö
57aae73d4c Add casts to avoid warnings about comparison between signed and unsigned 2014-10-23 14:20:38 +03:00
huili2
23b5a61153 Merge pull request #1429 from sijchen/add_statistics1
[Encoder] add EncoderStatistics
2014-10-23 18:02:23 +08:00
Sijia Chen
4e89e71e8f reformat cpp files for unit tests 2014-10-23 17:54:33 +08:00
dong zhang
769c38d4c4 add UT for sim-SVC switch 2014-10-23 15:50:43 +08:00
Martin Storsjö
7720f2cc5d Add literal CRLF at the end of nasm commands that are missing them
These are added by MSVC as soon as the file is touched anyway.

This avoids stray changes to the files if the files are resaved
from within the IDE.
2014-10-22 10:14:08 +03:00
Sijia Chen
a765197b73 add interface and basic implementaion and UT for EncoderStatistics 2014-10-22 11:35:17 +08:00
Haibo Zhu
9d182ee515 Add picture bIsComplete flag to reflect the status of decoder
Modify the output error status and add some some judgement
2014-10-15 11:36:24 -07:00
Ethan Hugg
3885bd8f0e Merge pull request #1406 from mstorsjo/fix-warnings
Fix compiler warnings about comparison between signed and unsigned

Fix bugs WelsDeblockingFilterSlice UT when random value is 0
2014-10-09 19:51:58 -07:00
Martin Storsjö
ad247a9a4a Fix compiler warnings about comparison between signed and unsigned 2014-10-09 11:58:23 +03:00
huili2
f9bab05b3a Merge pull request #1402 from HaiboZhu/Add_UT_Deblocking
Add ut deblocking
2014-10-09 09:04:55 +08:00
Ethan Hugg
52419bd13e Merge pull request #1400 from mstorsjo/warning-fix
Fix compiler warnings
2014-10-02 12:26:45 -07:00
Haibo Zhu
b7c54242a9 Modify the random value range which only for debug
Modify the CLIP3 macros to match the CLIP3(value, min, max)
Add partly UT cases into it which related to function call
Modify the typo for WELS_NEON
Add partly UT cases into it which related to Bs calculation
Update Windows VS project
2014-09-30 01:36:18 -07:00
Haibo Zhu
04c2a7ac5c Add CLIP3 and using ASSERT_FALSE macros 2014-09-30 01:36:18 -07:00
Haibo Zhu
27a21edcc9 Modify the targets.mk 2014-09-30 01:36:18 -07:00
Haibo Zhu
3593f2e3e7 Add partly UT code for deblocking filter 2014-09-30 01:36:18 -07:00
HaiboZhu
007fb47004 Merge pull request #1399 from huili2/ParseOnlyAPI
add API only for decode parser
2014-09-30 14:51:49 +08:00
Martin Storsjö
0affe66f93 Remove unused variables 2014-09-30 08:57:29 +03:00
huili2
efdefdba28 add API only for decode parser for HW decoding support 2014-09-29 19:14:58 -07:00
shihuade
d875d923f8 refator for API test--prepareEncDecParam and EncodeOneFrame 2014-09-29 19:58:43 +08:00
dongzha
07fa3d1898 add missed files in VS UT solution 2014-09-28 15:20:47 +08:00
Sijia Chen
cf2cf9efd9 add basic strategy for lossy+no LTR route 2014-09-26 16:40:19 +08:00
huili2
810d20a59d bug fix for dataformat UT 2014-09-24 18:04:24 -07:00
sijchen
d0f9b218f4 Merge pull request #1383 from ruil2/rc_refine
refine scc rc
2014-09-24 16:31:49 +08:00
ruil2
4e57a46ca5 Merge pull request #1382 from huili2/dataformat_bugfix
add protection for decoder and data format
2014-09-24 13:47:02 +08:00
ruil2
c618cb1eaf refine scc rc 2014-09-24 09:54:01 +08:00
huili2
f8d2ae42ef add protection for decoder and data format 2014-09-23 00:29:23 -07:00
Martin Storsjö
a59a989d9b Silence warnings with gcc in GetOptionTid_AVC_NOPREFIX 2014-09-23 09:39:18 +03:00
HaiboZhu
06e56ecdd8 Merge pull request #1380 from huili2/ec_option_free
add freely setoption for EC_idc and UT
2014-09-22 15:51:19 +08:00
huili2
f6fb459a7f add freely setoption for EC_idc and UT 2014-09-21 21:51:48 -07:00
sijchen
fd8db0451e Merge pull request #1377 from ruil2/scc_rc_1
add scc rate control
2014-09-19 17:08:48 +08:00
ruil2
66e38cc9ed add scc rate control 2014-09-19 15:56:49 +08:00
Sijia Chen
84ca659f06 add parameter and one case in UT 2014-09-19 14:46:02 +08:00
ruil2
ac2de4cbab Merge pull request #1370 from dongzha/addAPIUTTid
Add Tid/Trace API UT and Fix a bug when set NULL trace
2014-09-18 14:29:26 +08:00
ruil2
3ff145e839 rename namespace and funciton name to avoid conflicts with old library 2014-09-17 15:50:59 +08:00
dongzha
c213c6ba30 1. add Tid API UT
2. add Trace UT
3. Fix a crash issue when set NULL trace
2014-09-17 09:26:54 +08:00
Ethan Hugg
4e54fd191b Merge pull request #1361 from mstorsjo/avoid-comparing-uninitialized
Make sure uiIDRPicId is initialized within EncodeDecodeTest
2014-09-16 08:39:22 -07:00
Ethan Hugg
19dcff8616 Merge pull request #1360 from mstorsjo/use-correct-delete
Use the correct version of delete within a unit test
2014-09-16 08:38:20 -07:00
Martin Storsjö
a6cc71208e Make sure uiIDRPicId is initialized within EncodeDecodeTest
This fixes valgrind warnings about comparison with uninitialized
values.
2014-09-16 11:59:09 +03:00
Martin Storsjö
58eba54e8c Use the correct version of delete within a unit test
This fixes valgrind warnings when running this test. The mismatched
delete could also potentially have caused memory corruption issues
while running the tests.
2014-09-16 11:57:24 +03:00
Martin Storsjö
e7cd53e81b Fix build warnings with gcc in EncodeDecodeTest
Avoid a comparison between signed and unsigned integers, and avoid
a warning about a variable which is set but not used.
2014-09-16 10:10:57 +03:00
dongzha
f8d5f93b16 Merge pull request #1355 from syureyi/clean
Clean
2014-09-16 09:58:27 +08:00
lyao2
72862118f9 Fix bug RC_QUALITY_MODE not works as expected 2014-09-15 15:31:20 +08:00
huili2
b51ff51387 Merge pull request #1350 from lyao2/ut_interface2
add encoder Interface additional option set test
2014-09-15 09:15:28 +08:00
huili2
4001551027 Merge pull request #1349 from dongzha/AddAPIUTEncoder_Decoder
add encoder/decoder api test for LTR and EC flag
2014-09-15 09:15:08 +08:00
lyao2
522aa4457a enlarge QP range when skipframeflag off on BitRate mode 2014-09-12 14:45:08 +08:00
dongzha
311f7006fd 1. add encoder-engine-decoder API UT for: IDR request, LTR request
2. add decoder api UT for EC: Disable/Enable EC
3. Fix a decoder bug when EC is disabled
   itoltalMbDec should be set to zero when encouter a new sequence/picture, even   when EC is disabled.
2014-09-12 11:12:59 +08:00
zhuiling
0fe477625c improve py, and change mk according to mk 2014-09-12 10:25:46 +08:00
lyao2
7c95ccc6a7 update SHA1Table 2014-09-04 11:07:35 +08:00
ruil2
7e8cde055f add UT for LTR setopton and fix crash issue 2014-09-03 13:28:14 +08:00
lyao2
15124b1258 fix bug 2014-09-02 13:41:00 +08:00
lyao2
aa7eb5fd09 code refine 2014-09-02 09:21:31 +08:00
lyao2
849a730608 refine code 2014-09-01 17:49:59 +08:00
lyao2
24bd0b74ae add additional option set test 2014-09-01 16:35:32 +08:00
ruil2
43e1c46756 Merge pull request #1317 from mstorsjo/avoid-uninitialized-test
Avoid using uninitialized memory in the motion estimation tests
2014-08-28 17:29:16 +08:00
ruil2
3ff6bf8ac1 Merge pull request #1315 from dongzha/RemoveIntraPeriod
Fix following IntraPeriod set issue
2014-08-28 17:09:10 +08:00
Martin Storsjö
5809db9eff Avoid using uninitialized memory in the motion estimation tests 2014-08-28 11:51:39 +03:00
dong zhang
0187c84f29 Fix following IntraPeriod set issue
1. In WelsInitSps function, if kuiIntraPeriod is huge, uiLog2MaxFrameNum might be bigger than 15, which may introduce illegal H264 bitstream.
2. if pSvcParm.uiIntraPeriod is not zero (e.g. 14) at the initial, it will init sps.iLog2MaxPocLsb. to 5.
 But if I changed pSvcParm.uiIntraPeriod to 40, sps.iLog2MaxPocLsb. is still 5, need to recalcuted this parameter.
 (Same with uiLog2MaxFrameNum.)
2014-08-28 16:35:23 +08:00
Martin Storsjö
c3710c4130 Avoid warnings about comparison between signed and unsigned
There's no need for these variables to be explicitly unsigned.
This also matches the function above.
2014-08-28 11:13:38 +03:00
dongzha
40ca34ae13 Merge pull request #1312 from huili2/win_ut_debug_env
add gtest debug environment for MSVC
2014-08-28 10:47:19 +08:00
dongzha
67b5a79c2e Merge pull request #1313 from huili2/SDP_support
add decoder capability info
2014-08-28 10:47:12 +08:00
huili2
76c6ff4b0f add gtest debug environment for MSVC 2014-08-27 17:58:59 -07:00
huili2
0b23d0facb add decoder capability info 2014-08-27 17:48:58 -07:00
zhiliang wang
93af7bfc64 Add UT for Downsample functions. 2014-08-27 15:40:14 +08:00
dongzha
81f7b0c108 Merge pull request #1306 from zhilwang/vaa-ut
Add UT for VaaCalc Functions.
2014-08-27 14:56:35 +08:00
zhiliang wang
0163eb520d Add UT for VaaCalc Functions. 2014-08-27 13:53:18 +08:00
ruil2
ac7fac9644 get mv and mvd from level limitation 2014-08-26 16:30:57 +08:00
Karina
a19974d009 fix crash on mvd cost calculation 2014-08-25 13:30:45 +08:00
dongzha
7486bb1100 Merge pull request #1297 from ruil2/overflow_mv_1
add mv range limitation and related ut
2014-08-25 13:12:09 +08:00
dong zhang
8da63eae33 1. add encoder/decoder api test for IDR id and framenum
2. use random value as input, instead of using *.264
2014-08-25 11:02:31 +08:00
ruil2
441dc45e69 add mv range limitation and related ut 2014-08-25 09:53:49 +08:00
zhiliang wang
e6f838e331 Add arm UT for Sad,IntraSad,IntraPred. 2014-08-21 15:36:57 +08:00
ruil2
7fb9e57f30 Revert "ut_win32"
This reverts commit 462f56d413.
2014-08-21 10:07:03 +08:00
unknown
462f56d413 ut_win32 2014-08-20 10:46:05 +08:00
HFVideoMac
0f95fac4ca add arm32/64 code for InitHash 2014-08-15 13:47:59 +08:00
dongzha
87107c50a3 Merge pull request #1275 from zhilwang/x86_hash_scc
Add x86 32/64bit asm code and UT for SCC hash functions
2014-08-15 10:12:18 +08:00
zhiliang wang
ef88889404 refine format and add UT cases 2014-08-15 09:22:37 +08:00
zhiliang wang
b35f5797de Add x86 32/64bit asm code for Scc_hash 2014-08-14 18:41:52 +08:00
HaiboZhu
42384c0cb4 Merge pull request #1274 from huili2/test_VclNal
enable api test for decoder VclNal
2014-08-14 17:06:45 +08:00
huili2
f82726d7ef enable api test for decoder VclNal 2014-08-14 00:52:21 -07:00
dongzha
3703ba16a4 Fix build error ARM 2014-08-14 12:54:36 +08:00
zhiliang wang
f2314151e8 Add x86 32/64bit asm code for SumOfBlocks. 2014-08-13 11:18:39 +08:00
ruil2
f7cd6e7aad use WelsEnc namespace instead of WelsSVCEnc 2014-08-11 16:08:49 +08:00
dongzha
7b3bf074b3 Merge pull request #1258 from mstorsjo/fetch-codec-params
Get the actual used parameters in the codec in TemporalLayerSettingTest
2014-08-11 10:53:28 +08:00
dongzha
6190c10de8 Merge pull request #1256 from mstorsjo/speedup-tests
Speed up test cases in EncoderInterfaceTest
2014-08-11 10:47:44 +08:00
dongzha
f8e5d3a7bf Merge pull request #1250 from huili2/test_EndOfStream
test end of stream for decoder API UT
2014-08-11 10:34:07 +08:00
Martin Storsjö
352f5eea7a Get the actual used parameters in the codec in TemporalLayerSettingTest
Make sure that pOptions is initialized to the parameters that
the codec actually uses, not the ones that we initially tried
to set.

When calling SetOption to update the codec parameters, this may
cause a reset of the whole codec if e.g. the number of threads
differs from what is set within the codec itself.

If the number of threads was changed by the codec internally
when inited (e.g. changed from 0 to 1), WelsEncoderParamAdjust
may think the whole codec needs to be reset.

This fixes running EncoderInterfaceTest.TemporalLayerSettingTest
on machines where the detected number of cores is 1.
2014-08-08 22:57:22 +03:00
Martin Storsjö
38cc9acdd3 Set a specific frame size in TemporalLayerSettingTest
Previously, this test used whatever size was set in m_iWidth
and m_iHeight before, which depended on the order that the tests
were executed. When this test was the first one executed in the
EncoderInterfaceTest, the width and height were set to the max.

Instead of having the test behaviour depend on the test order,
set a specific size, just as InitializeParamExt and MemoryCheckTest
do.

This reduces the runtime of TemporalLayerSettingTest from 86 seconds
to 26 seconds, when run in valgrind.
2014-08-08 12:24:57 +03:00
Martin Storsjö
c3702d9075 Reduce the number of frames tested in EncoderInterfaceTest
There's little point in running the same test over and over for
a huge number of frames if it doesn't test much different things.

This reduces the runtime of EncoderInterfaceTest.* from 322 seconds
to 140 seconds, when running in valgrind.
2014-08-08 12:23:12 +03:00
Martin Storsjö
642b405f87 Reenable GetIntraPredictorTest tests that were broken on android
These tests work as intended now.
2014-08-08 11:34:45 +03:00
HFVideoMac
84f33aa8e4 Disable failed UT and Fix Build Error onAndroid 2014-08-08 10:53:23 +08:00
zhilwang
439e51bc11 Merge pull request #1249 from dongzha/addArm32SCCNew
add arm 32/64 code and UT for SVC SCC motion estimation
2014-08-08 09:19:51 +08:00
dongzha
4ebf8266a1 Merge pull request #1247 from mstorsjo/test-seed
Print the random seed at startup
2014-08-07 10:09:47 +08:00
Martin Storsjö
e8fafebd96 Silence warnings and errors when running tests that intentionally produce errors 2014-08-06 21:32:08 +03:00
Martin Storsjö
df16cd9d0c Print the random seed at startup
Also add an option for overriding the seed at startup.

This allows reproducing temporary issues by rerunning the test suite
with the same random seed.

Note that if tests are added or removed (or tests are skipped by passing
the --gtest_filter option), or if running on a different libc, the same
seed might result in different random values.
2014-08-06 19:32:25 +03:00
HFVideoMac
cff49f5e45 add arm 32/64 code and UT for SVC SCC motion estimation 2014-08-06 17:24:36 +08:00
huili2
ed12e6aa46 test end of stream for decoder API UT 2014-08-04 23:46:11 -07:00
ruil2
11f0a11177 Merge pull request #1242 from huili2/test_dataformat
setget_dataformat_ut
2014-08-01 12:27:38 +08:00
huili2
ecfd7df157 Merge pull request #1237 from syureyi/mobileutat
Mobileutat
2014-07-31 17:15:16 +08:00
Martin Storsjö
a1bc5fa1b5 Include test_stdint.h to get stdint types for MSVC 2014-07-30 13:51:52 +03:00
ruil2
8dd5d483d4 remove test case because this issue had been fixed 2014-07-29 11:05:48 +08:00
huili2
e8fdd4cf75 setget_dataformat_ut 2014-07-28 18:41:58 -07:00
lyao2
4ee434691a fix param initialization bug in UT 2014-07-28 17:43:56 +08:00
huili2
adc7be9f01 add decoder UT module for API 2014-07-28 00:33:18 -07:00
syureyi
4335167792 change the /sdcard/ and also alignment format 2014-07-28 13:25:27 +08:00
HaiboZhu
39d490b23d Merge pull request #1224 from huili2/ec_flag_modif
modify EC API name and remove useless flag
2014-07-28 13:06:23 +08:00
huili2
933c477717 modify EC API name and remove useless flag 2014-07-27 21:35:26 -07:00
Martin Storsjö
6543900747 Don't set iPicWidth or iPicHeight to 0 in random tests
This should fix occasional failures in the EncoderInterfaceTests,
such as in https://travis-ci.org/cisco/openh264/jobs/30815104.
2014-07-25 20:14:55 +03:00
ruil2
e58de20f3a add encoder interface ut 2014-07-25 16:40:14 +08:00
syureyi
b53f8909de astyle 2014-07-25 14:41:06 +08:00
syureyi
f78f395683 checking the scripits for unittest automatically on mobile 2014-07-25 14:05:36 +08:00
zhilwang
6ba537bee5 Merge pull request #1203 from dongzha/AddAQArm64
add ARM64 Adaptative Quantization code and UT
2014-07-25 13:46:10 +08:00
lyao2
562f38afff add interface UT for RC and code refactor 2014-07-24 17:27:55 +08:00
HFVideoMac
910c64ef22 add ARM64 Adaptative Quantization code and UT 2014-07-22 15:07:25 +08:00
HFVideoMac
0d1699b67f Add Unit Test and ARM64 code for block_add 2014-07-21 14:37:52 +08:00
dongzha
396249fedc Merge pull request #1171 from shihuade/ReleaseV2.2
update binary comparison test script
2014-07-17 08:43:14 +08:00
dongzha
2a83a85eb7 Merge pull request #1151 from mstorsjo/unify-deployment-target
Set the iOS deployment target consistently
2014-07-17 08:40:39 +08:00
huili2
efdb0cd2e2 Merge pull request #1175 from ruil2/scc_ut
enable hashcode verification for screen content
2014-07-16 14:00:16 +08:00
huili2
e63dad0b6c Merge pull request #1172 from ruil2/pause_remove
remove pause frame interface which will be done in application level
2014-07-16 13:57:46 +08:00
shihuade
c1a9beeab8 update binary comparison test script 2014-07-15 06:42:42 -04:00
lyao2
d633f8584a add interface UT for memory align check 2014-07-15 15:21:54 +08:00
ruil2
aaedb508c3 enable hashcode verification for screen content 2014-07-15 14:41:29 +08:00
ruil2
010e423b2b Merge pull request #1169 from sijchen/interfaceUT12
[Encoder UT] Interface: EncoderEncodeParameterSets
2014-07-15 14:20:18 +08:00
ruil2
3632a0331c remove pause frame interface which will be done in application level 2014-07-15 11:05:05 +08:00
Ethan Hugg
b6b7bb7680 Merge pull request #1153 from mstorsjo/silence-error-testing
Silence error logging while running tests that are intended to produce errors
2014-07-14 07:53:45 -07:00
Sijia Chen
b669801e89 add interface UT for WelsEncoderEncodeParameterSets
and fix previous value
2014-07-14 18:36:35 +08:00
Sijia Chen
d1123a8bb1 remove blank lines 2014-07-14 15:34:40 +08:00
Sijia Chen
bc76a8f9b3 add interface UT for ForceIntraFrame 2014-07-14 15:30:01 +08:00
Martin Storsjö
0ee2562004 Silence error logging while running tests that are intended to produce errors
The errors in the test log are distracting, making it look like
a test actually failed.
2014-07-11 12:47:52 +03:00
Martin Storsjö
301ccb1081 Set the iOS deployment target consistently
Set it on the project level, don't override it on the target level.

Set the deployment target to 6.0 everywhere.
2014-07-11 11:39:08 +03:00
Sijia Chen
99dc18c0ba add BasicInitialize UT and some fix in create/destroy encoder in the existing interface test 2014-07-11 13:50:58 +08:00
dongzha
0cafc565be Merge pull request #1121 from ruil2/interface_update_1
interface update
2014-07-10 10:15:30 +08:00
ruil2
1dd5a7a866 Merge pull request #1119 from mstorsjo/update-gitignore
Ignore files produced by the new binary comparison tool
2014-07-10 09:28:12 +08:00
Martin Storsjö
73ccb74414 Only build the needed binaries in run_PrepareAllTestData.sh
Previously this did a full make, including all of gtest and the unit
test suite. This was done before every build, even for the binary
comparison tests which doesn't use the unit test.

This reduces the runtime of run_PrepareAllTestData.sh from 52 to 10
seconds in one setup.
2014-07-09 11:46:52 +03:00
ruil2
45c2fff6b8 interface update 2014-07-09 15:41:04 +08:00
Martin Storsjö
53b79c0c1f Ignore files produced by the new binary comparison tool 2014-07-09 10:30:05 +03:00
sijchen
2f53a08aba Merge pull request #1109 from shihuade/Release2.0
add encoder binary comparison test model, reviewed at https://www.rbcommons.com/s/OpenH264/r/500
2014-07-09 12:59:20 +08:00
huili2
adb0fa498f astyle all cpp files 2014-07-08 20:01:42 -07:00
huili2
5f8822644f Merge pull request #1108 from mstorsjo/regenerate-makefiles
Regenerate the targets.mk files
I'm not able to see the changes in rbcommons (strange), so directly look at here.
2014-07-09 10:14:04 +08:00
zhilwang
228ea1a668 Merge pull request #1101 from dongzha/AddArm64MBCopy
add arm64 MB COPY code and UT
2014-07-09 09:31:31 +08:00
shihuade
78771344b7 add encoder binary comparison test model 2014-07-08 13:15:57 -04:00
Martin Storsjö
7fc869cf0f Regenerate the targets.mk files
This makes the indentation of some new lines consistent with the rest.
2014-07-08 11:42:05 +03:00
dongzhang
249b8a0aa6 add arm64 MB COPY code and UT 2014-07-08 14:22:14 +08:00
Martin Storsjö
fba362d1de Fix spacing in include directives
Astyle doesn't change the spacing here, but make it consistent with
all the other files.
2014-07-08 09:01:42 +03:00
dongzhang
eace9b7b00 add MemoryZero Arm64 code and UT 2014-07-08 12:52:48 +08:00
dongzhang
9b753c9c39 add reconstruct UT input limitation 2014-07-08 12:33:14 +08:00
huili2
9a68572240 Merge pull request #1092 from dongzha/AddRecARM64CodeAndUT
Add ARM64 Code and UnitTest for reconstruction
2014-07-08 10:31:22 +08:00
huili2
fb6379eeb1 use grey instead of green in EC without ref 2014-07-07 02:24:51 -07:00
dongzhang
d88b83df44 Add ARM64 Code and UnitTest for reconstruction 2014-07-07 15:31:46 +08:00
huili2
ef0c3e2b91 Merge pull request #1075 from HaiboZhu/Debug_InvHadamard_Chroma
Debug for chroma inv-hadamard dequant mismatch error
2014-07-04 13:49:36 +08:00
ruil2
9506f71b43 Merge pull request #1060 from mstorsjo/loopfilter-multithreading
Only force iLoopFilterDisableIdc to 2 if multithreading has been enabled
2014-07-04 10:43:41 +08:00
Haibo Zhu
da75e15b4a Modify the unit test for WelsDequantIHadamard2x2Dc 2014-07-03 18:40:12 -07:00
Martin Storsjö
292d78db5c Avoid writing in array index [-1] in DecUT_IntraPrediction
This fixes running the tests when built with clang in debug mode.

This was accidentally broken in 6e815e708 when switched to using
ENFORCE_STACK_ALIGN_1D instead of manually aligning the buffers.

Previously the aligned pointer always had at least 16 bytes of
extra space in the stack before the pointer, so using [-1] was ok,
while now when using ENFORCE_STACK_ALIGN_1D, it's only guaranteed
that the pointer itself is aligned, but not that there's any extra
space before the pointer. Therefore, we need to manually offset
everything by one kiStride extra. (This already was accounted for
in the total number of bytes allocated for the array.)
2014-07-03 10:20:42 +03:00
Martin Storsjö
6e40991cc7 Only force iLoopFilterDisableIdc to 2 if multithreading has been enabled
Previously these lines were within an #ifdef MT_ENABLED block,
but now that threading is enabled by default, we should probably
only do it if threading has been requested.
2014-07-03 08:38:23 +03:00
ruil2
f245dc34ff Merge pull request #1062 from sijchen/scc_md_bgd1
fix BGD under screen and remove a build warning in ME
2014-07-03 11:23:17 +08:00
Sijia Chen
49fb042f21 add bgd fix to camera route as well to avoid visible artifact when using fake content in video 2014-07-03 11:01:02 +08:00
lyao2
44faa1c9a7 add encoder interface UT for IDR request 2014-07-02 18:42:05 +08:00
ruil2
bdf9f6b4ff Merge pull request #1043 from mstorsjo/avoid-globals
Get rid of global non-readonly variables within the library
2014-07-02 14:01:35 +08:00
Martin Storsjö
d84d739ec8 Hardwire functions set up in WelsInitFillingPredFuncs
These are never overridden by any assembler optimized versions.
(The assembler optimized intra predictor functions may use such
optimized code internally anyway.)

This avoids global writable data.
2014-07-01 12:00:32 +03:00
Martin Storsjö
d2afebd2d7 Add proper spacing in include directvies 2014-07-01 10:55:04 +03:00
sijchen
76bd633d91 Merge pull request #1036 from mstorsjo/test-random
Don't call srand(time()) inside utility functions inside tests 
https://rbcommons.com/s/OpenH264/r/564/
2014-07-01 15:48:07 +08:00
zhilwang
3a6f51781d Merge pull request #1044 from mstorsjo/android-cleanup-compiler-flags
Simplify the compiler flags for the android test projects
2014-07-01 15:31:22 +08:00
Martin Storsjö
4f594deff9 Don't reset the random number generator within the unit tests
This makes sure we don't accidentally return the same sequence
of random numbers multiple times within one test (which would
be very non-random).

Every time srand(time()) is called, the pseudo random number
generator is initialized to the same value (as long as time()
returned the same value).

By initializing the random number generator once and for all
before starting to run the unit tests, we are sure we don't
need to reinitialize it within all the tests and all the
functions that use random numbers.

This fixes occasional errors in MotionEstimateTest.

MotionEstimateTest was designed to allow the test to occasionally
not succeed - if it didn't succeed, it tried again, up to 100 times.
However, since the YUVPixelDataGenerator function reset the random
seed to time(), every attempt actually ran with the same random
data (as long as all 100 attempts ran within 1 second) - thus if
one attempt in MotionEstimateTest failed, all 100 of them would
fail. If the utility functions don't touch the random seed,
this is not an issue.
2014-07-01 10:20:45 +03:00
zhilwang
2b038fa73b Merge pull request #1037 from mstorsjo/unify-align-macros
Unify macros for alignment
2014-06-30 10:09:05 +08:00
zhilwang
17f3dd5ae6 Merge pull request #1041 from mstorsjo/upgrade-ios-projects
Mark xcode projects as upgraded to/checked for the latest version
2014-06-30 10:07:16 +08:00
zhilwang
1780a81a1d Merge pull request #1042 from mstorsjo/avoid-ios-build-warnings
Avoid warnings when building for iOS
2014-06-30 10:06:52 +08:00
Martin Storsjö
a01d6812ed Simplify the compiler flags for the android test projects
These parts aren't performance critical, thus overriding the
compiler optimization flags (and arm instruction mode) isn't
necessary.
2014-06-29 19:59:10 +03:00
Martin Storsjö
f6302ea414 Mark xcode projects as upgraded to/checked for the latest version
This avoids some warnings when building. This shouldn't affect
building with older xcode versions.
2014-06-29 16:06:07 +03:00
Martin Storsjö
b5407915cc Avoid warnings when building for iOS
Get rid of warnings by avoiding mixing data types unnecessarily,
and by adding casts.
2014-06-29 16:03:34 +03:00
Martin Storsjö
6e815e708d Use ENFORCE_STACK_ALIGN_1D instead of manually doing stack buffer alignment 2014-06-29 00:55:46 +03:00
Martin Storsjö
f300476468 Use the ALIGNED_DECLARE macro instead of __align16 2014-06-29 00:36:02 +03:00
Martin Storsjö
a474e00d15 Fix a typo, Chorma -> Chroma 2014-06-27 23:50:14 +03:00
zhuling13
8b1b0b6582 for auto testing 2014-06-25 19:57:39 -07:00
huili2
dc3fae4477 astyle all 2014-06-25 18:50:41 -07:00
huili2
101265388b Merge pull request #1005 from huili2/rc_overflow
prevent int32 multiplication overflow
2014-06-26 09:20:14 +08:00
huili2
606d748e5b prevent int32 multiplication overflow 2014-06-24 18:59:02 -07:00
ruil2
f40b964526 update unit test code to support name change 2014-06-23 16:38:45 +08:00
dongzha
b4112bc886 Merge pull request #979 from huili2/modify_DecUT_intra
Prevent misaligned warning in UT
2014-06-18 13:19:57 +08:00
huili2
6d0c89663d Prevent misaligned warning in UT 2014-06-17 18:42:25 -07:00
ruil2
1111757977 Merge pull request #967 from dongzha/Deblock_AArch64
add arm 64 deblock code and Unit Test code
2014-06-16 17:19:25 +08:00
huili2
91cd93e5d0 Merge pull request #962 from dongzha/UseIntInRC
Use Int instead of Double in Rate Control and Modify anchor SHA1 value
2014-06-13 10:59:50 +08:00
dongzha
f6ce43f83b Use Int instead of Double in Rate Control and Modify anchor SHA1 value 2014-06-12 17:30:13 +08:00
ruil2
1e43075b25 update expand picture UT 2014-06-12 09:37:30 +08:00
ruil2
a79c54cde7 fix a typo 2014-06-11 12:04:59 +08:00
ruil2
587a8b20f4 Merge pull request #951 from dongzha/AddArm64UnitTestEP
Ignore a special case for expand chroma picture under X86_ASM to fix issue #947
2014-06-11 10:43:45 +08:00
dongzhang
fa137a93e9 Ignore a special case for expand chroma picture under X86_ASM 2014-06-11 10:05:29 +08:00
Martin Storsjö
314f732333 Use the ENFORCE_STACK_ALIGN_2D instead of the compiler-specific align attribute
This fixes building with MSVC.
2014-06-10 17:06:18 +03:00
Martin Storsjö
19ea4244f5 Set a sensible total bitrate when testing multilayer encoding
The previous encoder parameters triggered warning logging in
the encoder.
2014-06-10 11:04:45 +03:00
dongzhang
0e0c8b5569 add arm 64 deblock code and Unit Test code 2014-06-10 11:23:51 +08:00
ruil2
eb889c95e0 Merge pull request #938 from dongzha/AddArm64UnitTestEP
add ARM32/64 Unit Test for Expand Picture
2014-06-10 11:12:49 +08:00
ruil2
5aa7cdedb8 clean build warning related encoder 2014-06-10 10:39:44 +08:00
ruil2
eceb4e51ad Merge pull request #933 from huili2/fix_bug_UT_GetIntraPred
fix memory leak in EncUT_GetIntraPredictor
2014-06-10 10:22:37 +08:00
dongzhang
cf9e21febd add ARM32/64 Unit Test for Expand Picture 2014-06-10 09:38:08 +08:00
huili2
01322d11ff fix memory leak in EncUT_GetIntraPredictor 2014-06-09 18:12:03 -07:00
syureyi
eb115ad42a add ARM and ARM 64 Unit Test for Motion Compensation 2014-06-09 16:19:29 +08:00
HaiboZhu
b6ed8cc767 Merge pull request #928 from syureyi/iosutdemo
Iosutdemo
2014-06-09 09:56:26 +08:00
zhuling13
ac285dd521 delete test project 2014-06-06 02:46:39 -07:00
zhuling13
cb1c0f9b5a modify 2014-06-06 02:44:22 -07:00
ruil2
ece06b37da resolve unit test warnings 2014-06-06 13:29:30 +08:00
zhuling13
0c5350c58d modify 2014-06-05 01:36:05 -07:00
zhuling13
40a2186093 add iosutdemo 2014-06-05 01:28:57 -07:00
zhuling13
d6ac7f4a60 add iosutdemo 2014-06-05 01:20:50 -07:00
zhuling13
6bf7ad4e2b and space to colon, modify bad note 2014-06-04 18:23:19 -07:00
zhuling13
b4c8f6b778 for cleaning .o and .d files generated by android demo 2014-06-02 20:21:10 -07:00
Ethan Hugg
d999833517 Merge pull request #910 from mstorsjo/android-gitignore
Ignore generated files in the new android test project
2014-06-02 07:07:48 -07:00
Ethan Hugg
9b6df8a267 Merge pull request #905 from mstorsjo/cleanup-android-projects
Cleanup android test projects
2014-06-02 07:06:54 -07:00
Martin Storsjö
4b0dbd7bd1 Ignore generated files in the new android test project 2014-06-01 00:57:26 +03:00
sijchen
ba2329a9c0 Merge pull request #904 from ruil2/expand_pic_1
clean up expand picture.
2014-05-30 17:25:11 +08:00
Martin Storsjö
af2666fde3 Initialize a variable to avoid warnings about possibly uninitialized use 2014-05-30 11:32:42 +03:00
Martin Storsjö
a294cad5c8 Change directory to /sdcard before running the unit tests on android
This allows placing the test files in /sdcard/res before running
the test. Previously, the current directory was /, and writing
data into /res isn't possible on non-rooted phones.
2014-05-30 11:04:54 +03:00
Martin Storsjö
a0c9f8c9a0 Remove the stock example icons
A test application like these ones can do just fine without any icon
at all - there's no need to bundle 8 different extra binary images
just for that.
2014-05-30 11:04:54 +03:00
Martin Storsjö
70c81e27e8 Remove an unused menu resource file 2014-05-30 11:04:54 +03:00
Martin Storsjö
1bb73e017e Remove useless declarations from Application.mk
OPTIM_debug isn't set by anything in this project, and APP_ABI
is set directly when invoking ndk-build - we don't use these
declarations at all.
2014-05-30 11:04:54 +03:00
Martin Storsjö
4a0afc0347 Fix building the android unittest when targeting older android versions 2014-05-30 11:04:54 +03:00
Martin Storsjö
7790ec4a17 Use a correct format string in the unittest JNI wrapper 2014-05-30 11:04:54 +03:00
Martin Storsjö
e276ae3c2f Convert android resource xml files to unix newlines
Some of these files actually had mixed line endings previously.
2014-05-30 11:04:54 +03:00
Martin Storsjö
d463541082 Convert the android unit test source file to unix newlines 2014-05-30 11:04:54 +03:00
ruil2
14e5d740cd clean up expand picture. 2014-05-30 11:05:31 +08:00
HaiboZhu
78eed44d15 Merge pull request #901 from syureyi/androidut
Androidut
2014-05-30 09:53:02 +08:00
zhuling13
1e4f367a1d clear up TAP space 2014-05-23 00:59:40 -07:00
zhuling13
32545aefde update apk name 2014-05-23 00:27:18 -07:00
ganyang
2e6f180e95 remove max slice number constraint 2014-05-22 19:39:43 +08:00
huili2
5482207823 modify dec API from void to explicit type, and some comments 2014-05-21 23:47:57 -07:00
ruil2
bcce5fa8e6 Merge pull request #867 from sijchen/rc_doublefloat_fix1
[Fix] using WelsRound for all the double-int32_t conversion
2014-05-22 11:46:28 +08:00
sijchen
5d1d47c01b fix me func type in UT 2014-05-21 08:57:58 +08:00
zhuling13
7447980e2b not need 2014-05-19 23:31:04 -07:00
zhuling13
158b6945fd not need 2014-05-19 23:21:34 -07:00
zhuling13
9a33512564 Add unittest demo for android platform 2014-05-19 23:19:23 -07:00
Sijia Chen
7413032185 using WelsRound for all the double-int32_t conversion 2014-05-20 14:06:31 +08:00
ruil2
69f2d768b1 Merge pull request #842 from ganyangbbl/refine_nal2
Refine Nal length related structure
2014-05-20 10:30:45 +08:00
dongzhang
749bc4ea7e Fix QP<18 dequant UT bug at encoder side
This should be UT for QP<12.
2014-05-16 11:12:59 +08:00
ganyang
c08c0f85eb This refine is to remove slice number limitation in the future. The changes contains:
1. add pNalLen in Structure SWelsEncoderOutput to store each nal length
2. rename iNalLengthInByte[MAX_NAL_UNITS_IN_LAYER] to pNalLengthInByte in Structure SLayerBSInfo, the pointer point to pNalLen, like pBSBuf point to pFrameBS.
2014-05-14 16:00:36 +08:00
Martin Storsjö
52bc3a41c8 Add a unit test for deblocking 2014-05-13 11:59:08 +03:00
Martin Storsjö
820cfb40ca Regenerate test/decoder/targets.mk using mktargets.sh
This makes the indentation of one line match the rest.
2014-05-08 11:20:51 +03:00
volvet
9a74427a61 Merge pull request #788 from mstorsjo/factorize-duplicated-test
Avoid duplicating code in the MotionEstimate test

Approved by Sijia.
2014-05-06 15:00:01 +08:00
huili2
f897029034 Merge pull request #791 from zhilwang/intraSad
Add func init for welsfillingPred
2014-05-06 14:00:32 +08:00
zhiliang wang
82b875c388 Add func init on UT source code 2014-05-06 11:16:46 +08:00
Martin Storsjö
92e5489dd3 Avoid duplicating code in the MotionEstimate test
All the tests of the line search (unoptimized and optimized)
use the exact same copypasted structure. Instead factorize this
into a test function which uses the provided function.
2014-05-05 16:15:18 +03:00
Martin Storsjö
c0f2487631 Remove an unused static method
This was added in 44640712f without actually being used.
2014-05-05 15:13:43 +03:00
sijchen
44640712f6 Add FME unit test 2014-05-05 15:41:15 +08:00
sijchen
cf5edec5ae Merge pull request #785 from mstorsjo/fix-me-test
Fix occasional errors in the motion estimation tests by correcting the range limits
2014-05-05 10:29:35 +08:00
Martin Storsjö
1711b497e3 Take the test of TestHorizontalSearch_SSE41 into use
After fixing the ranges, there's no reason to exclude this test.
2014-05-04 17:51:05 +03:00
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