Commit Graph

1068 Commits

Author SHA1 Message Date
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 (
) 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