Commit Graph

529 Commits

Author SHA1 Message Date
sijchen
5cb5c28331 Merge pull request #1500 from syureyi/decoderstatics
decoder statictis adding
2014-11-06 14:25:04 +08:00
zhuling13
45ef803e4d decoder statictis adding
mem

mem

decstatictis

time change

time change

set decTime=0
2014-11-05 22:01:32 -08:00
dongzha
ba0351f569 fix cabac bug in deltaqp 2014-11-06 10:51:18 +08:00
huili2
103fa5bbed enable cross IDR EC method 2014-11-03 22:11:49 -08:00
Martin Storsjö
8ffacf0918 Add casts to avoid warnings about comparison between signed and unsigned
This fixes warnings with gcc and msvc.
2014-11-03 11:28:40 +02:00
Martin Storsjö
0e9541247a Use the right data type for some local variables
pDecEngine->uiOffset is an uint64_t as well, and *pSliceNum
is uint32_t.

This fixes warnings about comparison between signed and unsigned
in gcc and msvc.
2014-11-03 11:28:35 +02:00
Martin Storsjö
2951a7f3a3 Remove variables that are set but not used
This fixes build warnings with gcc.
2014-11-03 10:52:02 +02:00
dong zhang
cf85745752 add decoder cabac support and add UT 2014-11-03 10:03:43 +08:00
sijchen
43c62d06eb Merge pull request #1439 from sijchen/for_format
[Reformat] format cpp files for next release
2014-10-24 09:00:36 +08:00
Sijia Chen
97298de90a reformat cpp files for next release 2014-10-23 17:50:50 +08:00
huili2
3c4279cdd8 fix crash bug of sps/pps 2014-10-23 02:36:08 -07:00
HaiboZhu
1a78f69f2f Merge pull request #1418 from huili2/EC_option_bugfix
ec disable bug fix
2014-10-17 10:09:39 +08:00
huili2
9a0d56da97 Merge pull request #1412 from daniel-j-h/clang_cleanup
Clang's -Weverything and Static Analyzer's reports
2014-10-16 14:24:58 +08:00
Haibo Zhu
9d182ee515 Add picture bIsComplete flag to reflect the status of decoder
Modify the output error status and add some some judgement
2014-10-15 11:36:24 -07:00
huili2
869c567f04 ec disable bug fix 2014-10-15 02:41:44 -07:00
Daniel J. Hofmann
1e62aafcde Wc++11-extensions 2014-10-14 22:20:10 +02:00
Daniel J. Hofmann
4fc27714bd Wc++11-compat-reserved-user-defined-literal 2014-10-14 22:16:42 +02:00
huili2
f8d2ae42ef add protection for decoder and data format 2014-09-23 00:29:23 -07:00
huili2
f6fb459a7f add freely setoption for EC_idc and UT 2014-09-21 21:51:48 -07:00
dongzha
311f7006fd 1. add encoder-engine-decoder API UT for: IDR request, LTR request
2. add decoder api UT for EC: Disable/Enable EC
3. Fix a decoder bug when EC is disabled
   itoltalMbDec should be set to zero when encouter a new sequence/picture, even   when EC is disabled.
2014-09-12 11:12:59 +08:00
huili2
0227f87b7a when sps/pps non exist, return dsNoParamSets 2014-09-02 22:22:18 -07:00
ruil2
40e952f981 remove "\n" which shoudl be added by the trace sink 2014-08-27 14:34:05 +08:00
Martin Storsjö
81ac3d2a9b Fix building svc_motion_estimation.S for android
The .align directive takes an argument in number of bits, i.e. the
actual alignment is 2^n. Previously building with binutils failed,
since 16 isn't a valid parameter to .align, the maximum is 15.

Thus, this makes the code try to align to 16 bytes, instead of aligning
to 65536 bytes.

This fixes building for android.

