Commit Graph

565 Commits

Author SHA1 Message Date
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