Commit Graph

1373 Commits

Author SHA1 Message Date
sijchen
4bd6a3a6e8 [Encoder MD] Add Inter Psub16 MD for screen content coding 2014-05-12 14:21:40 +08:00
Martin Storsjö
aafa6e3e53 Reorder sections in encConsole.vcproj
The MSVC GUI seems to want to write the file with data in the order
Debug|Win32, Debug|x64, Release|Win32, Release|x64. This causes a
large number of changes in the git diff even though the content
still basically is the same. Therefore do it in a separate commit,
to make sure that any later actual changes stay minimal.
2014-05-12 09:20:41 +03:00
Martin Storsjö
4354371b4e Revert "Remove the literal CRLF (
) within the nasm commands in msvc project files"
This reverts commit 7aff66d40c.

These CRLF marks are readded by MSVC as soon as the project files
are updated from within the GUI anyway.
2014-05-12 09:20:41 +03:00
ruil2
6a295d5e8e Merge pull request #813 from mstorsjo/msvc-proj-cleanup
Clean up the MSVC project files
2014-05-12 13:21:16 +08:00
ruil2
eb357b51f2 fix bitrate setting and add bitrate validation 2014-05-12 13:09:01 +08:00
huili2
dae4dbf377 Merge pull request #816 from ruil2/enc_scale
fix input source width and height setting issue
2014-05-12 12:39:54 +08:00
huili2
0c24fd66cd Merge pull request #815 from ruil2/enc_threadIdc
add some parameter settings in command line
2014-05-12 12:38:31 +08:00
unknown
4dc0f07828 fix input source width and height setting issue 2014-05-12 11:55:05 +08:00
ruil2
67327dfb2e add the maximum nal size setting in command line 2014-05-12 11:05:16 +08:00
unknown
61ab32e6f5 add some parameter settings in command line 2014-05-12 10:28:42 +08:00
Martin Storsjö
416bb224e0 Don't hardcode SuppressStartupBanner=true, this is the default value
The fewer fields overridden, the better.
2014-05-09 19:59:06 +03:00
Martin Storsjö
3923d11dc6 Remove unnecessary, empty, file specific FileConfiguration blocks in vcproj files 2014-05-09 19:59:06 +03:00
Martin Storsjö
5842e1b2aa Unify the include directories in the WelsVP project
Some directories had a trailing slash in some configurations, but
not in other configurations. Make sure the directories are the same
in all configurations.
2014-05-09 19:59:06 +03:00
Martin Storsjö
7676c5b65b Unify the include dirs within the decConsole project
Some include directories were only present in debug builds.
2014-05-09 19:59:06 +03:00
Martin Storsjö
1446f8b599 Don't use the encoder include dir when building the decoder 2014-05-09 19:59:06 +03:00
Martin Storsjö
324205df88 Remove references to nonexistent include directories
Some of these were legacy references to absolute paths outside of
the project itself.
2014-05-09 19:59:06 +03:00
Martin Storsjö
4635232d93 Don't manually define WIN32/WIN64
All the code that relies on separating them uses the built-in defines
_WIN32 and _WIN64, or the corresponding machine defines (such as
_M_IX86, for MSVC 32 bit inline assembly).
2014-05-09 19:34:04 +03:00
Martin Storsjö
094aa24bf6 Remove unused manual defines of _WINDOWS 2014-05-09 19:27:42 +03:00
Martin Storsjö
0d8f7ab0e1 Remove the unused WELSDEC/ENCPLUS_EXPORTS defines 2014-05-09 19:27:42 +03:00
Martin Storsjö
e2ec07ae87 Remove the unused leftover define HAVE_CACHE_LINE_ALIGN 2014-05-09 19:27:42 +03: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
huili2
51c918f212 for PS error logic for EC 2014-05-09 01:12:08 -07:00
dongzhang
218adc7e29 Fix a bug in deblocking for neon 32 bit arm implementation 2014-05-09 14:06:16 +08:00
sijchen
5de9f41f5a Fix the improper slice mmco setting 2014-05-09 10:48:09 +08:00
zhilwang
f6293153c8 Merge pull request #802 from mstorsjo/remove-unused-misspelled-define
Remove an unused, misspelled define set on only one source file
2014-05-09 08:45:49 +08:00
volvet
88a25713a5 Merge pull request #801 from mstorsjo/fix-manually-edited-vcproj
Make manually edited vcproj files match what visual studio actually generates
2014-05-08 21:19:25 +08:00
volvet
322a3cca50 Merge pull request #805 from mstorsjo/remove-msvc-version-suffix
Remove msvc version suffix
2014-05-08 21:06:11 +08:00
volvet
054530fdb4 Merge pull request #800 from mstorsjo/matching-endif
Make an endif comment match the actual condition
2014-05-08 20:59:18 +08:00
volvet
ff33fdeb8e Merge pull request #799 from mstorsjo/use-predefined-define
Use the predefined _WIN32 instead of the manually defined WIN32 for windows specific code
2014-05-08 20:58:11 +08:00
Martin Storsjö
26edfd1f92 Remove the _2008 suffix from the Visual Studio solutions
This is the only version of them that we provide - and they
can easily be opened in any newer version anyway.
2014-05-08 11:47:56 +03:00
Martin Storsjö
66f0f6ccbe Rename the WelsVP vcproj file to match the others
The other projects don't have the _2008 suffix.
2014-05-08 11:46:18 +03:00
Martin Storsjö
f8ae7fcc5f Remove an unused, misspelled define set on only one source file 2014-05-08 11:17:29 +03:00
Martin Storsjö
60f1ea8088 Make manually edited vcproj files match what visual studio actually generates
This changes the indentation from space to tabs, and adds missing
dos newlines to these few lines.

