Commit Graph

618 Commits

Author SHA1 Message Date
sijchen
5d1d47c01b fix me func type in UT 2014-05-21 08:57:58 +08:00
Sijia Chen
7413032185 using WelsRound for all the double-int32_t conversion 2014-05-20 14:06:31 +08:00
sijchen
cc81020875 Merge pull request #843 from mstorsjo/remove-unused-function
Remove an unused static function
2014-05-20 13:09:17 +08:00
sijchen
2e5700d32d Merge pull request #857 from mstorsjo/remove-unused-ifdef
Remove two unused ifdefs
2014-05-20 13:08:27 +08:00
dongzha
e751502412 Merge pull request #864 from ruil2/enc_quant
set minimum quant as 4 to avoid level code overflow
2014-05-20 10:45:55 +08:00
ruil2
901f8ba19a Merge pull request #858 from sijchen/md_merge145
reformat some missed style and remove unused comments
2014-05-20 10:39:00 +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
unknown
47430de294 set minimum quant as 4 to avoid level code overflow 2014-05-20 10:19:58 +08:00
sijchen
be17261a92 reformat 2014-05-19 17:04:59 +08:00
ruil2
e15742b404 Merge pull request #844 from lyao2/scroll_detection
enable Scroll detection into workflow
2014-05-19 09:45:35 +08:00
Martin Storsjö
7048fe5377 Remove two unused ifdefs
Nothing in the project sets HAVE_MMX.

The commented out code for setting pSearchMethodFunc can be readded
once it's actually implemented properly.
2014-05-17 22:06:28 +03:00
huili2
7f3f397706 Merge pull request #831 from sijchen/md_merge144
[Encoder ME] Add ME function assignment for Screen Content Coding
2014-05-17 21:49:07 +08:00
sijchen
78f3b5c5f6 add minimum buffer size 2014-05-16 11:18:14 +08:00
zhiliang wang
53c8af4566 Refine some code 2014-05-15 15:04:44 +08:00
zhiliang wang
fe57aa46df Add gnu assembler support. 2014-05-15 09:17:35 +08:00
lyao2
bd7c04f738 enable Scroll detection into workflow 2014-05-15 09:11:58 +08:00
Martin Storsjö
8c10cd220f Remove an unused static function
This avoids a warning with clang.

