Commit Graph

685 Commits

Author SHA1 Message Date
huili2
887b2727f0 remove multiplication overflow warning by ULL instead of LL 2014-06-17 18:51:09 -07:00
huili2
971ccccab4 remove unnecessary flush buffer in encoder 2014-06-17 02:40:28 -07:00
ruil2
c635ce442f fix a bug that dump reconstruct frame 2014-06-17 14:48:39 +08:00
ruil2
ce870bf20e add bitrate validation 2014-06-17 11:08:38 +08:00
sijchen
61017a2d4d Merge pull request #969 from ruil2/cleanup_encoder
cleanup interface parameters
2014-06-17 09:46:48 +08: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
ruil2
7acf0e5b02 cleanup interface parameters 2014-06-16 17:17:24 +08:00
zhiliang wang
cfc2b95f59 Refine some code 2014-06-13 16:06:45 +08:00
zhiliang wang
947e3c64fe Add arm64 code for intra-pred 2014-06-13 15:21:48 +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
sijchen
0c09847ec9 Merge pull request #965 from ruil2/uinit_fix
fix #948 issue -- Using unititialized value in unittest.
2014-06-12 16:46:40 +08:00
lyao2
79ef0e19b2 fix SetOption scc ltr_ref_num casued memory leak issue. 2014-06-12 16:15:29 +08:00
ruil2
17d47533ed fix #948 issue -- Using unititialized value in unittest. 2014-06-12 15:20:10 +08:00
ruil2
44b048edd6 move trace related info to interface header 2014-06-11 17:05:40 +08:00
Martin Storsjö
090229f8a1 Add public options for setting a log callback 2014-06-11 08:08:56 +03:00
Martin Storsjö
cb5ee6c239 Remove the global log callback function
Now all logging should use a non-null log context, allowing to
pass the messages to the right recipient.
2014-06-11 08:08:56 +03:00
Martin Storsjö
9583ac4d52 Set and use a proper log context in the encoder 2014-06-11 08:08:55 +03:00
Martin Storsjö
4e428ab020 Add a log context to the encoder and decoder contexts
This will allow setting non-global logging callbacks, that
are different for each encoder or decoder instance.
2014-06-11 08:08:29 +03:00
Martin Storsjö
c4a59690da Allow setting the trace level before initializing the encoder 2014-06-11 08:08:29 +03:00
Martin Storsjö
65616c2c53 Use a more descriptive include guard in the welsEncoder/DecoderExt.h files 2014-06-10 17:06:14 +03:00
Martin Storsjö
e6ba730c59 Remove a misleading comment
This comment claimed to be a completely different file.
2014-06-10 17:06:13 +03:00
Martin Storsjö
1ea50e209a Fix a typo, setttings -> settings 2014-06-10 17:06:13 +03:00
Martin Storsjö
17fc6bd66e Remove the unnecessary method WelsTraceModuleIsExist(), which always returned true 2014-06-10 10:52:26 +03:00
Martin Storsjö
40af75c19d Remove the unnecessary WelsSet/GetLogLevel functions
Nothing actually used the variable that these functions
handled.
2014-06-10 10:52:06 +03:00
dongzhang
0e0c8b5569 add arm 64 deblock code and Unit Test code 2014-06-10 11:23:51 +08:00
huili2
a6ebecd707 Merge pull request #936 from ruil2/trace_cleanup
cleanup trace module
2014-06-10 10:55:46 +08:00
ruil2
5aa7cdedb8 clean build warning related encoder 2014-06-10 10:39:44 +08:00
ruil2
4c12f8970c cleanup trace module 2014-06-10 10:24:45 +08:00
ruil2
88e7637a33 Merge pull request #935 from lyao2/pskip_commit_
remove ubuntu build warning
2014-06-10 10:22:18 +08:00
lyao2
41f3e2e0cf remove ubuntu build warning 2014-06-10 09:37:34 +08:00
ruil2
cc66c999b0 Merge pull request #930 from mstorsjo/cleanup-asm
Do some minor cleanups on the x86 assembly source
2014-06-09 16:27:52 +08:00
Martin Storsjö
d1a00d8173 Remove mismatched chars at the end of a line marker
None of the other markers close by have similar chars.
2014-06-09 11:11:25 +03:00
lyao2
1d79a1ac80 enable static/scroll Pskip functions 2014-06-09 15:57:15 +08:00
ruil2
74df3e9553 add ref-original frame assigment 2014-06-06 15:24:31 +08:00
ruil2
a46b1aa86e Merge pull request #923 from zhilwang/satd-arm64
Add arm64 neon code for Satd.
2014-06-06 14:05:53 +08:00
lyao2
c6e7814b57 add pskip MD functions 2014-06-06 13:51:32 +08:00
zhiliang wang
5d7e18de54 Add arm64 neon code for Satd. 2014-06-06 09:33:15 +08:00
Martin Storsjö
57f6bcc4b0 Convert all tabs to spaces in assembly sources, unify indentation
Previously the assembly sources had mixed indentation consisting
of both spaces and tabs, making it quite hard to read unless
the right tab size was used in the editor.