This makes the file be detected as using dos newlines properly in
certain editors.
2014-05-08 11:15:50 +03:00
Martin Storsjö
6e715ddc10 Make an endif comment match the actual condition 2014-05-08 11:14:24 +03:00
Martin Storsjö
d69d9c4622 Use the predefined _WIN32 instead of the manually defined WIN32 for windows specific code
This avoids having to rely on manually defining WIN32 in the build
system.
2014-05-08 11:12:49 +03:00
Martin Storsjö
b5cc7c2fe1 Remove a completely unused header 2014-05-08 09:59:58 +03:00
huili2
1839910bb0 fix order of new AU and new Seq 2014-05-07 17:56:31 -07: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
sijchen
81467fd93e Merge pull request #786 from mstorsjo/use-proper-types
Use the proper type in function parameters instead of void pointers
2014-05-05 10:27:13 +08:00
zhilwang
fd446a1f69 Merge pull request #783 from mstorsjo/win64-clobber
Properly back up and restore XMM registers on win64 in WelsSampleSadFour4x4_sse2
2014-05-05 08:45:48 +08:00
Martin Storsjö
26624bbfdb Use the proper type in function parameters instead of void pointers 2014-05-04 18:00:36 +03:00
Martin Storsjö
b4fdfa64af Use the new library name in the android sample projects 2014-05-04 16:00:51 +03:00
Martin Storsjö
b8eeda1740 Properly back up and restore XMM registers on win64 in WelsSampleSadFour4x4_sse2 2014-05-04 15:47:56 +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
Licai Guo
fe5b8d1a69 refine format 2014-05-04 14:51:05 +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
HaiboZhu
37deb06700 Merge pull request #771 from huili2/newseqorder_prefixerror_bugfix
fix new sequence&EC order, and prefix parse bug
2014-04-30 17:31:04 +08:00
huili2
5e6ef17412 fix new sequence&EC order, and prefix parse bug 2014-04-29 20:00:12 -07: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
HaiboZhu
c27c02bc0a Merge pull request #764 from dongzha/Deblock
Remove useless code
2014-04-29 14:50:22 +08:00
dongzha
4f8edb946d Merge pull request #763 from huili2/ec_bug_fix
fix some bugs of EC
2014-04-29 14:27:58 +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
volvet
83abff2139 Merge pull request #759 from mstorsjo/deblock-neon-transpose
Do full register loads instead of single-lane loads in DeblockLumaEq4H_neon
2014-04-28 18:33:32 +08:00
huili2
f148a8a7ae Merge pull request #755 from licaiguo/refine-pNzc
refine pNzc set access
2014-04-28 16:21:36 +08:00
huili2
0cd3f9d952 fix some bugs of EC 2014-04-28 00:48:38 -07:00
Martin Storsjö
23f57adaea Do full register loads instead of single-lane loads in DeblockLumaEq4H_neon
Instead of loading the registers one lane at a time, load full
registers and then transpose them.

This is faster, reducing the runtime for the function from about
506 cycles to 434 cycles (tested on a Cortex A8).