This function was added in 4bd6a3a6e8 even though nothing in
that commit actually uses it.
2014-05-14 22:07:38 +03:00
zhiliang wang
e6c9eb9824 Add Sad arm64 code 2014-05-14 17:06:48 +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ö
3cc01c6239 Use CCASFLAGS when assembling .S sources
This allows overriding whether all of CFLAGS should be passed
when assembling.
2014-05-13 19:39:26 +03:00
sijchen
80ae4cb7d8 add me function pointers for screen contents 2014-05-13 16:47:18 +08:00
Martin Storsjö
a4e1639529 Fix the format string in a log message
The compiler warned about unknown conversion type and too many
arguments for the format.
2014-05-12 12:13:24 +03:00
ruil2
758e89208e Merge pull request #818 from sijchen/md_merge133
[Encoder MD] Add Inter Psub16 MD for screen content coding
2014-05-12 14:47:50 +08:00
sijchen
4bd6a3a6e8 [Encoder MD] Add Inter Psub16 MD for screen content coding 2014-05-12 14:21:40 +08:00
ruil2
eb357b51f2 fix bitrate setting and add bitrate validation 2014-05-12 13:09:01 +08:00
unknown
4dc0f07828 fix input source width and height setting issue 2014-05-12 11:55:05 +08:00
sijchen
8d23201a05 Merge pull request #808 from mstorsjo/use-correct-param-types
Use the actual parameter types in PSearchMethodFunc instead of void pointers
2014-05-09 17:22:05 +08:00
sijchen
5de9f41f5a Fix the improper slice mmco setting 2014-05-09 10:48:09 +08:00
Martin Storsjö
b5cc7c2fe1 Remove a completely unused header 2014-05-08 09:59:58 +03:00
Martin Storsjö
f954763635 Use the actual parameter types in PSearchMethodFunc instead of void pointers 2014-05-07 09:26:31 +03:00
huili2
5ed24f216b astyle all files 2014-05-05 19:30:21 -07:00
sijchen
44640712f6 Add FME unit test 2014-05-05 15:41:15 +08:00
Martin Storsjö
26624bbfdb Use the proper type in function parameters instead of void pointers 2014-05-04 18:00:36 +03:00
volvet
e4a9c7f8e4 Merge pull request #779 from zhilwang/intraSad
Add IntraSad asm code.
2014-05-04 16:29:59 +08:00
sijchen
938019748d add scrolling skip function pointers in MD 2014-05-04 15:03:23 +08:00
ruil2
30687f4647 Merge pull request #761 from sijchen/md_merge31
[Encoder MD] Adjust MD under Screen Content route
2014-05-04 14:25:10 +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
ruil2
2508cf925f fix the issue that long term reference frame is disable for screen 2014-04-29 17:24:22 +08:00
huili2
2006efc1e0 Merge pull request #768 from ruil2/enc_param
use the parameters set by app instead of the default values
2014-04-29 17:19:55 +08:00
dongzhang
793c80df8b Remove useless code 2014-04-29 14:14:47 +08:00
unknown
40ce2396f8 use the parameters set by app instead of the default values 2014-04-29 13:15:28 +08:00
sijchen
2ad7bb9233 adjust the intra md under scc 2014-04-29 11:10:15 +08:00
Martin Storsjö
00a724076b Check for WELS_CPU_NEON before calling DeblockingBSCalcEnc_neon
Checking HAVE_NEON is not enough; e.g. android devices with
armeabi-v7a are not required to have NEON, so every use of such
functions should be check WELS_CPU_NEON in the cpu features
as well.
2014-04-25 13:02:22 +03:00
Varun B Patil
422d1d1569 Fix calculation of num ref frames 2014-04-24 10:42:15 +05:30
Martin Storsjö
764f787dcb Rename the makefile variable for arm assembly sources
This is in preparation for adding support for the aarc64 assembly
files as well.
2014-04-23 10:55:30 +03:00
Martin Storsjö
a842f14a3c Remove .orig files left over from running astyle 2014-04-23 09:24:23 +03:00
dongzhang
ad9e2dab4f Add Motion Compehension ARM64 Neon Code 2014-04-23 13:26:28 +08:00
Licai Guo
b47606a4ff Merge pull request #733 from dongzha/ExpandPic_ARM64
Add expand picture support for ARM64 NEON
2014-04-23 09:57:39 +08:00
dongzhang
2444327a6c Add expand picture support for ARM64 NEON
Remove duplicate MACROS
2014-04-23 09:14:32 +08:00
Licai Guo
75c941a836 Merge pull request #724 from mstorsjo/string-cleanup
Unify return values from Wels*Snprintf and simplify calling code
2014-04-22 16:41:44 +08:00
ruil2
2eff808db7 add decide frame type for screen content 2014-04-22 09:59:38 +08:00
Martin Storsjö
c4e1d2bbb8 Simplify the use of return values from Wels*Snprintf
Also similarly simplify the use of the return value from
WelsStrftime and GetCodeName/GetLibName/GetVerNum.
2014-04-21 22:03:47 +03:00
Martin Storsjö
ade7df0ca7 Remove an unused local variable 2014-04-21 21:57:28 +03:00
Licai Guo
fbc179fb82 Merge pull request #722 from sijchen/fme_merge75
[Encoder ME] add FME switch logic
2014-04-21 22:18:55 +08:00
sijchen
e5001c87ca add FME switch logic 2014-04-21 16:36:59 +08:00
sijchen
736a6753c0 fix the GetOption: bit rate part 2014-04-21 16:32:16 +08:00
Licai Guo
3f2ea77908 Merge pull request #719 from dongzha/MC
Modify ARM32 Neon code for Expand Chroma Picture, when UVWidth%16==8.
2014-04-21 14:38:51 +08: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
a15e640137 add usagetype parameter in encoder unit test to test screen content 2014-04-18 11:17:25 +08:00
ruil2
0520ace351 rename some varialbes 2014-04-18 11:07:38 +08:00
ruil2
6b707ffb14 add complexity calculation in workflow 2014-04-17 17:33:44 +08:00
dongzhang
a4f59bc0d7 Modify ARM32 Neon code for Expand Chroma Picture, when UVWidth%16==8. 2014-04-17 15:58:30 +08:00
ruil2
4ea8af515b update level_idc setting 2014-04-17 14:29:41 +08:00
Licai Guo
4062fa9d34 Merge pull request #703 from zhilwang/pf-test
Move copy_mb neon code to common folder
2014-04-17 11:08:56 +08:00
Licai Guo
c8e1a41c29 Move copy_mb neon code to common folder 2014-04-17 10:06:48 +08:00
ruil2
b553468ad3 keep the declaration and definition in the same namespace 2014-04-17 09:45:26 +08:00
volvet
6cb48fc547 Merge pull request #690 from sijchen/fme_merge65
[Encoder ME] Add calling of FME preprocess calculation

