James Zern
19d2e73dea
Merge changes Ice037acb,I806af11b,I344a7dd0,Ib7cb87fa
...
* changes:
vp9: normalize vpx_enc_frame_flags_t usage
args.c: add some explicit casts
webmdec: quiet -Wshorten-64-to-32 warning
test/decode_test_driver: rm unused deadline member
2016-08-06 01:20:52 +00:00
James Zern
7104833085
vp9: normalize vpx_enc_frame_flags_t usage
...
quiets -Wshorten-64-to-32 warnings
Change-Id: Ice037acb675d1d81bfedf2dfcfa91a8a29a19dfd
2016-08-04 23:37:49 -07:00
clang-format
3a4002b94d
vp9_ratectrl.c: apply clang-format
...
after:
ff0a87c vp9 1pass vbr: Adjustment to gf interval.
Change-Id: I1296e53e601bf0c2b562e3a34082ac45c294a5f1
2016-08-04 11:57:00 -07:00
Marco Paniconi
9fdeeaf411
Merge "vp9 1pass vbr: Adjustment to gf interval."
2016-08-04 17:50:55 +00:00
Yaowu Xu
7a79fa1362
Fix msvc compiler warnings
...
MSVC 2013 complained about using 32 shift where 64 bit shift should be
used.
Change-Id: I7a2b165d1a92d3c0a91dd4511b27aba7709b5e55
2016-08-03 18:33:06 -07:00
Marco
ff0a87ce38
vp9 1pass vbr: Adjustment to gf interval.
...
Increase the minimum distance.
Reduces the overshoot somewhat on some clips,
small gain in avgPSNR (~0.1%) on ytlive set.
Change-Id: Id5ddde20c2907dbdb536e79542eff775019c142b
2016-08-03 15:36:27 -07:00
clang-format
e0cc52db3f
vp9/encoder: apply clang-format
...
Change-Id: I45d9fb4013f50766b24363a86365e8063e8954c2
2016-08-02 16:47:11 -07:00
Yaowu Xu
039f9e08f0
change HBD pixel value from uint8_t to uint16_t
...
This fixes a regression in 10/12 bit encoding results.
Change-Id: I438877352a41aae0a864a8d9979afe4aa2061d81
2016-08-02 11:01:39 -07:00
Yaowu Xu
dc5618f3bb
Add pointer conversion for HBD buffers
...
This fixes a crash in HBD build.
Change-Id: I7f688f50227323e69bba65df0d56f4360f01771b
2016-08-01 15:56:43 -07:00
Alex Converse
004eebed31
Merge "Unfork 8-bit in HBD path in vp9_model_rd_from_var_lapndz callers."
2016-08-01 16:42:39 +00:00
Alex Converse
2c3807b89f
Merge "Cache optimizations in optimize_b()."
2016-08-01 16:30:05 +00:00
Alex Converse
e446ffda45
Cache optimizations in optimize_b().
...
Move best index into the token state. Shrink it down to one byte. This
is more cache friendly (access are group together) and uses less total
memory.
Results in 4% fewer cycles in optimize_b().
Change-Id: I75db484fb3dc82f59928d54b659d79c80ee40452
2016-07-29 12:06:49 -07:00
Jacky Chen
462a7c9f0a
Merge "vp9 svc: Enable different speed setting for each spatial layer."
2016-07-28 20:21:30 +00:00
Alex Converse
4508eb3123
Merge "Fix 64 to 32 narrowing warning."
2016-07-28 16:36:46 +00:00
Alex Converse
335cf67d8b
Fix 64 to 32 narrowing warning.
...
- Solves potential integer overflow on 12-bit
- Fixes Visual Studio build
Change-Id: I26dd660451bbab23040e4123920d59e82585795c
2016-07-27 12:40:23 -07:00
JackyChen
47cc64cdf8
vp9 denoiser: Derefencing pointer should be after null check.
...
BUG=webm:1267
Change-Id: I899fc9e8d784c6eefcbe27945c619845adb7b6f0
2016-07-26 17:31:17 -07:00
Alex Converse
34201e50c1
Unfork 8-bit in HBD path in vp9_model_rd_from_var_lapndz callers.
...
BUG=b/29583530
Change-Id: Ia88a75f9572e08f228559ab84b8a77efb5aff0af
2016-07-26 21:57:58 +00:00
jackychen
8ce67d714a
vp9 svc: Enable different speed setting for each spatial layer.
...
This change only affects 1 pass cbr svc mode.
Change-Id: If0da87bb200f7e7762755340c40c8157cc7a16ca
2016-07-25 15:11:43 -07:00
Alex Converse
d6c5ef4557
Only consider visible 4x4s in pixel domain error.
...
BDRATE change
derf144: -0.327
lowres: -0.048
midres: -0.125
hdres: -0.238
Change-Id: I789aba9870b5c2952373a7dd4fc8ed45590c3c54
2016-07-25 21:44:06 +00:00
Alex Converse
511bf49b7e
Merge "Minor skip segment simplification."
2016-07-25 17:50:43 +00:00
Scott LaVarnway
ad5fea03e6
Merge "VP9: get_pred_context_switchable_interp() -- encoder side"
2016-07-25 11:58:24 +00:00
Alex Converse
9a62ecbd35
Minor skip segment simplification.
...
Change-Id: I34863fce1abe94f9539e9a5a6149ae1efb6501bd
2016-07-22 15:31:18 -07:00
Marco Paniconi
53db633349
Merge "vp9 1pass-vbr: Adjust gf setting for nonzero-lag case."
2016-07-22 21:27:05 +00:00
Marco
c06a4b9df2
vp9 1pass-vbr: Adjust gf setting for nonzero-lag case.
...
Change-Id: I230c586c6d5ae56ee9a6d37b7d9452351bb4bd80
2016-07-22 11:48:09 -07:00
Paul Wilkins
830fa866a5
Merge "Sample points to reduce encode overhead."
2016-07-22 09:27:34 +00:00
Paul Wilkins
063e4a2914
Merge "Noise energy Experiment in first pass."
2016-07-22 09:27:19 +00:00
Scott LaVarnway
c969b2b02b
VP9: get_pred_context_switchable_interp() -- encoder side
...
Change-Id: I7217c90d5cf38c51b76759a2dc4f10070f3a40ac
2016-07-21 11:47:51 -07:00
jackychen
71f9cbcfc8
vp9: Fix the clang warning of unsigned int type.
...
Change-Id: I6308db16bd626fa5943925471e9171f567669350
2016-07-20 15:58:35 -07:00
Yaowu Xu
690fcd793b
Change to call vp9_post_proc_frame()
...
This commit changes the call in vp9 encoder from vp9_deblock() to
vp9_post_proc_frame() to ensure the data structures used in the call
are properly allocated. This fixes an encoder crash when configured
with --enable-internal-stats.
Change-Id: I2393b336c0f566665336df4f1ba91c405eb56764
2016-07-20 11:01:49 -07:00
James Zern
e3f7991f99
Merge changes Ia6004c08,I1954f9d6
...
* changes:
cosmetics: Add a few explanatory comments
cosmetics: Correct grammar/spelling in comments
2016-07-19 19:12:23 +00:00
Marco
05fe0f20a6
vp9: Allow usage of lookahead for real-time, 1 pass vbr.
...
Allow usage of lookahead for VBR in real-time mode, for 1 pass vbr.
Current usage is for fast checking of future scene cuts/changes,
and adjusting rate control (gf interval and active_worst/target size).
Added unittests (datarate) for 1 pass vbr mode, with non-zero lag.
Added an experimental option to limit QP based on lookahead.
Overall positive gain in metrics on ytlive set:
avgPNSR/SSIM up on average ~1-3%; several clips up by 5, 7%.
Change-Id: I960d57dfc89de121c4824b9a9bf88d2814e74b56
2016-07-18 15:20:17 -07:00
Yury Gitman
bdfdd7d993
cosmetics: Correct grammar/spelling in comments
...
Change-Id: I1954f9d6e33abff9081fe7a5cf59d5497768e0df
2016-07-18 12:49:00 -07:00
hui su
248f6ad771
Revert "Eliminate isolated and small tail coefficients:"
...
This reverts commit ff19cdafdbb5ee470e4369582b0266f4bc23287d.
Change-Id: I81f68870ca27a1ff683ee22090530b6997815fb2
2016-07-13 11:14:44 -07:00
Jingning Han
fed14a3e94
Merge "Disable trellis optimization when lossless is on"
2016-07-13 16:01:01 +00:00
Jacky Chen
19c157afe2
Merge "vp9 svc: Reuse scaled_temp in two stage downscaling."
2016-07-12 17:59:09 +00:00
JackyChen
110a2ddc9b
vp9 svc: Reuse scaled_temp in two stage downscaling.
...
This change eliminates redundant computation in the two stage
downscaling, which saves ~1% encoding time in 3-layer svc encoding.
Change-Id: Ib4b218811b68499a740af1f9b7b5a5445e28d671
2016-07-12 10:09:55 -07:00
Jingning Han
efccbc9fb5
Disable trellis optimization when lossless is on
...
Disable trellis coefficient optimization when the lossless mode
is turned on.
Change-Id: I9001bf626e86dc3c8c32331ede04fd39036e5f7c
2016-07-12 09:00:16 -07:00
Jim Bankoski
88e6951465
deblock filter : moved from vp8 code branch
...
The deblocking filters used in vp8 have been moved to vpx_dsp for
use by both vp8 and vp9.
Change-Id: I5209d76edafc894b550f751fc76d3aa6799b392d
2016-07-12 05:53:00 -07:00
Scott LaVarnway
2e93fcf893
Merge "vp9_rd_pick_intra_mode_sb(): set interp_filter to"
2016-07-11 22:31:06 +00:00
paulwilkins
3a986eac57
Sample points to reduce encode overhead.
...
Only noise filter sampled points in first pass to reduce
any first pass speed overhead.
Change-Id: Ic80d4400e59146d1c3332336c4350faf28ff8b17
2016-07-11 11:45:52 +01:00
Scott LaVarnway
ed7786869a
vp9_rd_pick_intra_mode_sb(): set interp_filter to
...
SWITCHABLE_FILTERS. This is a partial fix for the build
issues with Change 357240.
Change-Id: I4e507c196175bae729a4f1397878ec8776b0146c
2016-07-09 09:47:34 -07:00
Yaowu Xu
5adb43b8be
Fix non-highbitdepth coding path for HBD build
...
Change-Id: I38eb42b8d051924a7cd1ccc3421a4057cf6e170f
2016-07-08 11:26:34 -07:00
Marco Paniconi
20946cdd3b
Merge "vp9: Adjustment of gfu_boost and af_ratio for 1 pass vbr."
2016-07-08 16:26:06 +00:00
Yaowu Xu
dc008cc17d
Merge "Enable HBD support in real time encoding path"
2016-07-07 22:32:48 +00:00
Marco
cc431ad50a
vp9: Adjustment of gfu_boost and af_ratio for 1 pass vbr.
...
Modify the gfu_boost and af_ratio setting based on the
average frame motion level.
Change only affects 1 pass vbr.
Metrics overall positive on ytlive set.
On average up by ~1%, several clips up by 2-4%.
Change-Id: Ic18c49eb2df74cb4986b63cdb11be36d86ab5e8d
2016-07-07 15:18:14 -07:00
Marco Paniconi
a75965fa94
Merge "vp9: Adjustment to mv bias for non-rd pickmode."
2016-07-07 21:07:37 +00:00
Jingning Han
2f28f9072e
Enable coeff optimization for intra modes
...
This further improves the coding performance by
lowres 0.3%
midres 0.5%
hdres 0.6%
Change-Id: I6a03b6da210b9cbc261474bad4a103e0ba021c68
2016-07-07 12:25:41 -07:00
Jingning Han
44354ee7bf
Use precise context to estimate coeff rate cost
...
Use the precise context to estimate the zero token cost in trellis
optimization process. This improves the speed 0 coding performance
by 0.15% for lowres and 0.1% for midres. It improves the speed 1
coding performance by 0.2% for midres and hdres.
Change-Id: I59c7c08702fc79dc4f8534b64ca594da909e2c91
2016-07-07 12:25:33 -07:00
Jingning Han
62aa642d71
Enable uniform quantization with trellis optimization in speed 0
...
This commit allows the inter prediction residual to use uniform
quantization followed by trellis coefficient optimization in
speed 0. It improves the coding performance by
lowres 0.79%
midres 1.07%
hdres 1.44%
Change-Id: I46ef8cfe042a4ccc7a0055515012cd6cbf5c9619
2016-07-07 12:25:33 -07:00
Jingning Han
541eb78994
Refactor coeff_cost() function
...
Move the operations that update the context buffers outside this
function. The coeff_cost() takes all input as const value and returns
the coefficient cost.
This makes preparation for the next coefficient optimization CLs.
Change-Id: I850eec6e5470b91ea84646ff26b9231b09f70a0c
2016-07-07 18:09:39 +00:00