This also avoids an issue which seems like a cpu bug, present
on Sony Xperia T (cpu implementer 0x51 architecture 7 variant 0x1
part 0x04d). On such a device, it seemed like the "vswp q9, q10"
could start executing before the previous
vld4.u8 {d20[x],d21[x],d22[x],d23[x]}, [r3], r1
had finished and written back their result. Changing the
"vswp q9, q10" into "vswp q10, q9", or into separate
"vswp d18, d20; vswp d19, d21" (or the other way around) seemed to
avoid the issue. This happened occasionally (a couple times per
100000 invocations or so).
2014-04-28 10:12:16 +03:00
huili2
9d1af8c378 Merge pull request #751 from huili2/NewSeq_replace_I
use new seq instead of I slice
2014-04-28 13:40:15 +08:00
Licai Guo
669d704fac refine pNzc set access 2014-04-26 16:36:16 -07:00
volvet
c5f04cfbd4 Merge pull request #750 from mstorsjo/deblocking-neon-cpu-features
Check for WELS_CPU_NEON before calling DeblockingBSCalcEnc_neon
2014-04-25 19:05:12 +08:00
volvet
84ff16c015 Merge pull request #749 from mstorsjo/dos-newlines
Remove dos newlines in the android java code
2014-04-25 18:18:11 +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
sijchen
bd8d97dddb Merge pull request #748 from huili2/newSeq_bugfix
fix bug of new seq check
2014-04-25 17:54:33 +08:00
huili2
0c544962d8 use new seq instead of I slice 2014-04-25 01:46:00 -07:00
Martin Storsjö
655d9c5dbf Remove dos newlines in the android java code 2014-04-25 11:03:03 +03:00
huili2
c0d21a23f3 Merge pull request #745 from lyao2/scrollingUT
add scroll detection UT
2014-04-25 15:07:15 +08:00
huili2
c65d250817 fix bug of new seq check 2014-04-24 22:11:42 -07:00
volvet
c65e286036 Merge pull request #738 from mstorsjo/gnu-aarch64
Fix building the aarch64 assembly using gnu binutils
2014-04-25 09:07:43 +08:00
ganyang
8ee85918c8 fix resolution setting issue 2014-04-24 17:34:31 +08:00
huili2
593e291d19 fix typo of IDR loss 2014-04-24 02:26:40 -07:00
huili2
c4ab780d21 Merge pull request #732 from licaiguo/forJS
specify accurate align information for ST32
2014-04-24 16:50:00 +08:00
Licai Guo
fe23d53acc Merge pull request #744 from huili2/ec_IdrLoss
enable the case for IDR loss
2014-04-24 16:47:36 +08:00
Licai Guo
41698901c1 Merge pull request #743 from huili2/ec_refidx_return
prevent from return if ref_idx is error
2014-04-24 16:47:20 +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
314005435e enable the case for IDR loss 2014-04-23 23:13:12 -07:00
Varun B Patil
422d1d1569 Fix calculation of num ref frames 2014-04-24 10:42:15 +05:30
Licai Guo
bada2d35bf fix bNewSeqBegin logic 2014-04-23 18:50:11 -07:00
Martin Storsjö
66f58e8357 Add macros for the non-standard mov.16b/mov.8b/ext.16b/ext.8b
This fixes building with gnu binutils, which don't support this
nonstandard form of the instructions.

Once Apple's tools support the proper standard form of the
instructions, the code should be updated to use that everywhere
instead, and these macros should be removed.
2014-04-23 11:47:12 +03:00
Martin Storsjö
7cd175d097 Use the correct ext syntax in the gnu version of macros 2014-04-23 11:47:12 +03:00
Martin Storsjö
b13a399ab5 Use a plain "ret" instead of "ret lr"
This fixes an issue with assembling with gnu binutils.
2014-04-23 11:47:12 +03:00
Martin Storsjö
f2642b308a Add correct arguments to the gnu version of UNPACK_FILTER_SINGLE_TAG_16BITS 2014-04-23 11:47:12 +03:00
Martin Storsjö
90fad9fd98 Add \() to macro arguments to separate the argument from the following .8h or similar 2014-04-23 11:47:12 +03:00
Martin Storsjö
80bd541cbe Remove .syntax unified from the aarch64 common header
This directive isn't available in aarch64 code, only in arm code.
2014-04-23 11:47:12 +03:00
Martin Storsjö
3c2e9cd7bf Regenerate makefiles to include the new arm64 assembly files 2014-04-23 11:44:47 +03:00
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
Martin Storsjö
45aef90d26 Remove the executable bit from source files 2014-04-23 09:23:56 +03:00
huili2
13db7fea7b prevent from return if ref_idx is error 2014-04-22 22:43:40 -07: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
Licai Guo
17c00f03d6 specify accurate align information for ST32,
remove redundant init
2014-04-22 00:30:39 -07:00
Licai Guo
9c5402837e Merge pull request #730 from huili2/rm_warn_dec_core
remove warning from decoder_core.cpp
2014-04-22 15:15:35 +08:00
Licai Guo
5a845f97d3 Merge pull request #731 from huili2/ec_dec_error
prevent from return if slice decoding error for EC
2014-04-22 15:15:25 +08:00
huili2
afe8a44d5b Merge pull request #726 from licaiguo/refine-auready
refine Check AU boundary
2014-04-22 15:03:28 +08:00
huili2
5c064ed275 prevent from return if slice decoding error for EC 2014-04-21 23:27:48 -07:00
huili2
bf9f25d2e8 remove warning from decoder_core.cpp 2014-04-21 23:20:30 -07:00
ruil2
2eff808db7 add decide frame type for screen content 2014-04-22 09:59:38 +08:00
Licai Guo
97c65b396d refine Check AU boundary 2014-04-21 18:21:07 -07:00
Licai Guo
8b9f621b88 add virtual destructor to codec interface 2014-04-21 17:51:47 -07: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ö
564d16c2ef Make Wels*Snprintf return values be non-negative
This makes sure the windows version of these functions behave
more like the posix version. The posix *snprintf returns how
much would have been written if the buffer had been large
enough, which we don't know easily in the windows versions.