Approved by Xiaolin.
2014-04-16 17:41:17 +08:00
Licai Guo
e8d8bdc48e Merge pull request #689 from huili2/add_file_CopyMB_EC
divide copy_mb functions into new file for decoder use from encoder and ...
2014-04-15 16:20:08 +08:00
sijchen
f414241834 reformat 2014-04-15 15:54:51 +08:00
sijchen
1140050da6 Add calling of FME preprocess calculation 2014-04-15 15:38:27 +08:00
huili2
4ab8c88e98 divide copy_mb functions into new file for decoder use from encoder and add files for EC in decoder only. 2014-04-14 20:17:41 -07:00
ruil2
1e3053208d update the default value for bPrefixNalAddingCtrl and iLoopFilterDisableIdc 2014-04-14 14:06:02 +08:00
sijchen
64ef420e67 add memory allocation for feature search 2014-04-11 17:11:46 +08:00
ruil2
7547609336 Merge pull request #667 from mstorsjo/remove-unused-variable
Remove an unused variable
2014-04-11 16:25:06 +08:00
ruil2
8539071583 modify the initialization of the number of LTR 2014-04-11 15:07:32 +08:00
Martin Storsjö
ec94faf13a Remove an unused variable 2014-04-11 09:54:11 +03:00
ruil2
c8eaea2f27 add memory allocation for screen content 2014-04-10 17:07:26 +08:00
sijchen
c96fe5fec4 Merge pull request #652 from volvet/refine_enc_wrap
remove m_pScrPicList, which is not needed anymore
2014-04-09 14:00:30 +08:00
Licai Guo
4b5a455e16 Merge pull request #654 from volvet/refine_enc_frame
refine method EncodeFrame
2014-04-09 09:16:14 +08:00
volvet
52af29ec77 refine method EncodeFrame 2014-04-08 17:21:56 -07:00
volvet
ecb7fbc6a0 fix colorsapce check 2014-04-08 16:50:44 -07:00
volvet
691c2bc1e7 remove m_pScrPicList, which is not needed anymore 2014-04-08 15:43:44 -07:00
volvet
8690adf870 Merge pull request #647 from mstorsjo/remove-dynamic-vp
Remove code for loading the VP library dynamically
2014-04-08 10:40:55 -07:00
Martin Storsjö
3dcd458ffd Remove trailing whitespace in the source files 2014-04-08 18:13:23 +03:00
Martin Storsjö
a57094c152 Remove the now unused intermediate code for loading the VP library dynamically 2014-04-08 15:09:21 +03:00
Martin Storsjö
1d167fe7d6 Remove a TODO that is no longer relevant
The function signatures are equal nowadays.
2014-04-08 15:09:21 +03:00
Martin Storsjö
1342da9bc4 Remove everything related to NO_DYNAMIC_VP
This mode is the default and used everywhere now.
2014-04-08 15:09:21 +03:00
ruil2
37f20f1c5e update pre-processing workflow for screen content 2014-04-08 14:42:30 +08:00
volvet
d98ba6137c remove RC enable flag, use RC Mode to indicate RC on or off 2014-04-07 22:08:28 -07:00
Licai Guo
90fc914b6c Modify comment 2014-04-08 11:31:12 +08: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
volvet
b0ed3cb924 remove RawData2SrcPic, which is never called 2014-04-07 11:36:10 -07:00
volvet
bed051b631 rename Initialize2 to IntializeInternal 2014-04-07 11:30:12 -07:00
ruil2
9993198a3c Merge pull request #633 from volvet/rm_redundant_protect
remove redundant protect code
2014-04-04 09:50:57 +08:00
ruil2
646d943200 Merge pull request #621 from sijchen/fme_merge42
[Encoder ME] add Preprocess functions for FME
2014-04-04 09:48:44 +08:00
volvet
02b08d278a Merge pull request #623 from ruil2/enc_update
add the condition branch for screen content

