Martin Storsjö
e1f28cea96
Remove the now unused XCTest.framework references
2014-06-06 10:34:39 +03:00
Martin Storsjö
837a582510
Remove unnecessary autogenerated stub iOS test projects
...
The actual unit tests will be hooked up in a separate project.
2014-06-05 12:13:58 +03: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
ruil2
db11ba7a34
fix vlc overflow
2014-05-27 13:18:52 +08:00
Sijia Chen
7413032185
using WelsRound for all the double-int32_t conversion
2014-05-20 14:06:31 +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
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
lyao2
bd7c04f738
enable Scroll detection into workflow
2014-05-15 09:11:58 +08:00
Ethan Hugg
3d5990500b
Merge pull request #832 from mstorsjo/asflags
...
Don't pass all MSVC specific cflags to gas-preprocessor and armasm
2014-05-14 08:01:25 -07: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
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
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ö
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ö
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
huili2
5ed24f216b
astyle all files
2014-05-05 19:30:21 -07: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
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
Dmitriy Tyagniy
4e8428fbfc
Updated XCode projects to properly launch for arm64 architecture
2014-04-16 11:53:44 +03: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
volvet
42bd7227aa
fix ios build
2014-04-10 22:10:46 -07:00
sijchen
a758282ee7
Merge pull request #635 from lyao2/new_scroll_dev
...
add scroll detection files
2014-04-09 13:56:24 +08: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
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ö
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 (
) 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
Martin Storsjö
d6cb592e83
Remove stray dos newlines
...
These were added in 4ced8a9e
and 9645f380
.
2014-04-08 11:17:57 +03:00
lyao2
21c74fe8ba
correct formatted file headers
2014-04-08 14:49:47 +08: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
volvet
33d2052856
fix static block assign in scd screen
2014-04-02 17:39:06 -07:00
sijchen
f695227b00
add funtion pointer for search methods
2014-04-02 10:12:39 +08:00
Ethan Hugg
c644879cf9
Merge pull request #598 from varunbpatil/compiler_warnings
...
Remove compiler warnings
2014-04-01 10:57:19 -07:00
volvet
9714e97fbe
fix ios encDemo build
2014-03-30 23:09:01 -07:00
Varun B Patil
6663743f4c
Remove compiler warnings
2014-03-30 15:13:29 +05:30
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
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
ruil2
6b3f89d582
move some common functions to common.cpp and add some functions in common
2014-03-25 15:35:55 +08:00
unknown
2af7024af9
add complexity calculation parameter for screen content
2014-03-25 09:38:07 +08:00
volvet
7642b5f5fc
use overwrite for scene change detector
2014-03-24 18:25:42 +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
volvet
157b876775
add set method for scene change detection
2014-03-20 09:12:29 +08:00
volvet
048c23431c
add screen detector in builder
2014-03-19 16:55:21 +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
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
Martin Storsjö
9586c59b9e
Use __APPLE__ instead of APPLE_IOS in the arm assembly sources
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
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
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
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
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ö
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ö
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
Martin Storsjö
d45e624cd4
Simplify code by using the arg11 and arg12 defines
2014-03-15 14:42:27 +02:00
Martin Storsjö
9199798f22
Fix a typo in a macro name, EXTENTION -> EXTENSION
2014-03-14 10:13:18 +02:00
Martin Storsjö
2bce50283f
Fix a mismatched ifdef comment
...
This is an ifdef block for HAVE_NEON.
2014-03-14 10:01:18 +02:00
volvet
fc5c48830a
fix the condition of scene change flag and comments
2014-03-14 09:53:24 +08:00
volvet
c8761c08ae
use large/medium/similar to define scene change result
2014-03-13 10:43:20 +08:00
Martin Storsjö
c011890764
Push clobbered neon registers on the stack
...
According to the calling convention, the registers q4-q7 should be
preserved by functions. The caller (generated by the compiler) could
be using those registers anywhere for any intermediate data.
Functions that use more than 12 of the qX registers must push
the clobbered registers on the stack in order to be able to restore them
afterwards.
In functions that don't use all 16 registers, but clobber some of
the callee saved registers q4-q7, one or more of them are remapped
to reduce the number of registers that have to be saved/restored.
This incurs a very small (around 0.5%) slowdown in the decoder and
encoder.
2014-03-10 22:07:36 +02:00
Martin Storsjö
811c647c0e
Remap registers to avoid clobbering the neon registers q4-q7
...
According to the calling convention, the registers q4-q7 should be
preserved by functions. The caller (generated by the compiler) could
be using those registers anywhere for any intermediate data.
Functions that use 12 or less of the qX registers can avoid
violating the calling convention by simply using other registers instead
of the callee saved registers q4-q7.
This change only remaps the registers used within functions - therefore
this does not affect performance at all. E.g. in functions using
registers q0-q7, we now use q0-q3 and q8-q11 instead.
2014-03-10 22:07:25 +02:00
Ethan Hugg
3627875986
Merge pull request #456 from mstorsjo/use-common-threadlib
...
Make the processing lib use mutexes from WelsThreadLib from the common library
2014-03-10 09:45:51 -07:00
ruil2
e99df3377d
Merge pull request #460 from mstorsjo/add-const
...
Mark pointers as const where possible in vaacalc
2014-03-10 15:35:57 +08:00
Martin Storsjö
e31ba7a775
Fix a typo, "heigth" -> "height"
2014-03-09 19:19:37 +02:00
Martin Storsjö
2a23a508e1
Mark pointers as const where possible in vaacalc
2014-03-09 18:52:17 +02:00
Martin Storsjö
c5390521ec
Make the processing lib use mutexes from WelsThreadLib from the common library
...
This requires always building the WelsMutex* functions,
even if MT_ENABLED isn't set.
2014-03-08 12:46:25 +02:00
Martin Storsjö
c87bb2b449
Remove unused/undeclared arm assembly macro parameters
...
The SAD_VAR_16_END macro only takes 3 parameters, never 4,
and SAD_SSD_16_END never is called with more than 3 parameters
either.
2014-03-07 10:26:54 +02:00
Martin Storsjö
c0043f7053
Use the three-operand form of add/sub with shift
...
When using unified syntax, the two operand form with a shift
isn't allowed.
2014-03-06 16:21:54 +02:00
Martin Storsjö
8ba79262bf
Rename a function to avoid conflicts between almost duplicate neon functions
...
There's a different version of the same function in the encoder,
but they're not identical - the encoder version has got stricter
alignment requirements.
If someone can confirm that it is ok to use the function from the
encoder, pixel_sad_neon.S in processing could be deleted, and the
encoder version moved to codec/common instead.
2014-03-06 16:19:48 +02:00
Martin Storsjö
4e4bfcc1bc
Regenerate makefiles to include the encoder arm assembly
2014-03-06 16:11:54 +02:00
Licai Guo
e7cc8c2780
Add arm asm code for processing.
2014-03-05 16:54:05 +08:00
Licai Guo
efcee63692
Remove .DS_Store file.
2014-03-05 10:24:05 +08:00
Licai Guo
bb244d736b
Partly add arm asm code to encoder.
2014-03-05 10:24:05 +08:00
Martin Storsjö
9cf34e7615
Unify the interface for the different variants of WelsCPUFeatureDetect
...
The caller of the function should not need to know exactly which
implementation of it is being used.
For the variants that don't support detecting the number of cores,
the pNumberOfLogicProcessors parameter can be left untouched
and the caller will use a higher level API for finding it out.
This simplifies all the calling code, and simplifies adding
more implementations of cpu feature detection.
2014-03-04 10:18:30 +02:00
Martin Storsjö
3ccd2ae4cf
Remove a redundant makefile ifdef
...
ASM_ARCH=x86 is only set if USE_ASM is enabled.
2014-03-01 23:56:14 +02:00
Martin Storsjö
7d2c761604
Allow using the USE_ASM makefile variable for architectures other than x86
...
Add an ASM_ARCH variable which specifies which kind of assembly
is supposed to be built.
2014-02-28 10:19:53 +02:00
volvet
73ce4adc85
add encode test for iOS
2014-02-26 14:53:31 +08:00
Licai Guo
fc056c7ef0
Refine structure of iOS project to fix the issue.
2014-02-25 13:46:18 +08:00
Martin Storsjö
38dbd57d36
Remove unnecessary precompiled headers
...
This reduces the huge amount of near-useless small extra files
scattered around for the sake of the platform demo projects.
This requires explicitly listing all the ncessary include paths.
2014-02-24 13:26:37 +02:00