This basically means that we can assume that the return value is
>= 0 now, which can simplify the calling code.
2014-04-21 22:03:20 +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
Licai Guo
883e89e0d2 Merge pull request #720 from huili2/ec_add_ref_mgt
add DPB management if frame loss happens
2014-04-21 14:38:37 +08:00
Licai Guo
7dfc49ec39 Merge pull request #718 from huili2/LTR_feedback_info
modify sequence to fix bug for LTR feedback info
2014-04-21 14:38:16 +08:00
huili2
d031509474 add DPB management if frame loss happens 2014-04-20 22:59:25 -07:00
huili2
0c45cbb1ec modify sequence to fix bug for LTR feedback info 2014-04-20 22:22:24 -07:00
ruil2
c01b0f4f92 Merge pull request #716 from licaiguo/ForJS
Specify accurate align information for mc copy and intrapred c functions
2014-04-21 11:05:38 +08:00
Licai Guo
4e041d625f Minor optimzation on iRun for cavlc 2014-04-20 00:33:48 -07:00
Licai Guo
5ba3ead015 specify accurate align information for intrapred c functions 2014-04-19 00:56:00 -07:00
Licai Guo
039a547804 give accurate align information for mc copy functions
this can improve the performance for target like javascript
2014-04-19 00:33:23 -07: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
huili2
1b1654e9c6 Merge pull request #712 from ruil2/enc_rename_1
rename some varialbes
2014-04-18 13:17:17 +08:00
huili2
7d99aa4e22 Merge pull request #713 from licaiguo/overwriteactivesps
overwriteactivesps
2014-04-18 13:16:18 +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
sijchen
9b0322330c Merge pull request #709 from huili2/ec_mb_check
add EC frame/slice copy.
2014-04-18 10:57:40 +08:00
ruil2
6b707ffb14 add complexity calculation in workflow 2014-04-17 17:33:44 +08:00
Licai Guo
2f8c539e60 Merge pull request #707 from dongzha/FixIssueMcNEON
Fix potential issue for neon implement on encoder mode decision.
2014-04-17 17:26:25 +08:00
Licai Guo
79ed744923 overwriteactivesps 2014-04-17 02:25:41 -07: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
3d9d00b27c Update targets.mk 2014-04-17 10:43:10 +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
Dmitriy Tyagniy
4e8428fbfc Updated XCode projects to properly launch for arm64 architecture 2014-04-16 11:53:44 +03:00
huili2
bc2c4b0db0 add EC frame/slice copy. 2014-04-16 01:44:35 -07:00
ruil2
02bd787c34 update help info for console app 2014-04-16 13:39:21 +08:00
zhchu
01d6a26012 update ios project files 2014-04-15 16:23:48 +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
huili2
77aaf2ea8e Merge pull request #685 from licaiguo/tracklayersps
add track sps change for each layer
2014-04-15 11:05:45 +08:00
Licai Guo
16cfb0a937 add track sps change for each layer 2014-04-14 00:17:44 -07:00
ruil2
1e3053208d update the default value for bPrefixNalAddingCtrl and iLoopFilterDisableIdc 2014-04-14 14:06:02 +08:00
Dong Zhang
8a4300be50 Fix potential issue for neon implement on encoder mode decision.
Error happens when ME_REFINE_BUF_STRIDE is not equal to 32.
2014-04-13 19:41:29 -07:00
Ethan Hugg
ca36beb3fa Merge pull request #675 from mstorsjo/silence-crt-unsafe-warnings
Silence MSVC warnings about "unsafe" standard C functions in console apps
2014-04-12 10:14:37 -07:00
Licai Guo
f27b22f07c Merge pull request #676 from sijchen/fme_merge54
[Encoder ME] add memory allocation for feature search
2014-04-11 22:45:47 +08:00
sijchen
64ef420e67 add memory allocation for feature search 2014-04-11 17:11:46 +08:00
Licai Guo
32fc4bea79 Merge pull request #674 from ruil2/enc_ltr
add the number of LTR setting in configure file
2014-04-11 17:10:40 +08:00
ruil2
2eaa036ebe Merge pull request #672 from mstorsjo/msvc-proj-file-crt-type
Update the MSVC project files to use the statically linked C runtime library
2014-04-11 16:28:29 +08:00
Martin Storsjö
ed62d01609 Use _CRT_SECURE_NO_WARNINGS to avoid warnings in the encoder version of read_config.cpp as well
This is clearer and requires less code than using the pragmas for
disabling warnings.
2014-04-11 11:27:44 +03:00
Martin Storsjö
efdb58dae5 Silence MSVC warnings about "unsafe" standard C functions in console apps
Within the libraries themselves, we use other wrapper functions to
make sure the functions are used safely, but this wrapper layer isn't
available outside of the library in the console apps. The usage of these
functions is safe here, so silence the warnings.