Approved by Sijia Chen @ RBComments
2014-04-03 18:15:58 -07:00
sijchen
4469519baf Merge pull request #632 from volvet/rm_cpu_core_bind
remove thread cpu core bind
2014-04-04 09:04:47 +08:00
volvet
e2e106a4a4 remove redundant protect code 2014-04-03 17:14:56 -07:00
volvet
9fd7fbccd8 remove thread cpu core bind 2014-04-03 16:19:53 -07:00
volvet
6debb3460c fix pic partition bug 2014-04-03 13:38:12 -07:00
ruil2
27da2b21bf add the condition branch for screen content 2014-04-02 17:23:46 +08:00
ruil2
81d588e38e add LTR mark 2014-04-02 15:10:04 +08:00
sijchen
29f300dde9 [Encoder ME] add Preprocess functions for FME 2014-04-02 14:34:23 +08:00
JuannyWang
df6813063f [Encoder UT] add expGolom UT and encoder trace modification 2014-04-02 13:57:09 +08:00
Licai Guo
c12edefcd3 Merge pull request #616 from sijchen/fme_merge81
[Encoder ME] add function pointer for search methods
2014-04-02 13:07:21 +08:00
Licai Guo
ea5b6b49b4 Merge pull request #619 from ruil2/vp_dpb
add reference frame managment for screen content [still in progress]
2014-04-02 13:07:04 +08:00
ruil2
9645f38021 add reference frame managment for screen content [still in progress] 2014-04-02 10:45:35 +08:00
sijchen
f695227b00 add funtion pointer for search methods 2014-04-02 10:12:39 +08:00
volvet
71ab928ca3 fix compile warnings 2014-04-01 11:37:59 -07:00
Ethan Hugg
c644879cf9 Merge pull request #598 from varunbpatil/compiler_warnings
Remove compiler warnings
2014-04-01 10:57:19 -07:00
sijchen
a917444b2e [Encoder ME] add memory allocation basics for FME 2014-04-01 15:52:13 +08:00
ruil2
e7603d8fbb use function pointer in reference frame management 2014-04-01 14:52:55 +08:00
Licai Guo
9a81260b24 Merge pull request #605 from volvet/clean_mt_macro
clean multi-threading macro
2014-04-01 14:50:31 +08:00
ganyang
eb6f6ecf40 Add EncoderMB UT test file, and reformat UT files. 2014-04-01 13:55:22 +08:00
Licai Guo
fa9735b331 Merge pull request #602 from sijchen/fme_merge22
[Encoder ME] Add alternative search methods
2014-04-01 10:23:24 +08:00
ruil2
6bb23f5df4 use WelsLog instead of fprintf to have a unified trace output 2014-04-01 09:24:57 +08:00
volvet
9f50e0c91e clean multi-threading macro 2014-03-31 18:24:10 -07:00
volvet
cad753d871 Merge pull request #603 from ruil2/vp_update2
add scene change for screen content

