- 04 Feb, 2015 8 commits
-
-
Jingning Han authored
-
Jingning Han authored
-
Jingning Han authored
-
Jingning Han authored
Change-Id: I8bfc80f4fffb0892e93d3326394a52d1ee3c0f37
-
Jingning Han authored
Reuse the yv12_mb array to fetch the buffer pointers/strides corresponding to the current reference frame. Change-Id: I5276b7494158b2cccef15213be2dc189e9036851
-
Jingning Han authored
This commit allows the encoder to account for additional chroma plane costs in the mode decision process, if the current block potentially contains significant color change. It improves the visual quality at very low bit-rates. The compression performance of dark720p is improved by 12.39% in speed 6. For jimred at 150 kbps, the PSNR of V component (red) increased by 0.2 dB, at the expense of about 5% increase in encoding time. Note that for sequences where the chroma components are fairly consistent, the encoding time increase is negligible. On average the rtc set compression performance is improved by 1.172% in PSNR and 1.920% in SSIM. Change-Id: Ia55b24ef23a25304f7ec9958fbf07fd6e658505c
-
Yunqing Wang authored
This patch continues the work to remove frame_parallel_decoding_mode requirement in VP9 multi-threaded tile decoder. In order to do that, the frame counts associated to each thread need to be accumulated together after the frame is decoded. Change-Id: Idba1a756cedfed3c154aef52ed82c8da3bbf9e0c
-
Johann authored
-
- 03 Feb, 2015 19 commits
-
-
Yaowu Xu authored
-
Johann authored
-
hkuang authored
-
Jim Bankoski authored
-
Johann authored
The original implementation had the following comment: // Ignore mv costing if mvsadcost is NULL However the current implementation does not allow for this. If x exists then nmvsadcost must not be null. This removes the only warning from -Wpointer-bool-conversion https://code.google.com/p/webm/issues/detail?id=894 Change-Id: I1a2cee340d7972d41e1bbbe1ec8dfbe917667085
-
Jingning Han authored
-
Johann authored
-
Jingning Han authored
Avoid the use of uninitialized second reference frame for fetching reference block. Change-Id: I9983a0daea829700b3270dc8bf2bcc6d6ea36652
-
Yunqing Wang authored
-
Yaowu Xu authored
-
Yaowu Xu authored
This resolves the encoder crashes on windows. Change-Id: I159d79014cf9279751e403936ce1f84482ae82da
-
Johann authored
-
Yunqing Wang authored
The current multi-threaded tile decoder requires that the videoes are encoded with frame_parallel_decoding_mode = 1. This requirement is not necessary, and is better to be removed. This patch includes the first part of the work. Change-Id: Ic7695fb3cfe13f9022582c9f0edd2aa6e2e36d28
-
Johann authored
In vp8_sub_pixel_variance8x8_neon the temp2 buffer is only initialized to kHeight8 * kWidth8. However, in the case that xoffset != 0 and yoffset == 0, var_filter_block2d_bil_w8 is called with output_width kHeight8PlusOne. Thanks to cmugurel for diagnosing and yulius for the patch. Change-Id: Ib71ffd96ffad963c92b8b7ca23f303942785b8e0 https://code.google.com/p/webrtc/issues/detail?id=4190
-
Johann authored
Apple ships version 0.98 of nasm through at least XCode 6. It is incompatible with the assembly in libvpx. https://code.google.com/p/webm/issues/detail?id=772 Change-Id: I33245a76f50a8224fe6fafa3cce9991f953fdcc8
-
Jim Bankoski authored
Remove loop filter skip at speed 7+ because of bad visual artifacts and up the postprocessing. Change-Id: Ibdd0bac71aaee232d2bb2e14462733c51517768d
-
Yaowu Xu authored
1. Adjusted the threshold for coef update computation based on counts of tx used, avoid coef update computation when count is low (<20) 2. Move sf->lpf_pick = LPF_PICK_MINIMAL_LPF to speed 8. Change-Id: I02b44309e40fcdbf135c7934ae067a3f42502d30
-
hkuang authored
-
hkuang authored
The merge did not merge the fix for issue #850. Change-Id: I0dc1377dbfcb9497fb01a13d4f78ac65bff5eb33
-
- 02 Feb, 2015 5 commits
-
-
Johann authored
-
Alex Converse authored
-
Johann authored
https://code.google.com/p/webm/issues/detail?id=906 Change-Id: I72841078ff81152d21d84ccf4d5548e757685a6d
-
Adrian Grange authored
-
Yaowu Xu authored
-
- 31 Jan, 2015 1 commit
-
-
hkuang authored
In frame parallel decode, libvpx decoder decodes several frames on all cpus in parallel fashion. If not being flushed, it will only return frame when all the cpus are busy. If getting flushed, it will return all the frames in the decoder. Compare with current serial decode mode in which libvpx decoder is idle between decode calls, libvpx decoder is busy between decode calls. Current frame parallel decode will only speed up the decoding for frame parallel encoded videos. For non frame parallel encoded videos, frame parallel decode is slower than serial decode due to lack of loopfilter worker thread. There are still some known issues that need to be addressed. For example: decode frame parallel videos with segmentation enabled is not right sometimes. * frame-parallel: Add error handling for frame parallel decode and unit test for that. Fix a bug in frame parallel decode and add a unit test for that. Add two test vectors to test frame parallel decode. Add key frame seeking to webmdec and webm_video_source. Implement frame parallel decode for VP9. Increase the thread test range to cover 5, 6, 7, 8 threads. Fix a bug in adding frame parallel unit test. Add VP9 frame-parallel unit test. Manually pick "Make the api behavior conform to api spec." from master branch. Move vp9_dec_build_inter_predictors_* to decoder folder. Add segmentation map array for current and last frame segmentation. Include the right header for VP9 worker thread. Move vp9_thread.* to common. ctrl_get_reference does not need user_priv. Seperate the frame buffers from VP9 encoder/decoder structure. Revert "Revert "Revert "Revert 3 patches from Hangyu to get Chrome to build:""" Conflicts: test/codec_factory.h test/decode_test_driver.cc test/decode_test_driver.h test/invalid_file_test.cc test/test-data.sha1 test/test.mk test/test_vectors.cc vp8/vp8_dx_iface.c vp9/common/vp9_alloccommon.c vp9/common/vp9_entropymode.c vp9/common/vp9_loopfilter_thread.c vp9/common/vp9_loopfilter_thread.h vp9/common/vp9_mvref_common.c vp9/common/vp9_onyxc_int.h vp9/common/vp9_reconinter.c vp9/decoder/vp9_decodeframe.c vp9/decoder/vp9_decodeframe.h vp9/decoder/vp9_decodemv.c vp9/decoder/vp9_decoder.c vp9/decoder/vp9_decoder.h vp9/encoder/vp9_encoder.c vp9/encoder/vp9_pickmode.c vp9/encoder/vp9_rdopt.c vp9/vp9_cx_iface.c vp9/vp9_dx_iface.c This reverts commit a18da976. Change-Id: I361442ffec1586d036ea2e0ee97ce4f077585f02
-
- 30 Jan, 2015 7 commits
-
-
James Zern authored
+ nearest for consistency near is a reserved word in windows builds so using it as a parameter name may cause build failures with some configurations Change-Id: Iddf1d4ecdb39843f14e95dbfd9dca55f07f81403
-
Jingning Han authored
-
James Zern authored
-
Johann authored
-
Adrian Grange authored
This fixes a crash if the firstpass file does not exist when doing a two-pass encode. Change-Id: I3a1a95d68d57125c63123d6208af7537f5a689a0
-
Yaowu Xu authored
1. move the check of search method of USE_TX_8X8 up one level to avoid operations of build_tree_distributions() 2. count tx used and avoid computaton for coef udpate when one size is not used at all. Change-Id: Ia3e54a2588aa531c41377a1bfaa64385d04a592c
-
Yunqing Wang authored
The previous patch "Fix issues in 32bit PIC enabled build" fixed the x86inc.asm for macho32. Now we can enable use_x86inc while building libvpx for 32bit pic enabled Darwin target, which makes the encoder a lot faster(>2X) in this case by turning on the existing optimizations. Change-Id: I5f5c7add428d73f50c935c48d0a70aed2b1eb7af
-