Age | Commit message (Collapse) | Author |
|
This actually has no effect whatsoever, since the input MVs themselves
are clamped by clamp_mv_ref() already, which is significantly more
restrictive in its bounds.
Change-Id: I4a3a7b2b121ee422c56428c2a12d930c3813c06e
|
|
|
|
|
|
See issue 1042. Should provide slight bitstream savings in most cases
where tiles are being used.
Change-Id: Ie2808cf8ef30b3efe50804396900c4d63a3fa026
|
|
|
|
Ports the changes in
https://chromium-review.googlesource.com/#/c/302372/3
into vp10.
Change-Id: I334c409f693691227ad16fc703c91899592dd8dc
|
|
Change-Id: I5aeaa94b743f84738d288f8b027fec4c164f2ec3
|
|
This is more a proof of concept than anything else. The problem here
isn't so much how to code it, but rather where to place the resulting
code. All intrapred DSP code lives in vpx_dsp, so do we want the vp10
specific intra pred functions to live there, or in vp10/?
See issue 1015.
Change-Id: I675f7badcc8e18fd99a9553910ecf3ddf81f0a05
|
|
The name "display_*" (or "d_*") is used for non-compatible information
(that is, the cropped frame dimensions in pixels, as opposed to the
intended screen rendering surface size). Therefore, continuing to use
display_* would be confusing to end users. Instead, rename the field
to render_*, so that struct vpx_image can include it.
Change-Id: Iab8d2eae96492b71c4ea60c4bce8121cb2a1fe2d
|
|
In practice, this fixes the issue that if you have an odd number of
mi_cols, on the full right of the image, the UV int4x4 loopfilter
will be skipped over odd cols as well as odd rows (because it holds a
single variable for both edges).
See issue 1016.
Change-Id: Id53b501cbff9323a8239ed4775ae01fe91874b7e
|
|
This is preparatory work for allowing per-segment lossless coding.
See issue 1035.
Change-Id: I9487d02717ee3e766aee61a487780056bb35d2d3
|
|
Change-Id: Ib161e6fb3eb081f7176a1d969fed16a7d1ffc320
|
|
This means that we don't reconstruct in 4x4 dimensions, but in
blocksize dimensions, e.g. 4x8 or 8x4. This may in some cases lead
to performance improvements. Also, if we decide to re-introduce
scalable coding support, this would fix the fact that you need to
re-scale the MV halfway the block in sub8x8 non-4x4 blocks.
See issue 1013.
Change-Id: If39c890cad20dff96635720d8c75b910cafac495
|
|
In vp9, the bottom MV would be the average of the topright and
bottomleft luma MV (instead of the bottomleft/bottomright luma MV).
See issue 993.
Change-Id: Ic91c0b195950e7b32fc26c84c04788a09321e391
|
|
This has virtually no effect on coding efficiency, but it is more
logical from a theoretical perspective (since it makes no sense to
me that you would exclude a MV from a list just because it's sign-
inversed value is identical to a value already in a list), and it
also makes the code simpler (it removes a duplicate value check in
cases where signbias is equal between the two MVs being compared).
See issue 662.
Change-Id: I23e607c6de150b9f11d1372fb2868b813c322d37
|
|
The implicitly changed value would be used for contextualizing future
skip flags of neighbour blocks (bottom/right), which is certainly not
what was intended. The original code stems from vp8, and was useful
in cases where coding of the skip flag was disabled. In vp9, the skip
flag is always coded. The result of this change is that for bitstream
parsing purposes, decoding of the skip flag becomes independent of
decoding of block coefficients.
See issue 1014.
Change-Id: I8629e6abe76f7c1d649f28cd6fe22a675ce4a15d
|
|
In decoder, export (eventually) into vpx_image_t.range field. In
encoder, use oxcf->color_range to set it (same way as for
color_space).
See issue 1059.
Change-Id: Ieabbb2a785fa58cc4044bd54eee66f328f3906ce
|
|
|
|
|
|
* changes:
vp9_encoder_parms_get_to_decoder: cosmetics
vp9...parms_get_to_decoder: remove unneeded func
vp9...parms_get_to_decoder: fix EXPECT param order
vp9_encoder_parms_get_to_decoder: delete dead code
fix BitstreamParms test
vp9_encoder_parms_get_to_decoder: remove vp10
yuvconfig2image(): add explicit cast to avoid conv warning
vp9/10 decoder_init: add missing alloc cast
vp9/10: set color_space on preview frame
vp10: add extern "C" to headers
vp9: add extern "C" to headers
|
|
The counts didn't take usehp into account, which means that if the
scope of the refmv is too large for the hp bit to be coded, the value
(always 1) is still included in the stats. Therefore, the final
counts will not reflect the entropy of the coded bits, but rather the
entropy of the combination of coded bits and the implied value (which
is always 1). Fix that by only including counts if the hp bit is
actually coded.
See issue 1060.
Change-Id: I19a3adda4a8662a05f08a9e58d7e56ff979be11e
|
|
See issue 1030. The value of frame_parallel_decoding_mode was ignored
in vp9 if refresh_frame_context was 0, so instead make it a 3-member
enum where the dependency is obviously stated.
Change-Id: I37f0177e5759f54e2e6cc6217023d5681de92438
|
|
Keep the one in VP10_COMMON in favour of the one in VP10_DECODER.
Change-Id: Ia81983ccc95d83829dc815e28d9b1143e16e27b1
|
|
include vpx_dsp_rtcd.h to avoid implicit declaration of
vp10_highbd_fdct32x32_rd_c
Change-Id: I0b9ad50381a302750138deab14d2d5ac31f286ee
|
|
In vp9, [0] and [1] had identical meaning, so merge them into a
single value. Make it impossible to code RESET_FRAME_CONTEXT_NONE
for intra_only frames, since that is a non-sensical combination.
See issue 1030.
Change-Id: If450c74162d35ca63a9d279beaa53ff9cdd6612b
|
|
|
|
|
|
1) copy fw_txfm related files from vpx_dsp tp vp10
vpx_dsp/fwd_txfm.h → vp10/common/vp10_fwd_txfm.h
vpx_dsp/fwd_txfm.c → vp10/common/vp10_fwd_txfm.c
vpx_dsp/x86/fwd_dct32x32_impl_sse2.h → vp10/common/x86/vp10_fwd_dct32x32_impl_sse2.h
vpx_dsp/x86/fwd_txfm_sse2.c → vp10/common/x86/vp10_fwd_txfm_sse2.c
vpx_dsp/x86/fwd_txfm_impl_sse2.h → vp10/common/vp10_fwd_txfm_impl_sse2.h
Change-Id: Ie9428b2ab1ffeb28e17981bb8a142ebe204f3bba
|
|
1) copy following files from vpx_dsp/ to vp10/common/
vp10_inv_txfm.c
vp10_inv_txfm.h
vp10_inv_txfm_sse2.c
vp10_inv_txfm_sse2.h
2) change the function prefix "vpx_" to "vp10_" in above files
3) add unit test at vp10_inv_txfm_test.cc
Change-Id: I206f10f60c8b27d872c84b7482c3bb1d1cb4b913
|
|
Change-Id: Ie2e8b37fa01ce8d6b993684f431f3159d511cfb1
|
|
The fields are always coded in the frame itself, so there is never any
dependency on past frames. In practice, this fixes sign_bias being
ignored when error_resilient_mode=1.
See issue 1011.
Change-Id: I9d134ef6b445ced4d100fa735ce579855a0fa5af
|
|
Change-Id: I3dce6c702344a5cb5aaf9de1e4be44c53f9ce7e9
|
|
Change-Id: I2e387a06484a06301f3cd6600c4ba2f4335b61ee
|
|
prevents redeclaration warnings;
vp8 has its own define which will be resolved in a future commit
Change-Id: Ic941fef3dd4262fcdce48b73075fe6b375f11c9c
|
|
Change-Id: Ibc3b5cb3799f080808cf22ccb01d733e74ab4461
|
|
Prepare for adding more transform varieties (EXT_TX and TX_SKIP in nextgen).
Change-Id: I2dfe024f6be7a92078775917092ed62abc2e7d1e
|
|
|
|
This makes it easier to add new transform types and scan orders
to VP10 in the future.
Change-Id: I94874ddc9b19928d7820d57e94e2af04adf51efe
|
|
|
|
The macro MAX_REF_LF_DELTAS is repeatedly defined. Merge its use
cases with MAX_REF_FRAMES.
Change-Id: I71c4634fb5feae78ce6f9bf99074f45ed7f68b73
|
|
Define it as a function of reference frame types to provide
scalability for multiple reference frames.
Change-Id: I77b856c96916f352bc31004b9266b3f24e19bd0f
|
|
|
|
Change-Id: Iac85902cbbb3e752801dc85de9a3c778e47304aa
|
|
Change-Id: If5b5beb38c938bd7a6016dedc9bd0c8e06153d73
|
|
|
|
Change-Id: Ifddc68a8ab020f35a266ffc74429363301fe7d9e
|
|
|
|
|
|
Change-Id: I651b7bee90f33581368853da81f9622805ccc0ea
|
|
This file is empty in vp10. Remove it to clear out visual studio
warning.
Change-Id: I741e88adcf3c9fc6b73b13ea08a2094e2f3a7eba
|