Approved by Sijia.
2014-03-31 13:59:29 -07:00
ruil2
aed919a65a add scene change for screen content 2014-03-31 17:14:00 +08:00
sijchen
69983d6df4 Add alternative search methods 2014-03-31 16:11:31 +08:00
unknown
a128d7f790 add usagetype setting for screen content 2014-03-31 14:00:25 +08:00
Licai Guo
881298ed31 Merge pull request #595 from sijchen/fme_merge12
[Encoder ME] Add feature search basic functions
2014-03-31 08:59:09 +08:00
Varun B Patil
6663743f4c Remove compiler warnings 2014-03-30 15:13:29 +05:30
ruil2
4751fe7690 add scene change detection in workflow for screen content 2014-03-28 11:30:51 +08:00
sijchen
12616019b6 Add feature search basic functions 2014-03-28 11:21:30 +08:00
ruil2
63cef0f0f4 add preprocessing parameter for screen content 2014-03-28 10:06:42 +08:00
sijchen
a60af6a750 add function pointer 2014-03-28 09:09:21 +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
Andoni Morales Alastruey
328740f294 Prefix API with the Wels namespace 2014-03-25 17:40:01 +01:00
ruil2
6b3f89d582 move some common functions to common.cpp and add some functions in common 2014-03-25 15:35:55 +08:00
sijchen
fcae0c7c48 Change the output of diamond search from qpel to interpel 2014-03-25 11:03:37 +08:00
sijchen
99f3bd69c4 Add checking directional MV in ME initial point 2014-03-24 14:16:16 +08:00
Martin Storsjö
b6883b4ef8 Make the iRCMode field use the RC_MODES type instead of plain int
This makes it even clearer for users about how to set this field.
2014-03-21 09:19:30 +02:00
Martin Storsjö
2bc8e61fcf Move the RC_MODES enum to the public header
This allows users to know what values to set for the iRCMode
parameter.
2014-03-21 09:18:17 +02:00
Licai Guo
65e8560dc7 Merge pull request #560 from ruil2/encoder_nal
add uiMaxNalSize to support the maximum nal size setting
2014-03-21 12:52:32 +08:00
Licai Guo
7a29b1f55a Merge pull request #549 from lyao2/rc_tune
RC LOWBR mode merge
2014-03-21 09:15:18 +08:00
ruil2
fd2c950778 add uiMaxNalSize to support the maximum nal size setting 2014-03-21 08:59:38 +08:00
Licai Guo
58966cb2e8 Merge pull request #558 from ruil2/encoder_level
add leve parameter, update profile and usagetype type
2014-03-20 17:16:40 +08:00
ruil2
e6c072b364 add leve parameter, update profile and usagetype type 2014-03-20 17:02:32 +08:00
sijchen
0ea480323e expand MVD table and rename some macros 2014-03-20 16:56:43 +08:00
Licai Guo
9d73d273ff Merge pull request #554 from ruil2/encoder_update
add maxbitrate parameter
2014-03-20 14:57:54 +08:00
ruil2
258185f8c2 add maxbitrate parameter 2014-03-20 14:30:20 +08:00
sijchen
e0aed6e4e7 add static 2014-03-20 14:19:55 +08:00
lyao2
071254748f avoid QP sudden fluctates 2014-03-20 13:13:32 +08:00
sijchen
c00bec2aa6 refactor the setting of function pointer for simplification 2014-03-20 09:51:57 +08:00
lyao2
4bc881c3ae RC LOWBR mode merge 2014-03-20 09:26:16 +08:00
Ethan Hugg
e8540af9eb Merge pull request #541 from licaiguo/disable-warnings
disable most warnings produced by -Wall
2014-03-19 09:17:34 -07:00
ruil2
028d39077f Merge pull request #545 from mstorsjo/remove-extra-parentheses
Remove unnecessary/superfluous parentheses in slice_multi_threading.cpp
2014-03-19 16:39:01 +08:00