This also clears up the same mistake in the aarch64 code, even though
that one built just fine.
2014-08-15 09:53:42 +03:00
ruil2
493d254a4a merge level table 2014-08-12 09:28:40 +08:00
huili2
e8fdd4cf75 setget_dataformat_ut 2014-07-28 18:41:58 -07:00
huili2
933c477717 modify EC API name and remove useless flag 2014-07-27 21:35:26 -07:00
HFVideoMac
0d1699b67f Add Unit Test and ARM64 code for block_add 2014-07-21 14:37:52 +08:00
huili2
a0e569da81 modify the logic for WME usage 2014-07-16 18:14:53 -07:00
dongzha
2db10df5c6 Merge pull request #1180 from huili2/dpb_green_issue_master
solve green issue combined with EC and multi-packet input
2014-07-17 08:41:27 +08:00
ruil2
f94a20d7b5 Merge pull request #1174 from huili2/border_green_master
expand pic for EC
2014-07-16 10:01:02 +08:00
huili2
d7f3331c9d solve green issue combined with EC and multi-packet input 2014-07-15 02:51:20 -07:00
huili2
7f36b244f7 Merge pull request #1158 from HaiboZhu/Debug_codenomicon_3_015584
Debug for InitRefPicList
2014-07-15 17:50:51 +08:00
huili2
b02f75f608 expand pic for EC 2014-07-14 23:28:46 -07:00
huili2
c4fc6642cf reuse dsNoParamSets in dec 2014-07-14 18:47:40 -07:00
Haibo Zhu
cbc5f3bf4b Remove the call function parameter. 2014-07-10 22:54:35 -07:00
Haibo Zhu
79891067e9 Debug for codenomicon bits, when one picture contains diff types of slices(I, P),may request null ref list. 2014-07-10 20:17:18 -07:00
huili2
209c607020 add return info for all cases 2014-07-09 23:06:40 -07:00
huili2
adb0fa498f astyle all cpp files 2014-07-08 20:01:42 -07:00
huili2
581f8fdf79 decrease dec log size 2014-07-08 19:46:01 -07:00
huili2
6897398175 Merge pull request #1112 from huili2/EC_IDR_request
mark decoder always ECed status until correct IDR comes
2014-07-09 09:33:38 +08:00
huili2
1a58488aeb new IDR inserted as GREY 2014-07-08 17:58:23 -07:00
huili2
ce43674703 mark decoder always ECed status until correct IDR comes 2014-07-08 08:42:31 -07:00
dongzha
6489e7b38a Merge pull request #1096 from huili2/early_stop_parse_rec_bug
stop early error for parse/recon MB
2014-07-08 12:49:42 +08:00
huili2
1ec213d5a7 stop early error for parse/recon MB 2014-07-07 21:27:44 -07:00
ruil2
589e40aa67 Merge pull request #1094 from huili2/ec_grey_replace_green
use grey instead of green in EC without ref
2014-07-07 17:39:37 +08:00
huili2
fb6379eeb1 use grey instead of green in EC without ref 2014-07-07 02:24:51 -07:00
HaiboZhu
f22a9e890f Merge pull request #1093 from huili2/ec_return_error
LTR feedback check in decoder
2014-07-07 15:58:20 +08:00
huili2
60314ff570 LTR feedback check in decoder 2014-07-06 19:17:50 -07:00
huili2
5a60d0fef4 Merge pull request #1090 from HaiboZhu/Debug_ExpandBsBuffer
Remove warning
2014-07-07 10:17:41 +08:00
Haibo Zhu
863852259d Remove warning 2014-07-06 19:04:59 -07:00
huili2
f1a0a81226 dpb uninitial crash for EC 2014-07-04 20:40:41 -07:00
Haibo Zhu
8e400f19d2 Debug about the ExpandBsBuffer (have no Bs buffer offset reset) 2014-07-04 04:19:16 -07:00
huili2
3f5f0d6a57 add missing ASM in EC 2014-07-03 18:43:52 -07:00
Martin Storsjö
4af37a7d21 Move common tables and definitions into the common library 2014-06-30 09:03:10 +03:00
Martin Storsjö
44ebe7dea4 Rename a decoder macro to the name used in the encoder 2014-06-30 09:03:10 +03:00
Martin Storsjö
578060373a Rename data types in the decoder to match the name used in the encoder 2014-06-30 09:03:10 +03:00
Martin Storsjö
eb7cdf2bda Rename some decoder tables to match the name used in the encoder 2014-06-30 09:03:10 +03:00
Martin Storsjö
4aa22da812 Remove an unused constant 2014-06-30 09:03:10 +03:00
zhilwang
2b038fa73b Merge pull request #1037 from mstorsjo/unify-align-macros
Unify macros for alignment
2014-06-30 10:09:05 +08:00
Martin Storsjö
f300476468 Use the ALIGNED_DECLARE macro instead of __align16 2014-06-29 00:36:02 +03:00
Martin Storsjö
b406f4471a Fix a typo in arm64 assembly macros, ARCH64 -> AARCH64 2014-06-27 23:52:20 +03:00
dongzha
f8ca91f317 Merge pull request #1025 from huili2/EC_return_error
add return error if data lost
2014-06-27 15:56:02 +08:00
huili2
b55f1bdfe2 add return error if data lost 2014-06-26 22:20:58 -07:00
ruil2
1ffcd36c70 change void* to explicit type definition 2014-06-27 11:34:47 +08:00
ruil2
fa138e866a trace fix 2014-06-27 10:52:03 +08:00
ruil2
275d7efbc9 Merge pull request #1021 from mstorsjo/remove-unused-declarations
Remove some unused declarations and tables
2014-06-27 09:03:02 +08:00
Martin Storsjö
f7ba0e4d1c Make some tables const where easily possible 2014-06-26 15:24:30 +03:00
Martin Storsjö
1f88cbf49e Remove an unused global non-const table 2014-06-26 15:19:20 +03:00
huili2
dc3fae4477 astyle all 2014-06-25 18:50:41 -07:00
Martin Storsjö
b76714719e Print an intX_t by casting to int64_t
The internal intX_t is either int32_t or int64_t depending on
platform bitness. Since there is no existing printf format for
such an integer, cast it to an int64_t and use the right
printf format for that instead.