This gets rid of all warnings when building with MSVC in 32 bit mode,
making it much easier to spot new warnings.
2014-04-11 11:27:44 +03: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
4d50a2accb Merge pull request #669 from mstorsjo/remove-unnecessary-ifdef
Remove some unnecessary ifdefs
2014-04-11 16:24:55 +08:00
ruil2
13cdd4b539 add the number of LTR setting in configure file 2014-04-11 16:11:18 +08:00
Martin Storsjö
5c1666f430 Update the MSVC project files to use the statically linked C runtime library
This makes them match the behaviour of the make based build system.
2014-04-11 10:35:57 +03:00
Martin Storsjö
99c6131004 Remove some unnecessary ifdefs
These headers are standard headers that are available in MSVC as well.
There's nothing ifdeffed in the implementation of this file that would
explain why these headers only are required in these configurations.
2014-04-11 10:29:30 +03: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
volvet
42bd7227aa fix ios build 2014-04-10 22:10:46 -07:00
Licai Guo
471816d3fc Merge pull request #664 from huili2/modify_api_comments
modify decoder API to up-to-date
2014-04-11 12:56:31 +08:00
huili2
f5d1683861 modify decoder API to up-to-date 2014-04-10 19:44:28 -07: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
sijchen
a758282ee7 Merge pull request #635 from lyao2/new_scroll_dev
add scroll detection files
2014-04-09 13:56:24 +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
Licai Guo
4ba216b000 Merge pull request #655 from huili2/EC_interface
add interface for error concealment, to be continued
2014-04-09 09:12:22 +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
Martin Storsjö
6e996d77b1 Remove the unused WELSVP_EXPORTS define 2014-04-08 22:40:01 +03: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
volvet
605ae416a0 Merge pull request #649 from mstorsjo/unify-msvc-project-settings
Switch to use the DLL version of the C runtime in WelsVP
2014-04-08 10:39:10 -07:00
Martin Storsjö
3dcd458ffd Remove trailing whitespace in the source files 2014-04-08 18:13:23 +03:00
Licai Guo
8d31783c17 Merge pull request #644 from mstorsjo/remove-dos-newlines
Remove stray dos newlines
2014-04-08 21:54:20 +08:00
Martin Storsjö
ab3f1ca969 Switch to use the DLL version of the C runtime in WelsVP
This matches what is set in the WelsEncCore project.
2014-04-08 15:18:40 +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
Martin Storsjö
56abd3c15b Link the encoder core directly to the VP library
This avoids using the codepaths for dynamically loading the
DLL, letting the linker resolve it as any other function.
2014-04-08 15:09:21 +03:00
Martin Storsjö
7aff66d40c Remove the literal CRLF (&#x0D;&#x0A;) within the nasm commands in msvc project files 2014-04-08 11:43:08 +03:00
Martin Storsjö
5d2ca9d7a8 Remove the explicit -O3 parameter to nasm in visual studio project files
According to "nasm -h", there is no -O3 parameter at all, and
the highest optimization level (-Ox) is already the default.

The corresponding parameter never was set when building with the
make build system.
2014-04-08 11:42:14 +03:00
ruil2
c4ca66d7c2 Merge pull request #640 from mstorsjo/update-msvc-proj
Add the new x86 assembly source files to the msvc project files
2014-04-08 16:41:31 +08:00
Martin Storsjö
d6cb592e83 Remove stray dos newlines
These were added in 4ced8a9e and 9645f380.
2014-04-08 11:17:57 +03:00
Martin Storsjö
e329ff4cb0 Add the new x86 assembly source files to the msvc project files 2014-04-08 10:17:48 +03:00
lyao2
21c74fe8ba correct formatted file headers 2014-04-08 14:49:47 +08:00
ruil2
37f20f1c5e update pre-processing workflow for screen content 2014-04-08 14:42:30 +08:00
huili2
79c0cec248 add interface for error concealment, to be continued 2014-04-07 22:53:39 -07: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
lyao2
7cbc76d32c Squashed commit of the following:
commit a83d75aed2fae9e0ae877642fbbd8e82b6bacca6
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date:   Fri Apr 4 15:40:54 2014 +0800

    check makefile

commit 097bd858ef46b6febda098253cc0d48e2eb0c95c
Author: lyao2 <lyao2@LYAO2-WS01.cisco.com>
Date:   Fri Apr 4 09:43:24 2014 +0800

    add mask flag

commit 34e86276000bac158abdfb839b1a5aaebac1e235
add scroll detection files
2014-04-04 16:03:58 +08: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
sijchen
b7541449d3 Merge pull request #626 from volvet/fix_scd_screen
fix static block assign in scd screen
2014-04-04 08:58:50 +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
volvet
33d2052856 fix static block assign in scd screen 2014-04-02 17:39:06 -07:00
volvet
d24882c23e fix mis spell 2014-04-02 17:28:53 -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
volvet
2d51949368 Merge pull request #610 from mstorsjo/wp8-threads
Make threading work on windows phone
2014-04-01 10:52:54 -07:00
Martin Storsjö
cc86533a39 Remove the now unused MT_ENABLE define from project files 2014-04-01 13:21:19 +03:00
Martin Storsjö
b35c21201b Use the Windows Runtime ThreadPool API for creating threads on Windows Phone
Windows Phone lacks the old CreateThread/beginthreadex APIs for
creating threads. (Technically, the functions still do exist,
but they aren't officially supported and aren't visible in the
headers when targeting Windows Phone.)

Building code that uses the Windows Runtime language extensions
requires building with the -ZW option.
2014-04-01 11:18:49 +03:00
Martin Storsjö
f293d26a62 Use more modern versions of functions that don't exist on Windows Phone 2014-04-01 11:18:48 +03:00
Martin Storsjö
4bcb03c5a0 Remove the unused function WelsSleep
Windows Phone 8 doesn't have Sleep(), but there's no need to
use the function at all.
2014-04-01 11:18:48 +03: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
sijchen
0df6b1357b Merge pull request #600 from ruil2/vp_console
add usagetype setting for screen content
2014-03-31 17:33:49 +08:00
ruil2
aed919a65a add scene change for screen content 2014-03-31 17:14:00 +08:00
ruil2
03e0e443e2 fix typo 2014-03-31 16:12:11 +08:00
sijchen
69983d6df4 Add alternative search methods 2014-03-31 16:11:31 +08:00
ruil2
666e5d1290 Merge pull request #601 from volvet/fix-ios-build
fix ios encDemo build
2014-03-31 14:14:14 +08:00
volvet
9714e97fbe fix ios encDemo build 2014-03-30 23:09:01 -07:00
unknown
a128d7f790 add usagetype setting for screen content 2014-03-31 14:00:25 +08:00
Licai Guo
9ac1cd0a17 add layer sps/pps to decoder context 2014-03-30 18:50:34 -07: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
unknown
94eb2e6860 modify the output directory of welsvp in VC project. 2014-03-26 13:40:47 +08:00
ruil2
3a4346a898 create complexity analysis for screen content 2014-03-26 13:06:56 +08:00
ruil2
4ced8a9edd add complexity calculation for screen content 2014-03-26 10:09:06 +08:00
Andoni Morales Alastruey
328740f294 Prefix API with the Wels namespace 2014-03-25 17:40:01 +01:00
Martin Storsjö
3d076fe1f8 Readd a missed prototype for the WelsProcessingSampleSad8x8_neon function
The common WelsSampleSad8x8_neon function has different alignment
requirements than WelsProcessingSampleSad8x8_neon - until it has
been sorted out that the common version can be used in the processing
lib, the separate version for processing is used.

This fixes building with neon optimizations enabled.
2014-03-25 11:05:39 +02:00
Martin Storsjö
a6713c3351 Remove accidentally added dos newlines 2014-03-25 10:56:21 +02:00
Licai Guo
ba01e12858 Merge pull request #576 from mstorsjo/link-flag-cleanup
Remove unused *_LIBS make variables
2014-03-25 16:46:32 +08:00
Martin Storsjö
d024dc5cc0 Remove unused *_LIBS make variables 2014-03-25 10:13:29 +02: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
unknown
2af7024af9 add complexity calculation parameter for screen content 2014-03-25 09:38:07 +08:00
Licai Guo
747e88a985 Merge pull request #566 from volvet/develop_b
use overwrite for scene change detector
2014-03-25 06:44:58 +08:00
volvet
c45b46a786 fix android build for mini-sdk virsion issue 2014-03-25 03:04:31 +08:00
Andoni Morales Alastruey
6ed23591a8 Fix Android build setting minSdkVersion
Beside changing line endings in (see: 973a16) it's also
required to set a minimum Sdk version in the manifest
2014-03-24 17:20:41 +01:00
Ethan Hugg
7b0beeeda7 Merge pull request #567 from ylatuya/android
Fix line endings in manifest files
2014-03-24 08:49:05 -07:00
Andoni Morales Alastruey
973a167e8e Fix line endings in manifest files
Fixes build error in Android getting TOOLCHAINPREFIX
in build/platform-android.mk:

$NDKROOT/build/gmsl/__gmsl:512: *** non-numeric second argument to `wordlist' function: ''.  Stop.
2014-03-24 16:00:30 +01:00
volvet
7642b5f5fc use overwrite for scene change detector 2014-03-24 18:25:42 +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
Licai Guo
1aa759487f Merge pull request #557 from sijchen/me_refactor4444
[Encoder Refactor] Expand MVD table
2014-03-20 17:10: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
e0ef0cabdd Merge pull request #555 from huili2/remove_unused_func
rephrase blockzero function complexity and remove useless functions
2014-03-20 15:57:50 +08:00
Licai Guo
9d73d273ff Merge pull request #554 from ruil2/encoder_update
add maxbitrate parameter
2014-03-20 14:57:54 +08:00
Licai Guo
bef50d9ae1 Merge pull request #550 from sijchen/funcptr_refactor
[Encoder Refactor] Simplify the setting of function pointers
2014-03-20 14:56:34 +08:00
wayne liu
06c534d9f2 rephrase blockzero function complexity and remove useless functions 2014-03-19 23:43:55 -07: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
Licai Guo
cb46a3cf37 Merge pull request #547 from volvet/add-build-for-scene-change-detect-for-desktop
add scene change detector for screen in builder
2014-03-20 10:57:38 +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
volvet
157b876775 add set method for scene change detection 2014-03-20 09:12:29 +08:00
Ethan Hugg
f0c2cdd78c Merge pull request #529 from mstorsjo/remove-unused-error-code
Remove an unused error code
2014-03-19 09:21:41 -07: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
volvet
048c23431c add screen detector in builder 2014-03-19 16:55:21 +08: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
Licai Guo
53553f351e Merge pull request #542 from volvet/add-scene-change-detector-screen
Add scene change detector screen
2014-03-19 16:28:36 +08:00
Licai Guo
a688f5278a fix most of the warnings 2014-03-19 01:16:08 -07:00
Martin Storsjö
d75f677034 Remove unnecessary/superfluous parentheses in slice_multi_threading.cpp 2014-03-19 10:15:29 +02:00
ruil2
e74f01ad47 use the same frame type EVideoFrameType in encoder internal 2014-03-19 16:11:06 +08:00
volvet
fc4cd8b597 Merge pull request #543 from zhilwang/reorgcommon-xcode
Modify xcode project to fit common reorg.
2014-03-19 15:36:21 +08:00
Licai Guo
3febdc1d2e Modify xcode project to fit common reorg. 2014-03-19 15:08:14 +08:00
volvet
0f35049bb4 remove blank space 2014-03-19 15:00:54 +08:00
volvet
84903f145e add screen change detector for desktop share 2014-03-19 14:56:45 +08:00
ruil2
3238c913cc Merge pull request #535 from volvet/add-scene-change-detector
Add scene change detector
2014-03-19 14:52:08 +08:00
Licai Guo
e39de8d404 reoranize common to inc/src/x86/arm 2014-03-18 19:41:32 -07:00
volvet
7313ecdbd0 Merge pull request #538 from mstorsjo/use-apple-builtin-define
Use __APPLE__ instead of APPLE_IOS for apple/arm specific features
2014-03-19 09:45:56 +08:00
Licai Guo
4bbe61a783 Merge pull request #537 from mstorsjo/rename-x86-asm
Rename the asm subdirectories to x86
2014-03-19 08:51:39 +08: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ö
9586c59b9e Use __APPLE__ instead of APPLE_IOS in the arm assembly sources 2014-03-18 23:15:49 +02:00
Martin Storsjö
73ed237d73 Use __APPLE__ instead of APPLE_IOS for using the apple cpu feature detection 2014-03-18 23:15:49 +02:00
Martin Storsjö
ed9c03408f Rename the asm subdirectories to x86
This is consistent with having the arm assembly in a subdirectory
called arm.
2014-03-18 23:09:45 +02:00
Ethan Hugg
197423f271 Merge pull request #520 from ylatuya/master
Fix compiler warnings and remove dead code
2014-03-18 13:28:02 -07:00
Andoni Morales Alastruey
8be8fe1775 Fix compiler warning -Werror=maybe-uninitialized 2014-03-18 19:15:25 +01:00
Andoni Morales Alastruey
e9e332bf4c Fix -Werror=sign-compare compiler warnings 2014-03-18 19:15:25 +01:00
Andoni Morales Alastruey
ae60f1bee9 Fix compiler warnings and remove dead code
Fix several -Werror=unused-variable and -Werror=unused-but-set-variable
and removed dead code found with this warnings
2014-03-18 19:15:25 +01:00
Andoni Morales Alastruey
703c69de81 codec: add a new macro for unused functions
Variables used only for tracing logs can trigger
-Werror=unusef-variable when tracing is disabled.
This macro helps to silent gcc in those casesWIP
2014-03-18 19:15:25 +01: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
volvet
af522899bd remove black space at lineend 2014-03-18 18:00:18 +08:00
volvet
d7b7419040 add scene change detector for further extension 2014-03-18 17:54:58 +08:00
ruil2
9cf9238cfc fix bug that there is no output in encoder console 2014-03-18 17:38:48 +08:00
huili2
3b270aa901 remove unncessary cast 2014-03-18 02:15:57 -07:00
huili2
090e8cc1ed modify WELS_CLIP1 to be inline functions 2014-03-18 01:54:25 -07:00
Martin Storsjö
72da7f8711 Remove an unused error code
I don't see this error code being useful - working slowly hardly
would be a reason for the library to return and fail to do what
it was asked to do, so normal functions would never actually return
this code.
2014-03-18 10:11:27 +02:00
volvet
b21411ad7c Merge pull request #511 from mstorsjo/remove-unused-define
Remove the unused FORMAT_COFF define
2014-03-18 16:11:22 +08:00
Martin Storsjö
4c829a12e2 Fix the comment in welsEncoderExt.h about the EncodeFrame return value
This was changed in 36d56b6638 in the public api, but the
internal implementation header was missed and left inconsistent.
2014-03-18 10:07:23 +02:00
volvet
fb1958ad13 Merge pull request #519 from mstorsjo/push-xmm-registers
Backup/restore the xmm6-xmm15 SSE registers within asm functions on win64

Reviewed by zhiliang
2014-03-18 15:04:54 +08:00
Licai Guo
3956a32d41 Merge pull request #524 from sijchen/me_refactor33
Expand structure of MD and ME
2014-03-18 12:51:05 +08:00
Licai Guo
37fa5f554e Merge pull request #513 from ruil2/encoder_interface
Encoder interface
2014-03-18 09:51:32 +08:00
sijchen
7f0c7daad9 expand structure of MD and ME 2014-03-18 09:47:05 +08:00
volvet
b5353c8455 Merge pull request #516 from mstorsjo/fix-yasm-64bit
Fix building with yasm in 64 bit mode
2014-03-18 09:29:42 +08:00
volvet
e75cd2298b Merge pull request #517 from mstorsjo/simplify-x86-asm-func-macro
Fold ALIGN 16 and the function label into WELS_EXTERN
2014-03-18 09:29:17 +08:00
Martin Storsjö
29a0c77acf Don't clobber q4-q7 in WelsIntra16x16Combined3Satd_neon
This is similar to what is done in other neon functions. This
function was missed since it isn't covered by the current
set of unittests.
2014-03-17 20:04:53 +02:00
Martin Storsjö
4633626d69 Remove XMMREG_PROTECT
This isn't necessary any longer, when all the assembly routines
take care of restoring registers as necessary.
2014-03-17 13:47:01 +02:00
Martin Storsjö
3cf52554f7 Backup/restore the xmm6-xmm15 SSE registers within asm functions on win64
According to the Win64 ABI, these registers need to be preserved,
and compilers are allowed to rely on their content to stay
available - not only for float usage but for any usage, anywhere,
in the calling C++ code.

This adds a macro which pushes the clobbered registers onto the
stack if targeting win64 (and a matching one which restores them).
The parameter to the macro is the number of xmm registers used
(e.g. if using xmm0 - xmm7, the parameter is 8), or in other
words, the number of the highest xmm register used plus one.

This is similar to how the same issue is handled for the NEON
registers q4-q7 with the vpush instruction, except that they needed
to be preserved on all platforms, not only on one particular platform.

This allows removing the XMMREG_PROTECT_* hacks, which can
easily fail if the compiler chooses to use the callee saved
xmm registers in an unexpected spot.
2014-03-17 13:44:33 +02:00
Martin Storsjö
9293f2f947 Remove commented out rodata sections and tables in assembly files 2014-03-17 13:42:18 +02:00
Martin Storsjö
eec968234d Fold ALIGN 16 and the function label into WELS_EXTERN
This simplifies the structure for all x86 assembly functions,
reducing the amount of duplicated code structure.
2014-03-17 13:35:00 +02:00
Martin Storsjö
04f5bcd68d Use movsxd in SIGN_EXTENSION
This is what nasm ended up assembling movsx with 32 bit input to
anyway.

Keep using plain movsx for 16 bit input.

This fixes building with yasm in 64 bit mode.
2014-03-17 13:26:46 +02:00
Martin Storsjö
f96918283f Remove commented out code for old, 32-bit only x86 assembly function prologues/epilogues 2014-03-17 11:20:11 +02:00
Licai Guo
fc4e0cacec Merge pull request #483 from volvet/develop_b
use large/medium/similar to define scene change result
2014-03-17 16:32:31 +08:00
Licai Guo
b5a4d706b9 Merge pull request #496 from mstorsjo/use-sign-extend-macro
Use the SIGN_EXTENSION macro where possible
2014-03-17 16:31:03 +08:00
Licai Guo
1c0ba88b0e Merge pull request #501 from mstorsjo/neon-register-backup
Avoid clobbering the registers q4-q7 in DeblockingBSCalcEnc_neon
2014-03-17 14:05:23 +08:00
ruil2
895c0ff635 fix typo 2014-03-17 12:09:52 +08:00
ruil2
36abe317a5 modify unit test for return type modification 2014-03-17 11:56:19 +08:00
ruil2
36d56b6638 modify EncoderFrame return type.
commit b99a307ab94183c32a293ad5fda8b0e3323546a0
Author: ruil2 <ruil2@cisco.com>
Date:   Wed Mar 12 13:34:27 2014 +0800

    fix typo
2014-03-17 10:46:38 +08:00
Licai Guo
2c796337ba Merge pull request #510 from huili2/remove_basemb
remove BASE_MB related code
2014-03-17 08:46:25 +08:00
Martin Storsjö
fc260b39e0 Remove the unused FORMAT_COFF define
Nothing in the project currently sets FORMAT_COFF - the other generic
branch works just fine on windows.
2014-03-16 17:54:55 +02:00
Martin Storsjö
eb238e6549 Use the SIGN_EXTENSION macro where possible
This shortens the x86 assembly by 134 lines in total.
2014-03-16 17:54:24 +02:00
Martin Storsjö
91e5838621 Indent all WELS_ASM_FUNC_BEGIN properly
By having all of them start at the start of the line, the code
is more consistent and readable.
2014-03-16 12:01:54 +02:00
volvet
e654bf6b7f Merge pull request #490 from ruil2/encoder_slice_auto
fix dump file issue
2014-03-16 15:41:26 +08:00
volvet
1c3e87dd3f Merge pull request #505 from mstorsjo/x86-asm-constants
Format x86 assembly constants in a yasm compatible manner
2014-03-16 15:37:16 +08:00
volvet
ac990fdc38 Merge pull request #507 from mstorsjo/more-x86-asm-args
Add defines for argument 11 and 12 in asm_inc
2014-03-16 10:21:35 +08:00
volvet
e606bae0e9 Merge pull request #504 from mstorsjo/fix-function-name-typo
Fix a typo, Smple -> Sample
2014-03-16 10:18:03 +08:00
Martin Storsjö
d45e624cd4 Simplify code by using the arg11 and arg12 defines 2014-03-15 14:42:27 +02:00
Martin Storsjö
c82f548e6f Add defines of arg11 and arg12 in asm_inc.asm 2014-03-15 14:42:07 +02:00