Age | Commit message (Collapse) | Author |
|
Adds a flag to disable features that would inhibit frame parallel
decoding. This includes backward adaptation and MV sorting based
on search in ref frame buffer.
Also includes some minor clean-ups.
Change-Id: I434846717a47b7bcb244b37ea670c5cdf776f14d
|
|
See https://codereview.chromium.org/11875006/
Change-Id: Ied2a17df2b3222635f84aef120eaa9feb53750d2
|
|
Incorportate vp9-preview changes by merging master branch into experimental.
Conflicts:
test/test.mk
vp9/common/vp9_filter.c
vp9/common/vp9_idctllm.c
vp9/common/vp9_invtrans.h
vp9/common/vp9_mbpitch.c
vp9/common/vp9_rtcd_defs.sh
vp9/common/vp9_systemdependent.h
vp9/common/vp9_type_aliases.h
vp9/common/x86/vp9_asm_stubs.c
vp9/common/x86/vp9_subpixel_mmx.asm
vp9/decoder/vp9_decodframe.c
vp9/decoder/vp9_dequantize.c
vp9/decoder/vp9_dequantize.h
vp9/decoder/vp9_onyxd_int.h
vp9/encoder/vp9_bitstream.c
vp9/encoder/vp9_encodeframe.c
vp9/encoder/vp9_rdopt.c
Change-Id: I17f51c3666d1b59cf1a699f87607cbc5d30a87c5
|
|
Use the proper seg/mode/ref filter offsets when selecting the
frame loop filter level for fast mode (pick_filter_level_fast).
Change-Id: I2473e2131c800ad19755cb6211ad735fecfe2ac0
|
|
Merge the vp9-preview branch into master.
Change-Id: If700b9054676f24bed9deb59050af546c1ca5296
|
|
Change-Id: If7822e6fcd0d3568b934032322b19ba3e401df26
|
|
The MAX_PSNR was used to assign a "psnr" number when the mse is close
to zero. The direct assignment is used to prevent divide by zero in
computation. Changing it from 60 to 100 to be consistent against what
is being done in VP9
Change-Id: I4854ffc4961e59d372ec8005a0d52ca46e3c4c1a
|
|
|
|
Change-Id: I9702f3e9ed664c2537e7874698c944620b07fff8
|
|
Change-Id: Ic9956ddf1c2ddffcf7be7fdfc23ad9a2426fc47a
WIP: Fixing unsafe threading in VP8 encoder.
|
|
|
|
WIP: Fixing unsafe threading in VP8 encoder.
Use the passed in macroblock instead of the macroblock located in
cpi.
Change-Id: I1bfa07de6ea463f2baeaae1bae5d950691bc4afc
|
|
Fixing unsafe threading in VP8 encoder.
Change-Id: Ibf4c89a2043654834747811bc11eb283de0bb830
|
|
Change-Id: I76fe20ade099573997404b8733cf7f79e82fb21e
WIP: Fixing unsafe threading in VP8 encoder.
|
|
The loopfilter thread from the previous frame can be running while
starting the current frame. cpi->Source will change during this time causing
the wrong data to be copied. The refresh_x_frame flags also change, which
will cause incorrect updates of the denoised buffers.
Change-Id: I7d982b4fcb40a0610801332aa85f3b792c64e4c3
|
|
|
|
The denoiser was writing to LAST_FRAME buffer. If LAST_FRAME isn't being
updated, the reference frame buffers were out of sync between the encoder and the
denoised raw buffers. This patch resolves the discrepancy by always writing to a work
buffer (INTRA_FRAME) and then copying from that buffer to any buffers that needs to
be updated.
Change-Id: I6dd855b9749978b542bc3d515914d5f16faf25df
|
|
Change-Id: I92d613e89c8f1174eca0789116120bfa20c25c28
|
|
Change-Id: I178352813d2b8702d081caf405de9dbad9af2cc3
|
|
Multi-threaded code was not updated to disable background
refresh for non base-layer frames at the time it was
disabled in the main C-code.
Change-Id: Id6cc376130b7def046942121cfd0526b4f0a71d4
|
|
Change-Id: I9f0ae635fb9a95c4aa1529c177ccb07e2b76970b
|
|
Refactor asm_offsets for vpx_scale.
Change-Id: I2db0eeb28c8e757bd033c6614a1e5319a1a204a5
|
|
and various unused members in VP8_COMP along with other
code cleanups.
Change-Id: I56c6c0a77a51f5ac5cbd6071017bcbfd2623b7df
|
|
Change-Id: Ifa78c0a953fab3e5dd7af0446924846c7022cd09
|
|
Change-Id: I9f0ae635fb9a95c4aa1529c177ccb07e2b76970b
|
|
Refactor asm_offsets for vpx_scale.
Change-Id: I2db0eeb28c8e757bd033c6614a1e5319a1a204a5
|
|
|
|
|
|
Change-Id: I32ed051c8b4d3e5afa4e13bb4e3b2ca5e922ff64
|
|
This reverts commit b72373de79800e801ce730d24cb115daf78ae660.
Change-Id: Ic1601160e11df1a018ef12da25967cfb5eebd5ba
|
|
Don't use the switch to gf_rate_correction factor when
temporal layers is used (i.e., cpi->oxcf.number_of_layers > 1).
In temporal layers, we prefer to avoid this as any frame
(e.g., base layer frame at anchor of pattern) may update
both last and golden (and possibly alt-ref), and so we would get
different rate correction factors within the same layer.
This change will make sure one rate correction factor exists for each layer.
Also, made some other code in qp-regulate that depends on
alt/golden update specific to the 1 layer case.
Change-Id: I41a6d085bd477f9307ef3b3c311695214273892c
|
|
|
|
More cleanup to do after this, but this is a good chunk of removing rtcd.
Change-Id: I551db75e341a0a85c3ad650df1e9a60dc305681a
|
|
|
|
Change-Id: Ia8f6b6c2a9ed60bee7949dd06fcc18b392e91d76
|
|
xmm[6-11] should be saved and restored for Windows x64; prevents an
encoder mismatch and some datarate issues.
Change-Id: I03c38eb18ec20c6c441cae19416393058baad1ee
|
|
xmm6/xmm7 should be saved and restored for Windows x64; prevents an
encoder mismatch and some datarate issues.
Change-Id: Ifa1a82ab25fbdc5112d66f5332e14b16e69ac164
|
|
Change-Id: Ia8a59ce79045af209e49c68810bae44616422db5
|
|
Change-Id: Ib8f8a66c9fd31e508cdc9caa662192f38433aa3d
|
|
Rather than building an object file directory heirarchy matching the
source tree's layout, rename the object files so that the object
file name contains the path in the source file tree. The intent here
is to allow two files in different parts of the source tree to have
the same name and still not collide when put into an ar archive.
Change-Id: Id627737dc95ffc65b738501215f34a995148c5a2
|
|
|
|
Creates a merge between the master and experimental branches. Fixes a
number of conflicts in the build system to allow *either* VP8 or VP9
to be built. Specifically either:
$ configure --disable-vp9 $ configure --disable-vp8
--disable-unit-tests
VP9 still exports its symbols and files as VP8, so that will be
resolved in the next commit.
Unit tests are broken in VP9, but this isn't a new issue. They are
fixed upstream on origin/experimental as of this writing, but rebasing
this merge proved difficult, so will tackle that in a second merge
commit.
Change-Id: I2b7d852c18efd58d1ebc621b8041fe0260442c21
|
|
Should be MACROBLOCK, not MACROBLOCKD
Change-Id: I0353bbdf085a181ae2ac1f0b96849b38566e9f6a
|
|
Change-Id: I44e4e3869f231ae270cca98c9565f23c512e3ddf
|
|
|
|
Change-Id: I650a593162280ab40e71e527ec6518303e2d5723
|
|
So that, in case of error, the arrays are not filled with trash
pointers that are attempted a free() during vp8mt_de_alloc_temp_buffers()
Change-Id: Ic074549c2903a43316510eb42e4f393e7d3ee528
|
|
Not used.
Change-Id: I07ba929e3ff82b4b0c86f731769cdf5434c7a816
|
|
Change-Id: I28ac1519d1594801fef9a623cb64598d3d751eb0
|
|
Change-Id: Ie22841d096f3c86694b95bd06fc3a8ce1f032a10
|