Tabs have been interpreted as 4 spaces in most cases, matching
the surrounding code.
2014-06-01 01:35:43 +03:00
Martin Storsjö
faaf62afad Get rid of double spaces in macro declarations 2014-06-01 01:13:01 +03:00
Martin Storsjö
ac03b8b503 Avoid unnecessary tabs in macro declarations 2014-06-01 01:13:01 +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
volvet
f449033ea8 Merge pull request #906 from mstorsjo/fix-chmod
Unset the executable bit on source files
2014-05-30 17:20:58 +08:00
Martin Storsjö
322ce39e98 Remove an unused variable
This fixes warnings about variables that are set but not used.
2014-05-30 11:32:22 +03:00
Martin Storsjö
f0240ef3bb Use the right data type for a local variable
All the values assigned into this variable, and compared with this
variable, are int32_t.

This avoids warnings about comparison between signed and unsigned
types.
2014-05-30 11:31:48 +03:00
Martin Storsjö
388a93fe25 Enlarge pLongRefList to avoid accesses out of bounds
This fixes warnings about "array subscript is above array bounds".
2014-05-30 11:31:11 +03:00
Martin Storsjö
f2948dce67 Unset the executable bit on source files 2014-05-30 09:46:15 +03:00
ruil2
14e5d740cd clean up expand picture. 2014-05-30 11:05:31 +08:00
dongzha
80fdf09b26 Merge pull request #903 from zhilwang/arm64-sad
Add Arm64 sad code
2014-05-30 09:26:04 +08:00
huili2
153fa10dc5 Merge pull request #898 from ruil2/enc_rc_4
simplify stash pop bs
2014-05-28 16:21:10 +08:00
ruil2
c1620f3868 fix a bug that if..else are grouped incorrectly 2014-05-27 16:13:24 +08:00
ruil2
044af8f674 format update by using astyle 2014-05-27 15:16:43 +08:00
ruil2
c8299d7d8f simplify stash pop bs 2014-05-27 14:51:09 +08:00
ruil2
db11ba7a34 fix vlc overflow 2014-05-27 13:18:52 +08:00
huili2
ce0d371c98 Merge pull request #895 from ruil2/enc_rc_1
remove redundant code for mb qp calculation
2014-05-26 15:15:26 +08:00
ruil2
31120dd88c remove redundant code for mb qp calculation 2014-05-26 15:03:06 +08:00
ganyang
2e6f180e95 remove max slice number constraint 2014-05-22 19:39:43 +08:00
sijchen
032d199961 Merge pull request #878 from ruil2/enc_quant
miss a branch for auto reference frame setting
2014-05-22 00:14:57 -05: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
ruil2
00a2a9feef Merge branch 'master' of https://github.com/cisco/openh264 into enc_quant 2014-05-22 11:09:57 +08:00
ruil2
e0b92bb633 miss a branch for auto reference frame setting 2014-05-22 10:53:02 +08:00
Ethan Hugg
d3436555f8 Merge pull request #872 from sijchen/fix_me_func_type
[Fix] fix ME func type in UT
2014-05-21 08:11:27 -07:00
dongzha
95d32473a1 Merge pull request #874 from ruil2/enc_quant
update the minimum quant limiation as 10. quant 4 can't avoid overflow
2014-05-21 15:12:12 +08:00
ruil2
def2ae50ee drop the last update 2014-05-21 14:45:03 +08:00
ruil2
a7b2797514 Merge branch 'enc_quant' of https://github.com/ruil2/openh264 into enc_quant 2014-05-21 14:43:08 +08:00
ruil2
42bd0f4729 only testing 2014-05-21 14:41:50 +08:00
ruil2
1fd5e6e210 update the minimum quant limiation as 10. quant 4 can't avoid overflow 2014-05-21 14:04:55 +08:00
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