Sindre Aamås
b6c4a5447c
[Decoder/x86] IDCT one block at a time with SSE2
...
At lower bitrates, it is overall faster to conditionally do one block
at a time with SSE2 on Haswell and likely other common architectures.
At higher bitrates, it is faster to use the wider routine that IDCTs
four blocks at a time. To avoid potential performance regressions
as compared to MMX, stick with single-block IDCTs with SSE2. There
is still a performance advantage as compared to MMX because the
single-block SSE2 routine is faster than the corresponding MMX
routine.
Stick with four blocks at a time with AVX2 for which that appears
to be consistently faster on Haswell.
2016-03-16 19:55:11 +01:00
Sindre Aamås
98042f1600
[Decoder] Use encoder x86 IDCT routines
...
Move asm routines to common. Delete obsolete decoder routines.
Use wider routines where applicable.
~1.07x overall faster decode on a quick 720p30 4Mbps test on Haswell.
2016-03-09 10:41:42 +01:00
Martin Storsjö
7f53c29302
Fix a return value check
...
In 9cb4f4e8e21af, the error code returned from CheckIntraNxNPredMode
was changed - therefore, these return value checks, that look
for a specific error code, need to be updated accordingly.
This fixes crashes in DecodeCrashTestAPI.DecoderCrashTest
with some seeds.
2016-03-03 10:15:34 +02:00
unknown
9cb4f4e8e2
modify return value check inside decoder
2016-02-26 16:29:35 +08:00
huili2
b2d4a95537
fix iAvgLumaQp in decStat
2015-12-11 14:14:42 +08:00
huili2
926fc67451
remove parseonly in decoder ctx
2015-11-27 08:56:20 +08:00
unknown
cc6b409f12
Add protection for emulation prevention bytes and profile_id
2015-11-25 11:48:07 +08:00
huili2
dc2cbe4a22
remove API data format in decoder in 1.6
2015-11-17 13:58:57 +08:00
Haibo Zhu
628befe8be
Revert "Merge pull request #2217 from huili2/simply_dec_ctx"
...
This reverts commit 27172bafd7ff2cc80b08768a32a23470f3d6d3fd, reversing
changes made to 24916a652ee5d3e36d931c222df20966f7c158fa.
2015-11-13 20:16:03 +08:00
huili2
777dbc09d4
remove bParseonly in ctx using that in param, and slightly modify the initialize process of decoder
2015-10-27 16:12:08 +08:00
Haibo Zhu
151c1d9ffd
Fix the macro UPPER_CHECK conditions
2015-10-19 18:12:53 -07:00
Haibo Zhu
9ba2c9825c
(1) add protection for golomb GetUe output value
...
(2) change the max length of cabac bypass to 16
2015-10-18 20:12:34 -07:00
HaiboZhu
fb61733b27
Merge pull request #2163 from HaiboZhu/Remove_cabac_shift_exponent_too_large
...
Remove the shift exponent too large warning
2015-10-16 21:16:56 +08:00
Haibo Zhu
f1d92ef363
Remove the shift exponent too large warning
2015-10-16 01:13:23 -07:00
huili2
4bafe1c430
prevent too many MMCO num overflow
2015-10-16 10:36:13 +08:00
Haibo Zhu
03d16bb4d1
Remove UBSAN warnings about negative left shift
2015-10-14 19:43:19 -07:00
huili2
042ac9aba1
decrease log output for decoder momery info
2015-10-12 10:53:33 +08:00
sijchen
b37cda2482
Merge pull request #2138 from HaiboZhu/Bugfix_SPS_update_logic_under_EC
...
Fix a SPS update logic bug under EC mode
2015-10-08 10:11:32 -07:00
Haibo Zhu
4ffdca6b06
Fix the SPS update logic bug under EC mode
2015-10-08 02:01:15 -07:00
Haibo Zhu
2cd3fc805d
Fix the 8x8 init bug under CAVCL when scalinglist enable
2015-10-07 19:49:37 -07:00
HaiboZhu
f9f2bbf805
Merge pull request #2127 from huili2/repos_DecoderConfigParam
...
move DecoderConfigParam into InitDecoder
2015-09-23 17:41:52 +08:00
huili2
ecab683f0f
move DecoderConfigParam into InitDecoder
2015-09-23 14:37:53 +08:00
unknown
868c8e45a1
Check the duplicate frame_num in short ref list
...
Add more judgement for return value in WelsMarkAsRef()
2015-09-21 21:31:59 -07:00
Martin Storsjö
c31e4e23f2
Fix indentation to consistently use spaces instead of tabs
...
Also get rid of other stray tabs in scripts.
2015-09-15 08:41:19 +03:00
Haibo Zhu
646f3e92de
Fix the bug that calculate mbAddr error when FMO enable
2015-08-27 23:46:47 -07:00
Haibo Zhu
27a9af0b09
Force reset decoder when out of memory error
2015-08-26 00:13:44 -07:00
Haibo Zhu
1173f879f1
Change the SParserBsInfo resolution to actual value
2015-08-24 14:37:32 +08:00
Haibo Zhu
5ebb64cc45
Add MAX_DPB_COUNT equals to MAX_REF_PIC_COUNT + 1 to set the size of RefList
...
Make the reorder search range sync with JM
2015-08-13 23:54:47 -07:00
HaiboZhu
2273624a6a
Merge pull request #2070 from HaiboZhu/Bugfix_Emulation_prevention_three_byte
...
Add protection about emulation_prevention_three_byte error bytes
2015-08-11 22:52:28 +08:00
Haibo Zhu
e90068c234
Add protection about emulation_prevention_three_byte error bytes
2015-08-11 12:56:09 +08:00
huili2
c45e08a984
prevent error RPLR number overflow case
2015-08-11 09:45:09 +08:00
huili2
6ba10ce6f3
Merge pull request #2065 from HaiboZhu/Bugfix_RPLR_logic
...
Fix the RPLR logic error when picNumLX <= refIdxLX
2015-08-07 17:30:08 +08:00
huili2
be2b7f196f
Merge pull request #2063 from HaiboZhu/Add_EC_memcpy_protection
...
Add protection for memcpy overlap
2015-08-05 11:09:06 +08:00
Haibo Zhu
6b4912c716
Add protection for memcpy overlap
2015-08-05 09:23:32 +08:00
Haibo Zhu
930161c6cc
Fix the RPLR logic error when picNumLX <= refIdxLX
2015-08-04 14:04:48 +08:00
Haibo Zhu
e621610776
Add default value for ChromaArrayType to avoid NO value
2015-08-04 11:11:06 +08:00
Haibo Zhu
bc8dfcd1f4
Fix the pps update logic error
2015-07-28 01:59:26 -07:00
huili2
0400792778
add slice_type check for num_ref_frame
2015-07-27 10:53:51 +08:00
huili2
091805b883
bugfix for T1 error decoder dealing
2015-07-23 11:04:23 +08:00
huili2
2c7857ab53
Merge pull request #2038 from HaiboZhu/Bugfix_disable_redundant_picture
...
[Decoder bug fix] Disable redundant picture to avoid the memory overflow
2015-07-17 10:46:03 +08:00
huili2
4ecdd071ff
Merge pull request #2035 from HaiboZhu/Bugfix_width_height_level_limit_check
...
Fix the bug that decoder not return when level limit occur
2015-07-17 10:45:03 +08:00
huili2
a0c9f02bde
Merge pull request #2034 from HaiboZhu/BugFix_CheckAccessUnitBoundaryExt
...
Fix logic errors in CheckAccessUnitBoundaryExt
2015-07-17 10:44:50 +08:00
Haibo Zhu
11c7bfa098
Disable redundant picture to avoid the memory overflow
2015-07-16 11:20:21 +08:00
Haibo Zhu
d48b8b49d0
Fix the bug that decoder not return when level limit occur
2015-07-14 15:58:45 +08:00
Haibo Zhu
663bd94038
Fix max slice group number judgement error in FMO
2015-07-14 15:45:40 +08:00
Haibo Zhu
70d08736dd
Fix logic errors in CheckAccessUnitBoundaryExt
2015-07-14 15:38:16 +08:00
huili2
3cb417f14a
add dec memory check
2015-06-16 14:17:12 +08:00
Martin Storsjö
78e0ec6130
Convert tabs to spaces before comments
2015-06-10 10:22:29 +03:00
Martin Storsjö
764793d74b
Remove tabs in struct and class definitions
2015-06-10 10:22:01 +03:00
Martin Storsjö
ca51ee0f44
Remove tabs where a simple space is just enough
2015-06-10 10:21:52 +03:00