Commit Graph

1160 Commits

Author SHA1 Message Date
huili2
7c6debbef6 add single function for new seq detection 2014-05-19 19:55:06 -07:00
HaiboZhu
3c2d9f7532 Merge pull request #863 from dongzha/FixEncOptionMaster
change comment in encoder option according to issue cisco#859 for master
2014-05-20 10:51:08 +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
dongzhang
a9ca4db07b change comment in encoder option according to issue https://github.com/cisco/openh264/issues/859 2014-05-20 10:00:59 +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
HaiboZhu
0c326fa302 Merge pull request #845 from huili2/bs_buffer_modif
modify bs buffer size to double the AU size at decoder
2014-05-15 16:30:18 +08:00
zhiliang wang
53c8af4566 Refine some code 2014-05-15 15:04:44 +08:00
Martin Storsjö
e9e4d0a073 Remove unnecessary writing of nal length in the decoder
The written nal length doesn't seem to be used at all.
2014-05-15 09:44:35 +03:00
huili2
b63332de80 modify bs buffer size to double the AU size 2014-05-14 19:43:14 -07: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
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
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
ganyang
c06fcb2491 clean redundant code 2014-05-14 14:00:11 +08:00
Ethan Hugg
6a6d1d6186 Merge pull request #819 from mstorsjo/msvc-proj-gui-update
Restructure MSVC project files to what the IDE generates
2014-05-13 22:10:23 -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
sijchen
31a4d2aa3e Merge pull request #829 from dongzha/FixBugforDeblocking
Fix a bug in deblocking for neon 32 bit arm implementation for master
2014-05-13 17:21:48 +08:00
ruil2
a6ca8bb904 fix a commit bug for console app 2014-05-13 17:09:15 +08:00
sijchen
80ae4cb7d8 add me function pointers for screen contents 2014-05-13 16:47:18 +08:00
dongzha
cc7535ee52 Merge pull request #826 from huili2/clear_active_ps
clear active PS when only IDR meets
2014-05-13 15:25:42 +08:00
huili2
eb1276013b clear active PS when only IDR meets 2014-05-12 22:02:39 -07:00
huili2
41ddc536d6 Merge pull request #825 from ruil2/console_cleanup1
cleanup encoder console app
2014-05-13 12:58:09 +08:00
ruil2
7ef2e9553c Merge pull request #822 from mstorsjo/simplify-platform-defines
Don't manually define MACOS and LINUX, use built-in defines instead
2014-05-13 12:39:21 +08:00
ruil2
5b38a94c9a cleanup encoder console app 2014-05-13 09:50:48 +08:00
Martin Storsjö
6b9167199f Use the built-in define __linux__ instead of the manually set LINUX 2014-05-12 12:14:33 +03: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
bff52694c4 Merge pull request #817 from ruil2/enc_bitrate
fix bitrate setting and add bitrate validation
2014-05-12 14:44:06 +08:00
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