- 31 Aug, 2015 1 commit
-
-
Johann authored
Change-Id: I2e387a06484a06301f3cd6600c4ba2f4335b61ee
-
- 27 Aug, 2015 1 commit
-
-
James Zern authored
prevents redeclaration warnings; vp8 has its own define which will be resolved in a future commit Change-Id: Ic941fef3dd4262fcdce48b73075fe6b375f11c9c
-
- 06 Aug, 2015 1 commit
-
-
Jingning Han authored
Change-Id: I83ed3422f1f4009675ad2f5c4b7236bc7b83b30e
-
- 21 Jul, 2015 1 commit
-
-
Yaowu Xu authored
Replace vp9_ in names to vpx_ as they are not codec specific. Change-Id: I2e583aa63dee769353ada4b42417aa15c4074ebb
-
- 17 Jul, 2015 1 commit
-
-
Yaowu Xu authored
Change-Id: Ib1cb1fbe92a39ff5312cee069559be6d3ea458d0
-
- 09 Jul, 2015 1 commit
-
-
Scott LaVarnway authored
Also some log2 lookups. Pass in 8x8 block width/height and log2 num4x4s instead. Change-Id: I8ea9a1ec1e0bbab23f8ba556954a1b5433f4d613
-
- 07 Jul, 2015 1 commit
-
-
James Zern authored
inline the code directly in read_mv_component(), the only place where it was being used; this removes a function call in a hot function Change-Id: I66f99c0c9ce3bc310101dbca4a470f023cc6fb55
-
- 22 Jun, 2015 1 commit
-
-
Scott LaVarnway authored
and added to MACROBLOCKD. Change-Id: I0e60aaa9f84bcc9f2376d71bd934f251baee38db
-
- 16 Jun, 2015 2 commits
-
-
James Zern authored
+ drop 'vp9_' prefix Change-Id: If3f3ec32d03026af78b8fcd82749e587a3f43059
-
James Zern authored
+ drop 'vp9_' prefix Change-Id: Id5a3c8d416dbdf93d9f4f1bde662f7b2c2290168
-
- 11 Jun, 2015 2 commits
-
-
Scott LaVarnway authored
and change name. Change-Id: I706645cf9d9dc04f1b3b6ac80df80edb7f101854
-
Scott LaVarnway authored
and changed name. Change-Id: Ie023ca66cc2c823032f58d4faeb53fd1863c94f3
-
- 08 Jun, 2015 1 commit
-
-
Scott LaVarnway authored
Added check to see if last frame was all intra. This will eliminate two checks in find_mv_refs_idx(). Also, do not update the frame mvs if the current frame is all intra. This improved performance on material with frequent intra-only frames. Change-Id: I44a4042c3670ab0d38439d565062a0e2a1ba9d1e
-
- 04 Jun, 2015 1 commit
-
-
Scott LaVarnway authored
Reduced size from 124 bytes to 104 bytes. For decode only builds, it is reduced to 68 bytes. Change-Id: If9e6b92285459425fa086ab5a743d0a598a69de3
-
- 02 Jun, 2015 1 commit
-
-
Scott LaVarnway authored
Moved to MACROBLOCKD. Change-Id: Icce765b334f2755f4fe2a4c39fb2ae2d7660d004
-
- 01 May, 2015 1 commit
-
-
Scott LaVarnway authored
Should be using xd->above_mi and xd->left_mi. Change-Id: Ifab83512db5491a955a3ed44a2d6e3b25b5ae5a5
-
- 21 Apr, 2015 1 commit
-
-
Scott LaVarnway authored
(see I3a05cf1610679fed26e0b2eadd315a9ae91afdd6) For the test clip used, the decoder performance improved by ~2%. This is also an intermediate step towards adding back the mode_info streams. Change-Id: Idddc4a3f46e4180fbebddc156c4bbf177d5c2e0d
-
- 09 Mar, 2015 1 commit
-
-
Frank Galligan authored
Change-Id: I56b0614154408e8ec613784b2007374df00fbf17
-
- 06 Mar, 2015 1 commit
-
-
hkuang authored
Change-Id: Iddf098e1bae9c10fc2f325f84156f50a0bd0055a
-
- 03 Feb, 2015 1 commit
-
-
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
-
- 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
-
- 23 Jan, 2015 1 commit
-
- 19 Dec, 2014 1 commit
-
-
James Zern authored
this avoids longjmp'ing from another thread on error which will cause undesired behavior Change-Id: Ic9074ed8cc4243944bf2539d6e482f213f4e8c86
-
- 04 Dec, 2014 1 commit
-
-
hkuang authored
No more checking of corrupted reference frame as we skip decoding any non-intra frame in case of frame corrupted. Change-Id: I77d41bbb02fc5f61972740e2d411441eb6a17073
-
- 05 Nov, 2014 1 commit
-
-
Hui Su authored
Change-Id: Ia2b2a895deefaaf7b34bf26df86add56dbab082c
-
- 01 Nov, 2014 1 commit
-
-
hkuang authored
This will save a lot of memory for decoder due to removing of prev_mi, but prev_mi is still needed in encoder. So this will increase a little bit memory for encoder. Change-Id: I24b2f1a423ebffa55a9bd2fcee1077dac995b2ed
-
- 22 Oct, 2014 2 commits
-
-
Yunqing Wang authored
This patch allocated frame contexts outside VP9_COMMON. This allows multiple threads to share the same copy of frame contexts, and reduces the overhead. It also guarantees the correct update of these contexts during bitstream packing. This patch doesn't change encoding result. Change-Id: Ic181a2460b891d1d587278a6d02d8057b9dbd353
-
Hangyu Kuang authored
Using 4 threads, frame parallel decode is ~3x faster than single thread decode and around 30% faster than tile parallel decode for frame parallel encoded video on both Android and desktop with 4 threads. Decode speed is scalable to threads too which means decode could be even faster with more threads. Change-Id: Ia0a549aaa3e83b5a17b31d8299aa496ea4f21e3e
-
- 10 Oct, 2014 1 commit
-
-
hkuang authored
Change-Id: I5e79c276d8953ae17cd35b2846e6e40660c037c3
-
- 09 Oct, 2014 2 commits
- 20 Sep, 2014 1 commit
-
-
hkuang authored
mi_grid_* are arrays of pointer to pointer. They save the pointers that point to the MIs in cm->mi. But they are unnecessary and complicated. The original goal was to remove MODE_INFO_t copy. But with an extra MODE_INFO_t pointer inside MODE_INFO_t, same goal could be achieved. This commit totally removes the mi_grid_* structures. But there are still many dummy MODE_INFO_t inside cm->mi which are a waste of memory. Next commit will do on-demand MODE_INFO_t allocation in order to save these memories. Change-Id: I3a05cf1610679fed26e0b2eadd315a9ae91afdd6
-
- 28 Jul, 2014 1 commit
-
-
hkuang authored
The original implementation only allocates one segmentation map and this works fine for serial decode. But for frame parallel decode, each thread need to have its own segmentation map and the last frame segmentation map should be provided from last frame decoding thread. After finishing decoding a frame, thread need to serve the old segmentation map that associate with the previous decoded frame. The thread also need to use another segmentation map for decoding the current frame. Change-Id: I442ddff36b5de9cb8a7eb59e225744c78f4492d8
-
- 24 Jul, 2014 1 commit
-
-
Yaowu Xu authored
A previous change, https://gerrit.chromium.org/gerrit/#/c/70632, introduced a size validation for reference frames to insuare the input stream is a valid VP9 stream. However, the logic requiring all reference frames have valid size turned out to be too strict. In this commit, we modify the validation to require one of the reference frame has valid dimension. In addition, the decoder reports error whenever it detects the use of reference frame with invalid scalig ratio. Change-Id: If8efc312244087556cfe00f1fcbdff811268ebad
-
- 23 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Actually, it would be great to have two separate enums INTRA_MODES and INTER_MODES in future. Change-Id: I6c4147cf0002853da9c1e03fe9514eab876f01c8
-
- 02 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Renames: mi_8x8 -> mi mode_info_stride -> mi_stride Change-Id: I66f3e5fd1e7b7f46f108af5bb711c5fd9493c1be
-
- 21 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ie224e968589bdb0774dc112e6f6df56cc0447465
-
- 18 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ia561dda53f2dd10e3a10a2df2adb8027ab19397a
-
- 12 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Reimplementing sub8x8-reading of intra block modes in read_intra_frame_mode_info() and read_intra_block_mode_info(). Code looks more readable as well. Change-Id: Ia42fc7d0dad708bc0c7a8bff1f8b37809b843f40
-
- 10 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ied12b39c55667b26fd3bf90eb331e601c53a10f6
-