summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Hide global symbols for macho32/64m31-baselineYunqing Wang2013-10-301-0/+4
| | | | | | | Added hiding global symbols for macho32 and macho64 in x86inc.asm. This was done to fix exported symbol issue in Chrome build. Change-Id: I08d5c559b985b82f655b537469fee125615e78c0
* Correct handling of show_bit in uncompressed header.Dmitry Kovalev2013-10-291-7/+5
| | | | | | | | "keyframe" variable in the current code actually means that previous frame is a keyframe because cm->frame_type has not been initialized in read_uncompressed_header. Change-Id: I5645b0816c70abdef5dfc70113018d06276dac77
* changed to comply with strict aliasing ruleYaowu Xu2013-10-291-2/+2
| | | | | | | | | The clamp operation may not affect the values of the final assigned mv where compiler may make use of strict aliasing rule to optimize out the clamp operation. This change made the code segments to better comply the strict aliasing rule. Change-Id: I24502ff18bd4f9e62507a879cc8760a91a0fd07e
* Converted assert to error checkingYaowu Xu2013-10-291-11/+17
| | | | Change-Id: Icb8c677f910f588cc7c97e70f024787fe6789257
* Added checking for invalid sizeYaowu Xu2013-10-291-1/+3
| | | | Change-Id: I9672a61e60a26e2934796f088880ce4cb49605be
* Converted assertion to returning errorYaowu Xu2013-10-291-1/+5
| | | | | | | Assertion happens for invalid input data, the commit replace the assertion with returning error. Change-Id: I1b73ae752d64882d984cd23936efe75a757c2b41
* Added trap for invalid key frameYaowu Xu2013-10-291-3/+9
| | | | Change-Id: I698e8df9b336d38bffe01e656acba00d4003695f
* Prevent access to invalid pointerYaowu Xu2013-10-291-2/+4
| | | | | | | The commit added check to make sure no invalid memory access even when the decoder instance is never initialized. Change-Id: I4da343d0b3c78c27777ac7f5ce7688562c69f0c5
* Add clamp to prevent out of bound accessYaowu Xu2013-10-291-5/+4
| | | | | | | For bad input data, the decoder may access the array out of bounds. The commit added clamp to prevent such out of bound access Change-Id: I0a1cfd9b8786ea7113a998053c76605c963b077a
* Adding assign_mv() function to reduce code duplication.Dmitry Kovalev2013-10-281-72/+48
| | | | Change-Id: I2b4e5b842c19f64749b18946ad215c0caa57e7b7
* Reading diff update flag inside vp9_diff_update_prob.Dmitry Kovalev2013-10-284-32/+23
| | | | Change-Id: I5ae659c1bfb132428a7272d094b5287d144ec7c8
* BITSTREAM - "update_map" SEMANTICS BROKEN IN ↵Dmitry Kovalev2013-10-282-15/+28
| | | | | | | | | 398ddafb629b7f49cf255bf09d3e38b4abd0bb95 This patch reverts old commit 398ddafb629b7f49cf255bf09d3e38b4abd0bb95 "New way of updating last frame segmentation map.". Change-Id: Iba730f433c30ed7f5e5449d6768049cbf9a2b2c5
* BITSTREAM - RESTORING BILINEAR INTERPOLATION FILTER SUPPORTDmitry Kovalev2013-10-285-3/+8
| | | | | | Adding appropriate test vector vp90-2-06-bilinear.webm. Change-Id: Ia3bbf57318e0cc61a1b724fe751e3f9c7e11b337
* BITSTREAM - CLARIFICATION OF MV SIZE RANGEJingning Han2013-10-282-1/+17
| | | | | | | | The codec should effectively run with motion vector of range (-2048, 2047) in full pixels, for sequences of 1080p and below. Add assertions to clarify this behavior. Change-Id: Ia0cac28249f587d8f8882205228fa480263ab313
* Adding read_intra_mode_{y, uv} functions for clarity.Dmitry Kovalev2013-10-281-10/+21
| | | | Change-Id: I92fd32476c472e54f52b8d7602a98262b25e6eaf
* fix build with MSVCYaowu Xu2013-10-281-9/+11
| | | | | | near is a key word, changed to use nearmv instead. Change-Id: Ib54438c431b2b2521a62fc7b61a9c127dd7bc01e
* Using array of motion vectors instead of separate variables.Dmitry Kovalev2013-10-281-31/+27
| | | | Change-Id: I7380a089105f658257bbb3e30a525da168e76952
* New way of updating last frame segmentation map.Dmitry Kovalev2013-10-282-28/+15
| | | | | | | Implementing more natural (and faster) way of updating last frame segmentation map. Change-Id: I9fefa8f78e77bd7948133b04173da45edc15a17e
* Remove redundant mode update in sub8x8 decodingJingning Han2013-10-281-2/+3
| | | | | | | | | | | | | | The probability model used to code prediction mode is conditioned on the immediate above and left 8x8 blocks' prediction modes. When the above/left block is coded in sub8x8 mode, we use the prediction mode of the bottom-right sub8x8 block as the reference to generate the context. This commit moves the update of mbmi.mode out of the sub8x8 decoding loop, hence removing redundant update steps and keeping the bottom- right block's mode for the decoding process of next blocks. Change-Id: I1e8d749684d201c1a1151697621efa5d569218b6
* Merge "Fix x86inc.asm to build PIC code correctly"Yunqing Wang2013-09-183-35/+137
|\
| * Fix x86inc.asm to build PIC code correctlyYunqing Wang2013-09-183-35/+137
| | | | | | | | | | | | | | | | | | | | | | | | Current x86inc.asm didn't handle 32bit PIC build properly. TEXTRELs were seen in the library built. The PIC macros from libvpx's x86_abi_support.asm was used to fix this problem. The assembly code was modified to use the macros. Notes: We need this fix in for decoder building. Functions in encoder will be fixed later. Change-Id: Ifa548d37b1d0bc7d0528db75009cc18cd5eb1838
* | Merge "Modified resize unit test to output test vector"Adrian Grange2013-09-185-12/+130
|\ \
| * | Modified resize unit test to output test vectorAdrian Grange2013-09-175-12/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | Modified the resize unit test so that it optionally writes the encoded bitstream to file. The macro WRITE_COMPRESSED_STREAM should be set to 1 to enable output of the test bitstream; it is set to 0 by default. Change-Id: I7d436b1942f935da97db6d84574a98d379f57fb1
* | | Merge "Silence a bunch of MSVC warnings"Yaowu Xu2013-09-175-17/+18
|\ \ \
| * | | Silence a bunch of MSVC warningsYaowu Xu2013-09-175-17/+18
| | |/ | |/| | | | | | | Change-Id: I16633269582a640809dca27572bbe99efa6369fc
* | | Clean up second ref check in sub8x8 rd loopJingning Han2013-09-171-17/+19
| |/ |/| | | | | | | | | | | This commit cleans up the second reference check in the rate-distortion optimization loop of sub8x8 blocks. Change-Id: Ife68feaa4cddbfad2878c9b44d3012788d634f97
* | Remove redundant argument in get_sub_block_mvJingning Han2013-09-171-6/+4
|/ | | | | | | The sub8x8 check can be directly inferred from block_idx, hence removed from the arguments if get_sub_block_mv. Change-Id: Ib766d57e81248fb92df0f6d9b163e6c77b933ccd
* Merge "Minor clean up."Paul Wilkins2013-09-172-30/+6
|\
| * Minor clean up.Paul Wilkins2013-09-162-30/+6
| | | | | | | | | | | | | | Removed some unused code and minor cleanup / reordering. Change-Id: I4083ae56aeb8edfe9b85aa2f42a16aa28d19da94
* | Merge "Adjustment to mode_skip_start."Paul Wilkins2013-09-171-4/+4
|\ \ | |/
| * Adjustment to mode_skip_start.Paul Wilkins2013-09-161-4/+4
| | | | | | | | | | | | Corrected values relating to modified mode order. Change-Id: I24fccba3af4bc16721d5e7e51888a66305bfa7fe
* | Merge "Fix failure to copy data files if content changes"Adrian Grange2013-09-161-1/+1
|\ \
| * | Fix failure to copy data files if content changesAdrian Grange2013-09-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Jenkins was failing to detect the case where an existing file is recreated with new content. In this case, thinking that the file already existed, Jenkins did not re-copy the file as it should have. By adding the file test-data.sha1 as a dependendency to the LIBVPX_TEST_DATA build target the files will be recopied if the MD5 of an existing file changes. This could be further improved to only copy files that have changed rather than copying the whole set as done in this patch. (Thanks to jzern@ who diagnozed ithe problem and suggested this fix). Change-Id: Icea7c61a95189bc639fec83020c28c70da5b2b41
* | | Merge "Speed up iht8x8 by rearranging instructions. Speed improves from 282% ↵hkuang2013-09-161-82/+82
|\ \ \ | | | | | | | | | | | | to 302% faster based on assembly-perf."
| * | | Speed up iht8x8 by rearranging instructions.hkuang2013-09-161-82/+82
| | |/ | |/| | | | | | | | | | | | | Speed improves from 282% to 302% faster based on assembly-perf. Change-Id: I08c5c1a542d43361611198f750b725e4303d19e2
* | | fix a problem where an invalid mv used in searchYaowu Xu2013-09-162-1/+4
|/ / | | | | | | | | | | | | | | | | | | The commit added reset of pred_mv at the beginning of each SB64x64 partition mv search, also limited the usage of pred_mv only when search on the largest partition is already done. This is to fix a crash at speed 1/2 encoder where an invalid mv is used in mv search. Change-Id: I39010177da76d054e3c90b7899a44feb2e3a5b1b
* | Merge "Revert "Improved 8t filters""James Zern2013-09-133-446/+24
|\ \
| * | Revert "Improved 8t filters"James Zern2013-09-133-446/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is incompatible with most toolchains other than gcc. Revert "Deleted #include <inttypes.h>" This reverts commit 4d018be950ef8b056a7c797a22ee58012443df26. This reverts commit d22a504d11a15dc3eab666859db0046b5a7d75c5. Change-Id: I1751dc6831f4395ee064e6748281418e967e1dcf
* | | Merge "Minor adjustment in unit tests"Yaowu Xu2013-09-132-2/+2
|\ \ \ | |/ / |/| |
| * | Minor adjustment in unit testsYaowu Xu2013-09-132-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The CpuSpeedTest is extended to cover 2pass good quality with CpuUsed from 0 to 4. The BordersTest is changed to use CpuUsed 1 for faster turn around. Change-Id: I005e89adee7fe63af4b1f2a76a3a13ea826feadf
* | | Merge "Adaptive motion search control"Jingning Han2013-09-135-18/+66
|\ \ \
| * | | Adaptive motion search controlJingning Han2013-09-135-18/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit enables adaptive constraint on motion search range for smaller partitions, given the motion vectors of collocated larger partition as a candidate initial search point. It makes speed 0 runtime of bus at CIF and 2000 kbps goes from 167s down to 162s (3% speed-up), at 0.01dB performance gains. In the settings of speed 1, this makes the runtime goes from 33687 ms to 32142 ms (4.5% speed-up), at 0.03dB performance gains. Compression performance wise, it gains at speed 1: derf 0.118% yt 0.237% hd 0.203% stdhd 0.438% Change-Id: Ic8b34c67810d9504a9579bef2825d3fa54b69454
* | | | Merge "Clean up of the search best filter speed feature"Deb Mukherjee2013-09-132-91/+1
|\ \ \ \ | |/ / / |/| | |
| * | | Clean up of the search best filter speed featureDeb Mukherjee2013-09-112-91/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes this speed feature since it is very slow and unlikely to be used in practice. This cleanup removes a bunch of unnecessary complications in the outer encode loop. Change-Id: I3c66ef1ca924fbfad7dadff297c9e7f652d308a1
* | | | Merge "Fix VP9_mode_order[]"Paul Wilkins2013-09-131-0/+2
|\ \ \ \ | |_|/ / |/| | |
| * | | Fix VP9_mode_order[]Paul Wilkins2013-09-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mis-merge of the following change managed to break mode order and delete two mode options (new alt ref and near alt ref) It also created a situation where we could test two undefined modes off the end of the VP9_mode_order[] data structure. "clang warnings : remove split and i4x4_pred fake modes" "Change Id: I8ef3c*" Initial testing on Akiyo at speed 2. 101.35 44.567 44.447 improves to 96.82 44.915 44.815 Approx 0.3-0.4db gain and 2.5% size reduction Change-Id: Icff813e7c0778d140ad4f0eea18cf1ed203c4e34
* | | | Merge "New mode_info_context storage -- undo revert"Scott LaVarnway2013-09-1331-520/+580
|\ \ \ \ | |/ / / |/| | |
| * | | New mode_info_context storage -- undo revertScott LaVarnway2013-09-1131-520/+580
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of pointers to MODE_INFO structs. The MODE_INFO structs are now stored as a stream (decoder only), eliminating unnecessary copies and is a little more cache friendly. Change-Id: I031d376284c6eb98a38ad5595b797f048a6cfc0d
* | | | Merge "Deleted #include <inttypes.h>"Paul Wilkins2013-09-131-1/+0
|\ \ \ \
| * | | | Deleted #include <inttypes.h>Paul Wilkins2013-09-121-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This seems not to be needed and is not supported in the Windows build. Change-Id: Iaca3bbf8cca283aee6bc336cb31ba9dd4610322b