This avoids warnings when building with clang.
2014-06-25 09:19:23 +03:00
Martin Storsjö
30058e091f Remove the executable bit from aarch64 assembly source files 2014-06-22 21:36:22 +03:00
huili2
fa0eee2470 Merge pull request #990 from zhilwang/arm64-intrapred
Add Arm64 neon Intra-pred code
2014-06-21 07:03:24 +08:00
huili2
777a3951aa Merge pull request #995 from huili2/permit_mb_re-con
enable MB re-decoding
2014-06-21 07:02:27 +08:00
huili2
f9152e6f40 fix crash 1027692 2014-06-20 02:21:54 -07:00
huili2
95012b0af6 enable MB re-decoding 2014-06-20 02:01:02 -07:00
dongzha
dd5b9b89f6 Merge pull request #991 from huili2/reorder_output_EC
put EC before output
2014-06-20 16:19:14 +08:00
Haibo Zhu
daf67d607f add win 64 warnings remove 2014-06-19 18:31:39 -07:00
ruil2
1111757977 Merge pull request #967 from dongzha/Deblock_AArch64
add arm 64 deblock code and Unit Test code
2014-06-16 17:19:25 +08:00
root
67afd91888 put EC before output 2014-06-15 23:14:31 -07:00
zhiliang wang
cfc2b95f59 Refine some code 2014-06-13 16:06:45 +08:00
zhiliang wang
947e3c64fe Add arm64 code for intra-pred 2014-06-13 15:21:48 +08:00
dongzha
53f77ee7b5 Merge pull request #954 from huili2/instant_dec
enable no-delay decoding for MSlice
2014-06-13 10:58:25 +08:00
Martin Storsjö
b2cf56c618 Set a log context in the decoder 2014-06-11 08:08:55 +03:00
Martin Storsjö
4e428ab020 Add a log context to the encoder and decoder contexts
This will allow setting non-global logging callbacks, that
are different for each encoder or decoder instance.
2014-06-11 08:08:29 +03:00
huili2
6f0cdd14f8 enable no-delay decoding for MSlice 2014-06-10 19:25:57 -07:00
dongzhang
0e0c8b5569 add arm 64 deblock code and Unit Test code 2014-06-10 11:23:51 +08:00
ruil2
4c12f8970c cleanup trace module 2014-06-10 10:24:45 +08:00
HaiboZhu
08377f37f3 Merge pull request #916 from huili2/dynamic_dec_au_size
enable dynamic AU size in decoder
2014-06-06 14:27:08 +08:00
Licai Guo
ba1716d846 remove unused argument pBlock 2014-06-03 06:36:07 -07: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
Martin Storsjö
1884c06652 Remove a redundant definition of WELSEMMS
The same definition already exists in asm_inc.asm.
2014-06-01 01:13:01 +03:00
ruil2
14e5d740cd clean up expand picture. 2014-05-30 11:05:31 +08:00
huili2
bed18c26c3 enable dynamic AU size in decoder 2014-05-29 18:15:16 -07:00
huili2
0adb3e1b9c remove macro NO_WAITING_AU for always on 2014-05-28 17:56:56 -07:00
huili2
20295c68fd expand the bs buffer size 2014-05-21 00:35:25 -07:00
huili2
7c6debbef6 add single function for new seq detection 2014-05-19 19:55:06 -07: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
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
huili2
eb1276013b clear active PS when only IDR meets 2014-05-12 22:02:39 -07:00
huili2
51c918f212 for PS error logic for EC 2014-05-09 01:12:08 -07:00
huili2
1839910bb0 fix order of new AU and new Seq 2014-05-07 17:56:31 -07:00
huili2
5ed24f216b astyle all files 2014-05-05 19:30:21 -07:00
huili2
5e6ef17412 fix new sequence&EC order, and prefix parse bug 2014-04-29 20:00:12 -07: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
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
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
huili2
0c544962d8 use new seq instead of I slice 2014-04-25 01:46:00 -07:00
huili2
c65d250817 fix bug of new seq check 2014-04-24 22:11:42 -07: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
huili2
314005435e enable the case for IDR loss 2014-04-23 23:13:12 -07:00
Licai Guo
bada2d35bf fix bNewSeqBegin logic 2014-04-23 18:50:11 -07:00
Martin Storsjö
a842f14a3c Remove .orig files left over from running astyle 2014-04-23 09:24:23 +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
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
Licai Guo
97c65b396d refine Check AU boundary 2014-04-21 18:21:07 -07: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
7d99aa4e22 Merge pull request #713 from licaiguo/overwriteactivesps
overwriteactivesps
2014-04-18 13:16:18 +08:00
Licai Guo
79ed744923 overwriteactivesps 2014-04-17 02:25:41 -07:00
huili2
bc2c4b0db0 add EC frame/slice copy. 2014-04-16 01:44:35 -07: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
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
Licai Guo
16cfb0a937 add track sps change for each layer 2014-04-14 00:17:44 -07: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
Martin Storsjö
3dcd458ffd Remove trailing whitespace in the source files 2014-04-08 18:13:23 +03:00
huili2
79c0cec248 add interface for error concealment, to be continued 2014-04-07 22:53:39 -07:00
Ethan Hugg
c644879cf9 Merge pull request #598 from varunbpatil/compiler_warnings
Remove compiler warnings
2014-04-01 10:57:19 -07:00
Licai Guo
9ac1cd0a17 add layer sps/pps to decoder context 2014-03-30 18:50:34 -07:00
Varun B Patil
6663743f4c Remove compiler warnings 2014-03-30 15:13:29 +05:30
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
wayne liu
06c534d9f2 rephrase blockzero function complexity and remove useless functions 2014-03-19 23:43:55 -07:00
Licai Guo
a688f5278a fix most of the warnings 2014-03-19 01:16:08 -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ö
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
huili2
090e8cc1ed modify WELS_CLIP1 to be inline functions 2014-03-18 01:54:25 -07: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
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
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ö
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
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
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ö
ce8da27287 Format x86 assembly constants in a yasm compatible manner
This is similar to what was done in a6463be0cc - yasm requires
these constants to have a zero after $.
2014-03-15 14:38:28 +02:00
huili2
b1f596fd69 remove BASE_MB related code 2014-03-14 02:03:41 -07:00
Licai Guo
f589c580eb clean redundant checks in decoder 2014-03-13 23:56:54 -07:00
Licai Guo
8492aac917 Merge pull request #486 from huili2/nzc_bug_fix
nzc bug fix and clear
2014-03-14 13:11:45 +08:00
huili2
734e60aeeb add according to review opinion 2014-03-13 20:21:10 -07:00
Licai Guo
5bffb627d6 nzc bug fix and clear 2014-03-13 19:31:28 -07: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
Licai Guo
731a1466e6 Merge pull request #469 from huili2/svc_sh_bug_fix
modify and correct SVC slice header parse
2014-03-10 22:09:44 +08:00
Licai Guo
091315f84c modify and correct SVC slice header parse 2014-03-10 02:37:41 -07:00
Licai Guo
4cc059bf5b Merge pull request #461 from mstorsjo/fix-asm-comments
Remove unnecessary/stray keywords in function signature comments in x86 assembly
2014-03-10 12:29:22 +08:00
Licai Guo
b2dafa5a92 fix WELS_READ_VERIFY 2014-03-09 18:12:53 -07:00
Martin Storsjö
8d6b368a1c Remove unnecessary stray __cdecl annotations in function signature comments in x86 assembly 2014-03-09 19:18:02 +02:00
Ethan Hugg
09b45e3ef9 Merge pull request #440 from licaiguo/refine-pps-sps
Refine pps sps
2014-03-07 11:02:02 -08:00
Licai Guo
8ad9e0b60d use temp buffer to store new arrived PPS/SPS 2014-03-06 22:05:12 -08:00
Licai Guo
8a3518f7be set bAuReadyFlag to true when we meet a PPS 2014-03-06 21:50:31 -08:00
Licai Guo
71467f948a mv mc_neon.S to common,add MC arm code to encoder 2014-03-07 12:18:58 +08: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
Licai Guo
201ab42d7e Merge pull request #431 from huili2/large_to_small_sps_bug
Large to small sps bug for issue #373
2014-03-06 16:51:59 +08:00
volvet
8cc332dea1 Merge pull request #432 from zhilwang/arm-asm
Arm asm
2014-03-06 16:50:56 +08:00
Licai Guo
8a7a9195d9 remove unused function 2014-03-05 23:14:57 -08:00
Licai Guo
4260a9b2ba remove CS and RS syntaxs for issue 373 2014-03-05 22:59:27 -08:00
Licai Guo
e7cc8c2780 Add arm asm code for processing. 2014-03-05 16:54:05 +08:00
Licai Guo
9e4ab64c73 move iTotalNumMbRec from refpic to ctx 2014-03-04 19:23:15 -08:00
Licai Guo
248f324c62 Add intra predictor arm asm code. 2014-03-05 10:25:15 +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
volvet
4d729c9418 get cpu cores for android 2014-03-04 15:50:41 +08:00
Martin Storsjö
03e0dcd814 Convert the arm assembly sources to unix newlines 2014-03-04 08:42:28 +02:00
volvet
d9a02d27f2 remove execute attribute of the arm asm files 2014-03-04 11:45:10 +08:00
volvet
f8b0cec68d Merge pull request #387 from zhilwang/arm-asm
Arm asm
2014-03-04 11:08:17 +08:00
Licai Guo
cdeb6449c6 remove unused declarations in as264_common.h 2014-03-03 17:42:47 -08:00
Licai Guo
83d0791163 Modify function name according latest cisco master 2014-03-04 09:18:18 +08:00
Licai Guo
7768cd0a98 Modify code style, remove trailing space. 2014-03-03 15:42:01 +08:00
Licai Guo
ba312b0b20 add checks for spsid and ppsid 2014-03-02 17:09:23 -08:00
volvet
33017fa722 Merge pull request #368 from huili2/sps_buffer_modif
modify SPS, PPS buffer management and remove a build warning
2014-02-28 17:41:46 +08:00
Licai Guo
b7a25df13f Remove deblocking arm asm code to common folder, add cpu detect for arm, clean some code. 2014-02-28 17:08:24 +08:00
Licai Guo
e4b6fc3f9a modify SPS, PPS buffer management and remove a build warning 2014-02-27 22:28:16 -08:00
Licai Guo
0fd9db2878 Add ARM 32bit asm code for decoder. 2014-02-28 13:36:34 +08:00
Licai Guo
e902f0fea4 refine rpl 2014-02-27 21:04:31 -08:00
Licai Guo
573b02797b Merge pull request #363 from huili2/remove_store_base
remove unused codes in reference picture management
2014-02-27 12:39:23 +08:00
Licai Guo
5303eaaeb9 remove store_ref_base_pic_flag related codes in reference picture management 2014-02-26 20:00:32 -08:00
Martin Storsjö
e239d9fddc Fix a typo in a function pointer name 2014-02-26 21:26:54 +02:00
Licai Guo
a9fd78f1e2 add a check to parseSliceHeaderSyntaxes 2014-02-25 00:47:12 -08:00
Licai Guo
3c29c92133 Merge pull request #347 from huili2/active_sps_ref_size
use active SPS parameters instead of other SPS.
2014-02-24 17:03:25 +08:00
huili2
ab6931496b Merge pull request #345 from licaiguo/fix-int-conversion-warning
fix int conversion warning, using LD32/ST32
2014-02-24 17:02:35 +08:00
Licai Guo
2983c92e1c use active SPS parameters instead of other SPS. 2014-02-24 00:52:17 -08:00
Licai Guo
d78f8c7ed8 fix int conversion warning, using LD32/ST32 2014-02-24 00:27:33 -08:00
Licai Guo
b7bee7af0a refine level check 2014-02-24 00:09:40 -08:00
Licai Guo
d5e0b99372 cast to uint32_t in GET_WORD to prevent possible left shift error. 2014-02-23 22:22:13 -08:00
Licai Guo
265741e922 update according to review comments 2014-02-23 18:26:28 -08:00
Licai Guo
fee0f14732 finish syntax checks in ParseSps 2014-02-21 00:16:42 -08:00
Licai Guo
4e0b8d4cbf refine checks in ParseSps 2014-02-20 19:25:11 -08:00
Licai Guo
d69b2faa9f fix the crash issues by changing the type iMbWidth & iMbHeight. 2014-02-19 23:06:35 -08:00
Licai Guo
46b9d5d0da Merge pull request #323 from huili2/check_bit_read
add safety check for bit-reading for headers
2014-02-20 14:17:07 +08:00
Licai Guo
a921bc6589 Merge pull request #320 from huili2/mb_residual_size_check
remain size to prevent MB residual reading overflow
2014-02-20 11:19:57 +08:00
Martin Storsjö
3532781556 Mark source parameters to MC functions as const 2014-02-19 10:19:56 +02:00
Martin Storsjö
ebb890e03e Declare static functions within the file they are used/defined in
It does not make sense to declare but not define static functions
in a header.
2014-02-19 09:51:25 +02:00
Licai Guo
a3c38b5631 add safety check for bit-reading for headers 2014-02-18 22:55:12 -08:00
huili2
0fcd066cde Merge pull request #298 from licaiguo/decoder-syntax-element-step1
add decoder syntax checks
2014-02-19 08:57:50 +08:00
Ethan Hugg
413b301e9c Merge pull request #303 from mstorsjo/simplify-decoder-api
Simplify the Initialize decoder method
2014-02-18 11:27:38 -08:00
Martin Storsjö
3b297ec866 Remove completely unused variables and private fields 2014-02-18 13:04:13 +02:00
Martin Storsjö
1075338b9b Use the actual struct type instead of a void pointer to the decoder Initialize method 2014-02-18 13:00:59 +02:00
Licai Guo
61b64190dd add decoder syntax checks 2014-02-17 23:57:12 -08:00
Licai Guo
d0a7f9b625 add refine mc.cpp on decoder
1. remove unecessary init
2. add static to constant function pointer array
2014-02-17 22:36:56 -08:00
Licai Guo
278597be2f Merge pull request #292 from huili2/level_prefix
fix level_prefix too large in residual decoding
2014-02-18 14:22:30 +08:00
Licai Guo
06d3ed8ddc Merge pull request #294 from huili2/neg_left_shift
negative data with left shift, use cast or multiplication instead
2014-02-18 14:21:44 +08:00
Licai Guo
f5d086eba1 merge the calculate 2014-02-17 22:16:51 -08:00
Licai Guo
a810408cdc negative data with left shift, use cast or multiplication instead 2014-02-17 19:13:41 -08:00
Licai Guo
7bace8406e remain size to prvent MB residual reading overflow 2014-02-17 00:47:41 -08:00
Licai Guo
0d1deb578e fix level_prefix too large in residual decoding 2014-02-13 22:51:45 -08:00
Martin Storsjö
55d7491f3d Remove stub interfaces for hw decoding
There is no implementation available for actually doing decoding
in HW.
2014-02-13 14:21:38 +02:00
Ethan Hugg
8b8e0d4b3e Merge pull request #274 from mstorsjo/typedef-cleanup
Remove typedefs for standard C++ types
2014-02-10 10:46:12 -08:00
Ethan Hugg
1e549e6f9a Merge pull request #271 from mstorsjo/merge-asm-headers
Merge declarations of shared asm functions into the comon library
2014-02-10 10:40:34 -08:00
Ethan Hugg
007f5ba773 Merge pull request #258 from mstorsjo/endian-cleanup
Avoid endian-specific code
2014-02-10 10:36:05 -08:00
Martin Storsjö
80862eec77 Use the C++ constants true/false instead of defining our own
TRUE/FALSE has intentionally been left in use for the few
platform specific APIs that define these constants themselves
and expect them to be used, for consistency.
2014-02-10 08:06:37 +02:00
Martin Storsjö
f2bd22acd5 Use char instead of str_t 2014-02-10 08:06:37 +02:00