There is a corner case that when a frame is corrupted, the following
inter frame decode worker will miss the previous failure. To solve
this problem, a need_resync flag needs to be added to master thread
to keep control of that.
Change-Id: Iea9309b2562e7b59a83dd6b720607410286c90a6
Simple skin detection, from vp8; works reasonable on most of the
RTC clips, but could miss sometimes.
Added debug flag to write out skin map over source input.
Change-Id: I2caea7592f1c459047aac46627eeb24a94946464
This commit allows the encoder to properly account for the mode
cost in sub8x8 non-RD mode decision.
Change-Id: I2951960d20e37ed08e372ee0c7044935b2b9b899
Add the rate cost on inter prediction filter type to the overall
rate-distortion cost in vp9_pick_mode_inter.
Change-Id: I72c34017adf5220cadb3962694ee5404469fc673
This commit adds a heuristic rate cost of reference frame to the
non-RD mode decision. It improves the compression performance of
speed -6 by 0.31% and speed -5 by 0.69%.
Change-Id: If7f3b45519d49b2cb640bcb7316a254efc8be446
This enbale the encoder to set color space information for the input
video, so it is then coded in the output bitstream.
Change-Id: Ife03deab3c762425ccd27c4c190902c4d94a76f4
MODE_INFO struct was modified, and vp9_print_modes_and_motion_vectors()
didn't work anymore. This patch modified vp9_debugmodes.c so that
this function works again for debug usage.
Change-Id: I293fae0295235deb2529a460a274caf7c045ac1a
This is to avoid redo the same calculation repeatly, and also allow
easier adjustments for further experiments.
This commit shall have no effect on quality/compression.
Change-Id: I4460acf5c808ff5518da18d21e002c5da58af857
Note: This feature is still in development.
Add an option for the encoder to decide the resolution
at which to encode each frame.
Each KF/GF/ARF goup is tested to see if it would be
better encoded at a lower resolution. At present, each
KF/GF/ARF is coded first at full-size and if the coded
size exceeds a threshold (twice target data rate) at
the maximum active Q then the entire group is encoded
at lower resolution.
This feature is enabled in vpxenc by setting:
--resize-allowed=1
In addition, if the vpxenc command line also specifies
valid frame dimensions using:
--resize-width=XXXX & --resize_height=YYYY
then *all* frames will be encoded at this resolution.
Change-Id: I13f341e0a82512f9e84e144e0f3b5aed8a65402b
This commit fixes the sub block partition size used in
fill_mode_info_sb. Previous implementation effectively disabled
the rectangular block sizes. This commit resolved this issue.
Change-Id: Ic1c383ab0a9a2e7d59e85b388093f1f1f94d1e7f
This will fix the frame parallel decode hang on windows
due to not enough semaphores.
This will also make the frame parallel decode safer as
the number of frame buffers could only support maximum
8 threads.
Change-Id: Id9ef50692819dcbebbd74a0aabffbfb3f39a4309
This commit changes the value of highbitdepth flag to avoid conflict
with vp8 refresh_last_frame flag.
Change-Id: Idcff2cf44f0a200bd935b326f785c0cf32d7228a
The calculation of required extension used in HBD case was wrong due
to rounding for UV when y dimension is odd. This commit replace the
computation with correct version.
This fixes a crash caused by writting beyond buffer boundary.
Change-Id: Ic7c9afeb7388cd1341ec4974a611dacfb74ac6b6