zhilwang
7629543e3e
Merge pull request #1784 from mstorsjo/force-arm-mode
...
Force armv7/neon within the arm assembly header file
2015-02-01 17:36:36 -08:00
Martin Storsjö
5a78735802
Force armv7/neon within the arm assembly header file
...
This avoids having to add extra compiler flags to be able to build
them.
2015-02-02 00:53:39 +02:00
Martin Storsjö
078d96bef7
Don't overwrite the git-tracked version.h
...
When generating a new version of the header, that includes the
actual git hash, don't overwrite the file that is tracked by git.
Instead create a new file, and include this only if the build system
indicates that it exists (by setting a define). This allows the
untouched source tree to be built from within an IDE even if make
has not been run.
This reduces the hassle with a file that needs to be ignored in the
git configuration.
The downside is that the generated file isn't used if building
from within an IDE, if the header has been updated by calling make
before (since the IDE configuration doesn't know whether the user
actually has run make). Since users of the IDE might not build via
make in the command line at all (in the same source checkout at least),
this should not be an issue in practice. The previous way things worked,
the version hash (generated by make) when used in an IDE could actually
be outdated and misleading.
2015-01-30 10:55:16 +02:00
Sijia Chen
a4f09f4d76
update the version info to sync with recent change of API
2015-01-29 11:14:08 +08:00
dongzha
4f4adcec49
Merge pull request #1772 from mstorsjo/mc-unify
...
Move the MC implementation to the common library
2015-01-29 09:28:57 +08:00
Martin Storsjö
f03edd79c2
Merge all MC unit tests into one file
...
Since both encoder and decoder use the same MC implementation now,
one set of tests is enough.
2015-01-28 23:59:37 +02:00
Martin Storsjö
9a0663620a
Move the MC routines to the common library
...
Use the decoder versions of the functions (which are capable
of handling widths 4/8/16 for luma, not only 16 as in the
encoder). By using the more generic versions, there may be a small
performance loss since the functions need to check the width
in every call. Actual measurements show that the actual change is
very small (and the shared routines turn out to actually be faster
than the existing ones in ARM NEON setups).
2015-01-28 15:32:46 +02:00
Martin Storsjö
1a7d0ab831
Hook up McChromaWidthEq8_ssse3 into use in the decoder as well
2015-01-28 15:20:43 +02:00
Martin Storsjö
5d67df4adb
Remove leftover references to expand_pic in the welsdec xcode project
...
These files are part of the common library (and the common xcode
project) now instead.
2015-01-28 15:13:50 +02:00
Martin Storsjö
9a9fc4c489
Change pfSampleAveraging to be a single function with internal width handling
...
This makes it match the behaviour of pMcLumaFunc and pMcChromaFunc.
2015-01-28 13:59:58 +02:00
Martin Storsjö
8b6bf0499f
Rename the encoder MC chroma/luma functions to match the naming in the decoder
2015-01-28 13:59:58 +02:00
Martin Storsjö
1cf68cad13
Move the qpel function table into the luma function itself
...
This unifies the luma MC interface to match the decoder side.
2015-01-28 13:59:58 +02:00
Martin Storsjö
7354a8cbae
Handle width==2 for the neon version of McCopy
...
Fall back on the C version of the algorithm here, just as in
McCopy_sse2.
This fixes 2 of the McCopy tests on arm/aarch64.
2015-01-28 09:01:00 +02:00
ruil2
c4c73ee5d6
Merge pull request #1764 from sijchen/fix_br3
...
[Encoder] fix potential overflow and save unnecessary calculation
2015-01-28 11:45:47 +08:00
ruil2
051a16e02e
Merge pull request #1762 from sijchen/fix_sta
...
[Encoder] fix statistics: updating should be independent with log interval
2015-01-28 10:51:51 +08:00
Sijia Chen
5752888c81
1, fix a potential overflow
...
2, remove some unnecessary multiplier and add input check of spatial BR
2015-01-28 10:51:27 +08:00
Martin Storsjö
23b20fb14c
Simplify code in HorFilterInput16bit in MC
...
This avoids a gcc optimizer bug (which seems to be present in some
gcc 4.6 and 4.7 versions) at the -O3 level.
2015-01-27 09:41:00 +02:00
Martin Storsjö
279e14b34e
Add const to some inline functions within MC
2015-01-27 09:41:00 +02:00
Martin Storsjö
478af8f00c
Unify the pfChromaMc function signature with the decoder version
...
Instead of passing a struct with x/y, pass them as two separate
parameters.
2015-01-27 09:40:59 +02:00
Martin Storsjö
9fc9acfd14
Avoid a duplicate local typedef
2015-01-27 09:40:59 +02:00
Martin Storsjö
7d9fc35235
Unify the encoder MC init function with the decoder
...
This simplifies the code a little, by passing a pointer to the sub-struct
SMcFunc instead of to the full SWelsFuncPtrList, which isn't necessary.
2015-01-27 09:40:59 +02:00
ruil2
5b27407993
Merge pull request #1757 from sijchen/sps_list4
...
[Encoder] add input checking and fix a bs length under new strategy
2015-01-27 10:43:20 +08:00
ruil2
1b48e6c88c
Merge pull request #1756 from sijchen/savc4
...
[Encoder] Implementation of bSimulcastAVC and UT
2015-01-27 10:42:50 +08:00
Sijia Chen
d557578be3
fix statistics: updating should be independent with log interval
2015-01-27 10:12:51 +08:00
Martin Storsjö
4ca8ad2612
Initialize pCodecInstance in the constructor
...
This avoids using uninitialized memory if SetCodecInstance
isn't ever called (as in DecUT_ParseSyntax).
2015-01-26 13:16:09 +02:00
Sijia Chen
deccd1eadb
fix profileidc
2015-01-26 16:36:42 +08:00
Sijia Chen
e2fb48d404
change the trace to warning
2015-01-26 15:42:09 +08:00
Sijia Chen
8d5ec6759d
add support of SimulcastAVC functions
2015-01-26 15:25:09 +08:00
Sijia Chen
f13624316e
fix level-idc related input checking and a statistics calculation
...
will change bs but tested there is little impact on RD
being reviewed at: https://rbcommons.com/s/OpenH264/r/1084/
2015-01-26 15:20:58 +08:00
Sijia Chen
45e3424364
add input checking and fix a bs length under new strategy
2015-01-26 11:12:24 +08:00
sijchen
7f967f6fc4
Merge pull request #1750 from syureyi/crqp
...
to support different chroma qp
2015-01-23 13:30:21 +08:00
zhuiling
a45c661525
to support different chroma qp
...
fix travis ci error
2015-01-23 09:06:09 +08:00
dong zhang
6dcaf2f890
fix crash in SGE test
2015-01-22 09:10:28 +08:00
ruil2
e7fff10d91
Merge pull request #1745 from sijchen/fix_ut
...
[UT] fix a random failure of UT
2015-01-21 17:31:34 +08:00
Sijia Chen
d74234d975
enhance max-br checking logic
2015-01-21 16:54:43 +08:00
Sijia Chen
6664593ef7
Merge branch 'master' of https://github.com/cisco/openh264 into fix_max_br
2015-01-21 16:35:31 +08:00
Sijia Chen
5b10c1ff8d
fix random failure of UT under randon seed 1421732719
2015-01-20 15:47:05 +08:00
dong zhang
bd7fabd892
modify decoder console log level to WELS_LOG_WARNING
...
change the postion of setting EC method
2015-01-20 13:18:33 +08:00
Sijia Chen
ee40ba6392
improve the para checking of max-br
2015-01-20 10:31:13 +08:00
sijchen
8bef6bc942
Merge pull request #1738 from huili2/init_EC_modify
...
modify EC init position
2015-01-19 16:36:29 +08:00
Sijia Chen
d9502aa71d
rename the strategy to enum
2015-01-19 10:49:38 +08:00
huili2
50ce93e31c
modify EC init position
2015-01-18 18:07:27 -08:00
Martin Storsjö
9e00bf89aa
Use VerifyVersionInfo instead of GetVersionEx
...
The GetVersionEx function has been deprecated since Windows 8.1.
VerifyVersionInfo exists at least since Windows 2000.
This fixes warnings about use of deprecated functions in MSVC.
2015-01-16 13:38:21 +02:00
Martin Storsjö
b83b19254d
Add a cast when converting from uint64_t to int
...
This silences warnings with MSVC.
2015-01-16 13:38:07 +02:00
ruil2
aea1017562
Merge pull request #1732 from sijchen/sps_list2
...
[Encoder] add new SpsPpsStrategy and UT
2015-01-16 10:53:45 +08:00
Martin Storsjö
d6b4b5365d
Declare a float constant as float instead of as double
...
This avoids warnings about converting from double to float
in MSVC.
2015-01-15 12:38:42 +02:00
Martin Storsjö
75bbc286e1
Add explicit casts when converting from double to int32_t
...
This fixes build warnings with MSVC.
2015-01-15 12:38:39 +02:00
Martin Storsjö
c8972f1c32
Consistently use the right type for log prints
...
These fields were originally int64_t. Even though long long is
the same size as int64_t in all setups, some compilers treat
it as a different type than long long (in 64 bit environments,
int64_t is a long, not a long long, even if they are the same
size).
%"PRId64" is used for printing int64_t, while %lld is used
for printing long long.
This fixes build warnings with gcc.
2015-01-15 12:33:44 +02:00
Sijia Chen
98ed302990
add new SpsPpsStrategy and UT
2015-01-15 18:04:39 +08:00
sijchen
e9ec603fd7
Merge pull request #1727 from huili2/addUT_parseonly_frameincomplete
...
add UT for incomplete frame for parse only
2015-01-15 16:23:05 +08:00