Scott LaVarnway
03c0af8747
Moved skip_true_count to macroblock struct
...
Change-Id: Ie9a26be7c9baa54a0e43a63ed6c77f2746477a9c
2012-11-05 11:02:35 -08:00
Scott LaVarnway
7ee44eef13
Moving coef_counts to macroblock struct
...
Change-Id: I289564a5a27f0d03ddc6f19c7838542ff22719be
2012-11-05 11:00:49 -08:00
Scott LaVarnway
ca003fbb22
Merge "Removed unnecessary VP8_COMP *cpi parameters"
2012-11-05 09:51:40 -08:00
Scott LaVarnway
9016fa22e0
Removed unnecessary VP8_COMP *cpi parameters
...
Code cleanup
Change-Id: I82f9d787a2f511d39895fd8dfd5347a1676d9dbc
2012-11-02 12:10:07 -07:00
Ronald S. Bultje
4b2c2b9aa4
Rename vp8/ codec directory to vp9/.
...
Change-Id: Ic084c475844b24092a433ab88138cf58af3abbe4
2012-11-01 16:31:22 -07:00
Ronald S. Bultje
6c280c2299
Adjust style to match Google Coding Style a little more closely.
...
Most of these were picked up by jenkins in the commit that changed
the vp8 namespace to vp9 in common/.
Change-Id: I5cbd56ffc753b92ef805133cda6acc1713a13878
2012-11-01 10:03:48 -07:00
Ronald S. Bultje
6a4b1e5958
Remove vp8 in local symbols.
...
For non-static functions, change the prefix to vp9_. For static functions,
remove the prefix. Also fix some comments, remove unused code or unused
function prototypes.
Change-Id: I1f8be05362f66060fe421c3d4c9a906fdf835de5
2012-11-01 10:03:43 -07:00
Scott LaVarnway
8a6a7ae292
vp8dx_receive_compressed_data() cleanup
...
Change-Id: I6edf0626d00ae177c7c04eec64e1ec0dd861dfbe
2012-10-31 13:35:13 -07:00
Ronald S. Bultje
982deebb5e
Change name of common top-level structures from VP8 to VP9.
...
This change encompasses VP8_PTR, VP8_COMP, VP8D_COMP, VP8_COMMON,
VP8Decompressor and VP8Common.
Change-Id: I514ef4ad4e682370f36d656af1c09ee20da216ad
2012-10-31 10:15:08 -07:00
Ronald S. Bultje
43da8f147c
Change non-function symbol vp8_ prefixes to vp9_.
...
For local symbols, make them static instead.
Change-Id: I13d60947a46f711bc8991e16100cea2a13e3a22e
2012-10-31 10:15:08 -07:00
Ronald S. Bultje
fbbd3e1832
Merge "Change common vp8_ public symbol prefixes to vp9_." into experimental
2012-10-31 10:04:03 -07:00
Ronald S. Bultje
9bc5f3e3af
Change common vp8_ public symbol prefixes to vp9_.
...
Change-Id: Ic5a5f60e1ff9d9ccae4174160d36529466eeb509
2012-10-31 09:47:32 -07:00
Yunqing Wang
b8e9617ee8
Add forward transform function to rtcd
...
Added vp8_fht to rtcd_defs.sh
Change-Id: I929b0bf878185a2f0e031dc8c70a418286d509aa
2012-10-31 09:42:51 -07:00
Ronald S. Bultje
5ddcbeeb7d
Adjust style to match Google Coding Style a little more closely.
...
Most of these were picked up in the previous commit (prefix change from
vp8_ to vp9_), but I'm pushing this separately so that it's easier to
review.
Change-Id: Ifce2cdd6f008f4b1fbc2d89b5196d75e35fe115d
2012-10-30 22:07:14 -07:00
Ronald S. Bultje
0d53fc262c
Change decoder vp8_ and vp8dx_ public symbol prefixes to vp9_.
...
Change-Id: Iedb4c3b4171d8640cc525727b4c3658e2bb400db
2012-10-30 22:07:14 -07:00
Ronald S. Bultje
d115dbc24c
Adjust style to match Google Coding Style a little more closely.
...
Most of these were picked up in the previous commit (prefix change from
vp8_ to vp9_), but I'm pushing this separately so that it's easier to
review.
Change-Id: I91e959895778b8632d7d33375523df8a7568a490
2012-10-30 22:07:13 -07:00
Ronald S. Bultje
f88558fb1d
Change encoder vp8_ and vp8cx_ public symbol prefixes to vp9_.
...
Change-Id: Ie2e3652591b010ded10c216501ce24fd95d0aec5
2012-10-30 22:07:07 -07:00
Yunqing Wang
fe1788500c
Fixed style warnings
...
Fixed some style warnings.
Change-Id: I9eb77c3bf6d63628feef1b0c936e905bf4f2089d
2012-10-30 17:54:22 -07:00
Yunqing Wang
8a9e4e8a61
Convert the transforms to integer forms.
...
Converted the forward and inverse transforms to integer forms.
Modify #define TEST_INT 1/0
in the code to call integer/float version of transforms.
The tests showed that average OVERALL PSNR loss was less than 0.1%.
Change-Id: I1dfa4eeab6412597e3b970ce299cf0e116a917e6
2012-10-30 15:56:20 -07:00
Scott LaVarnway
fc6fdf984b
Merge "dequant invoke macro removal" into experimental
2012-10-30 12:49:40 -07:00
Scott LaVarnway
df1b8f2f23
dequant invoke macro removal
...
Change-Id: Ifa17e698149adc063476e7d16eb727f01e88b447
2012-10-30 12:09:49 -07:00
Paul Wilkins
80674b4330
Merge "Separated experiment for subpel refmv selection" into experimental
2012-10-30 11:00:30 -07:00
Paul Wilkins
e05e6e107e
Remove old experiment.
...
Delete code relating to featureupdates experiment.
Change-Id: If218762c658bb8cbb3007cf2069123b3e05adcbc
2012-10-30 17:36:09 +00:00
Yaowu Xu
24265e884e
Separated experiment for subpel refmv selection
...
As suggested by Paul, this commit separate the subpel refmv selection
into a separate experiment. It also changed a couple variable names
to better reflect the nature of the variables.
Change-Id: Id951c3cadc61a982dd15afe641000f60213b8995
2012-10-30 10:06:59 -07:00
Paul Wilkins
747fbd1b7b
Merge "seg_common: give all exported symbols a vp9_ prefix." into experimental
2012-10-30 08:54:00 -07:00
Paul Wilkins
655eb16627
Merge "boolhuff/dboolhuff: give exported symbols a vp9_ prefix." into experimental
2012-10-30 08:53:03 -07:00
Paul Wilkins
a4d308a468
Merge "segmentation: make local symbols static." into experimental
2012-10-30 08:52:59 -07:00
Paul Wilkins
dd2e43c32b
Merge "encodeframe: make local symbols static." into experimental
2012-10-30 08:52:52 -07:00
Paul Wilkins
411f9e2b7f
Merge "entropymode: put print_mode_contexts under #ifdef MODE_STATS." into experimental
2012-10-30 08:52:40 -07:00
Paul Wilkins
5f0ea6cc5b
Merge changes I5898f64d,Ie80d13ce into experimental
...
* changes:
ssim: remove unused function dssim().
detokenize: make local symbols static.
2012-10-30 08:52:28 -07:00
Paul Wilkins
5acb622f42
Merge "firstpass: make local symbols static." into experimental
2012-10-30 08:18:39 -07:00
Paul Wilkins
42d5e31ef3
Merge "bitstream: give exported symbols a vp9_ prefix; make local symbols static." into experimental
2012-10-30 08:18:28 -07:00
Paul Wilkins
976d0450ac
Merge "alloccommon: give exported symbols a vp9_ prefix." into experimental
2012-10-30 08:18:16 -07:00
Paul Wilkins
10afa9e229
Merge "Make implicit_segmentation-related code an experiment." into experimental
2012-10-30 08:18:10 -07:00
Paul Wilkins
edd66a996c
Merge "decodframe: make local symbol static." into experimental
2012-10-30 08:18:01 -07:00
Paul Wilkins
5091302722
Merge changes I23aa5547,I8341a19c into experimental
...
* changes:
tokenize: make local symbols static; give exported symbols a vp9_ prefix.
encodemb: make locally used functions static.
2012-10-30 07:24:53 -07:00
Paul Wilkins
c87bf0df91
Merge "onyx_if: remove unused function, and make locally used functions static." into experimental
2012-10-30 07:24:11 -07:00
Paul Wilkins
6104f2cc13
Merge "reconintra: make locally used symbols static." into experimental
2012-10-30 07:24:06 -07:00
Paul Wilkins
4247de33fa
Merge "rdopt: make locally used symbols static." into experimental
2012-10-30 07:24:00 -07:00
Paul Wilkins
bbc6057687
Merge "ratectrl: make locally used symbol static." into experimental
2012-10-30 07:23:41 -07:00
Paul Wilkins
ac220b8d22
Merge "mbgraph: remove unused function, and make local function static." into experimental
2012-10-30 07:23:33 -07:00
Paul Wilkins
fe6eff7c55
Merge "Fix superblock experiment." into experimental
2012-10-30 06:52:50 -07:00
Paul Wilkins
412c5983e7
Merge "More MSVC build fixes" into experimental
2012-10-30 05:31:12 -07:00
Paul Wilkins
50f1eae5be
Merge "Improves subpixel reference mv evaluation" into experimental
2012-10-30 03:48:48 -07:00
Ronald S. Bultje
b066bb4306
seg_common: give all exported symbols a vp9_ prefix.
...
Change-Id: Ie8ba934a757acec1c80ac37ab9307c9a2783254e
2012-10-29 22:15:27 -07:00
Ronald S. Bultje
d36cc98ee3
boolhuff/dboolhuff: give exported symbols a vp9_ prefix.
...
Change-Id: I2f1781c70b14bf1d7b6da75d1501718445552af0
2012-10-29 21:42:10 -07:00
Ronald S. Bultje
7f6f07035e
segmentation: make local symbols static.
...
Change-Id: Ia30924dc095663b04794902522308d822c1a5ad0
2012-10-29 21:39:44 -07:00
Ronald S. Bultje
68d07ba116
encodeframe: make local symbols static.
...
Change-Id: I77bc38b53428ff3e6456b5bc3516418892a58c1e
2012-10-29 21:38:07 -07:00
Ronald S. Bultje
9fb4c9a47d
entropymode: put print_mode_contexts under #ifdef MODE_STATS.
...
This is the condition under which it is called in onyx_if.c. Also remove
the unused function print_mv_ref_cts().
Change-Id: I51ea3720d46f86d136e2215e01cf9d6c7dfc41ea
2012-10-29 21:35:35 -07:00
Ronald S. Bultje
f0dfdfe30d
ssim: remove unused function dssim().
...
Change-Id: I5898f64da77e43a3860a77f3bc49d64b725c278c
2012-10-29 21:30:09 -07:00
Ronald S. Bultje
418d6b317d
detokenize: make local symbols static.
...
Change-Id: Ie80d13ce095faa8bca21bcdca3ca8249d9abc398
2012-10-29 21:28:08 -07:00
Ronald S. Bultje
4c6a2d2221
firstpass: make local symbols static.
...
Change-Id: Iee0f707abbfe427b10058f6cf3be21b89d6a6e65
2012-10-29 21:26:53 -07:00
Ronald S. Bultje
8ce9fb8d21
bitstream: give exported symbols a vp9_ prefix; make local symbols static.
...
Change-Id: I3aa5b515c1eae19ae40ba9808d133590c95f7d13
2012-10-29 21:25:22 -07:00
Ronald S. Bultje
7228a38aef
alloccommon: give exported symbols a vp9_ prefix.
...
Also include the correct header in ratectrl.c so it picks up these
function prototypes.
Change-Id: Ic51b13119f1625f0691917f2713b23d0249dece7
2012-10-29 21:24:12 -07:00
Ronald S. Bultje
8166657109
Make implicit_segmentation-related code an experiment.
...
This way, the code is not compiled in by default, thus decreasing
overall binary size.
Change-Id: I85cac8f5a22a51a7d99c820ef6d6ed179d4106a0
2012-10-29 21:15:42 -07:00
Ronald S. Bultje
8ff22bde68
decodframe: make local symbol static.
...
Change-Id: Id55f3cd3c2f5857dbfd78703452740dfd63cdf41
2012-10-29 21:08:59 -07:00
Ronald S. Bultje
adb8a160f9
tokenize: make local symbols static; give exported symbols a vp9_ prefix.
...
Change-Id: I23aa5547b1e74f31327258dda0e330aae7ca1d35
2012-10-29 21:07:40 -07:00
Ronald S. Bultje
1e596da848
encodemb: make locally used functions static.
...
Change-Id: I8341a19cb4f2234841a40fcbf560315f079b0108
2012-10-29 21:02:36 -07:00
Ronald S. Bultje
8044c6a44b
onyx_if: remove unused function, and make locally used functions static.
...
Change-Id: Ica08c2c9cda9623389dde3f276dfed77c36e3a11
2012-10-29 18:20:32 -07:00
Ronald S. Bultje
ef28aacd4a
reconintra: make locally used symbols static.
...
Also remove them from the header file.
Change-Id: I38182f70268fd47985fb1d8d87cdeb207f67e475
2012-10-29 18:15:04 -07:00
Ronald S. Bultje
7bf461666a
rdopt: make locally used symbols static.
...
Change-Id: Id33c448084ca5c1c0525a05c3c4f35d6b0805fbe
2012-10-29 18:04:33 -07:00
Ronald S. Bultje
1a02ea98af
ratectrl: make locally used symbol static.
...
Change-Id: I4f317f413fbbcc59f84ff77899ea208fb0dccb2a
2012-10-29 18:02:04 -07:00
Ronald S. Bultje
07b8707532
mbgraph: remove unused function, and make local function static.
...
Change-Id: I295c7bcf13b630cb9395585ede7311d85d785f25
2012-10-29 17:59:45 -07:00
Ronald S. Bultje
7944b4f239
Fix superblock experiment.
...
Also merge some duplicate code related to the superblock experiment
in the RD loop.
Change-Id: Ic93f1d4d1ed81220fd7ecf6e65da2821a215b2de
2012-10-29 17:58:18 -07:00
Yaowu Xu
00c79553fe
More MSVC build fixes
...
Change-Id: I3b7bae440bba7ffb401c94fc7e338dbe75daa980
2012-10-29 17:42:47 -07:00
Yaowu Xu
d8bd0246dd
fixed a build issue
...
Two head files dct.h and dct_x86.h were removed in a previous commit,
this commit removed the build's dependency on the two files.
Change-Id: Idd33712470912d39d42f133dc30b710cab6fa832
2012-10-29 16:54:13 -07:00
Ronald S. Bultje
1758dc03d4
Merge "Name space clean up." into experimental
2012-10-29 14:41:47 -07:00
Ronald S. Bultje
86728ce109
Merge "A clean up of the down_copy function" into experimental
2012-10-29 14:41:39 -07:00
Jim Bankoski
818ee904a9
remove fdct invoke macros
...
Remove the fdct invoke macro calls
Change-Id: Ica2431c655819fa012133ee7abc75a16761e5fd6
2012-10-29 11:25:56 -07:00
Jim Bankoski
ee6421a201
Fixes invoke macro commit...
...
Change-Id: Ic186269b51ffb3c344635bfa9825bed25be2c5ae
2012-10-29 08:58:05 -07:00
Paul Wilkins
a99a2c3667
Name space clean up.
...
Preparation for project restructuring.
Added vp9_ prefix on some function names that have global scope.
Added static declaration on some that dont.
Change-Id: If072f78b4300e8c17cfeed82c5d17b59946dcc5e
2012-10-29 14:44:10 +00:00
Yaowu Xu
cc9c637d07
Improves subpixel reference mv evaluation
...
Previously, in evaluating reference motion vectors, MVs are always
rounded to integer pixel position and SADs are calculated. This
commit takes into account the subpixel portion of the mvs, and uses
bilinear interpolation to produce reference pixel values in subpixel
postions. In addition, SSE is used in place of SAD. Pixels used are
16x2 above and 2x16 to the left.
This commmit intends to test the potential of this line of work in
term of compression improvement, obviously, the change would increase
decoder complexity significantly.
Test results
std-hd: 1.738%(avg) 1.779%(glb), 1.663%(ssim)
derf: 0.472%(avg) 0.477%(glb), 0.418%(ssim)
Change-Id: I3ae1b098f6289df78891134d9a5e4bb2fde87a0b
2012-10-29 07:06:10 -07:00
Paul Wilkins
d638056952
Inconsistent reference to MacroblockD data structure.
...
Cleaned up some inconsistent references using both xd-> and
x->e_mbd. to access the same data structure in the same function.
Change-Id: Ieb496fa22bf1feec6aa7bc70b941ea4f16e0f8b5
2012-10-29 12:58:49 +00:00
Paul Wilkins
f9d9b2b7f6
Merge "invoke macro removal encodemb" into experimental
2012-10-29 05:42:58 -07:00
Jim Bankoski
1838d87771
invoke macro removal encodemb
...
Change-Id: I321280abcf48f3dc16e194d29bde2bd3baec6006
2012-10-29 12:36:50 +00:00
Deb Mukherjee
d269de5fba
A clean up of the down_copy function
...
Change-Id: I0c689fb44e9e91539c450d26672d7a1d92e92900
2012-10-26 15:54:37 -07:00
Scott LaVarnway
23f038a13f
Merge "Faster 8t filtering" into experimental
2012-10-26 14:53:50 -07:00
Ronald S. Bultje
37ba4cfc7e
Merge "Extend edges correctly during actual frame encoding also." into experimental
2012-10-26 11:05:51 -07:00
Paul Wilkins
7d921524d6
Merge "Explicit MV reference experiment." into experimental
2012-10-26 09:42:37 -07:00
Paul Wilkins
ba30e7746e
Explicit MV reference experiment.
...
Coding and costing of mv reference signal.
Issues in updating MV ref with COMPANDED_MVREF_THRESH
to be resolved. Ideally the MV precision should be defined based
on absolute MV magnitude not as now the MV ref magnitude.
Update to mv counts moved into bitstream.c because otherwise
if the motion reference is changed at the last minute the encoder
and decoder get out of step in terms of the counts used to update
entropy probs.
Code working on a few test clips but no results yet re benefit vs
signaling cost and no tuning of red loop to test lower cost alternatives
based on the available reference values.
Patch 3. Added check to make sure we don't pick a reference
that would give rise to an uncodeable / out of range residual.
Patch 6-7: Attempt to rebase. OK to submit but best to leave flag off for now.
Patch 9. Remove print no longer needed.
Change-Id: I1938c2ffe41afe6d3cf6ccc0cb2c5d404809a712
2012-10-26 13:35:02 +01:00
Ronald S. Bultje
6d465faa34
Extend edges correctly during actual frame encoding also.
...
Should fix B_PRED-related encoder/decoder mismatches.
Change-Id: I16f808dffd19094e02e8562ba58cc1016155ce93
2012-10-25 18:09:02 -07:00
Scott LaVarnway
ce811f87c4
Faster 8t filtering
...
Quickly modified the ssse3 sixtap filters to support eight taps. For the test
clip used, a 23+% boost in decoder performance was seen. We can
revisit later and improve further.
Change-Id: I5f59860459e80d6fa23e6cc0fd91296a969f5240
2012-10-25 17:24:50 -07:00
Johann
96e5939faf
Use vp8_clear_system_state helper function
...
Change-Id: I4dd192c3297e31b8eadd108ca8d0934e58f502f7
2012-10-25 17:04:03 -07:00
Johann
6106b72eb6
variance.h uses defines in vpx_config.h
...
Change-Id: Ibd3e4425a3bf8aae8aa33b70da2b84e1cda8c07f
2012-10-25 16:09:17 -07:00
Debargha Mukherjee
47fb14743d
Merge "Always extend macroblock edges in the decoder." into experimental
2012-10-25 13:52:29 -07:00
Ronald S. Bultje
403f6b5846
Always extend macroblock edges in the decoder.
...
This fixes edge extension if SB [0,1] doesn't use B_PRED but [1,1] does.
Change-Id: I48354a9dba0de16472938824f5e6db87ce61979f
2012-10-25 12:46:39 -07:00
Scott LaVarnway
d3465a5352
Added sse2 instrinsic version of vp8_sad3x16
...
1.6% boost in decoder performance for the clip used.
Change-Id: I91f3c4573fd3d10afbf18930f279af7ae2223e3a
2012-10-25 12:19:41 -07:00
Scott LaVarnway
be4e7c5f77
Merge "Added sse2 instrinsic version of vp8_sad16x3" into experimental
2012-10-25 12:19:26 -07:00
Scott LaVarnway
9ba2efd034
Added sse2 instrinsic version of vp8_sad16x3
...
3.7% boost in decoder performance for the clip used.
Change-Id: I74f28486a9352b472b36e21b5eaf30eff35e9199
2012-10-25 12:16:08 -07:00
Ronald S. Bultje
fbf2ac111e
Fix 4x4 intra prediction on the edge of SB rows.
...
Change-Id: I87d571008c73f0a8514e0a864405aadb82fd1bc0
2012-10-25 12:05:58 -07:00
Ronald S. Bultje
2c4f616a61
Fix yet another typo in splitmv/tx_select code.
...
Change-Id: I6a28cc87af275fc267b3cc8d90d642dcc870c249
2012-10-25 09:17:47 -07:00
Ronald S. Bultje
b4cdcd6ea6
Generalize coefficient tokenizing.
...
Change-Id: Ie33f7d0f90d0e5862be975d676a700d06f79eec6
2012-10-25 09:14:21 -07:00
Ronald S. Bultje
cb9e6abf80
Generalize EOB token stuffing.
...
Change-Id: Ibb51f3f8c3575d4621890220b20887a13a46a04e
2012-10-24 16:59:00 -07:00
Ronald S. Bultje
ce9f61ec50
Merge "Fix typo in splitmv/tx_select code." into experimental
2012-10-24 15:21:05 -07:00
Ronald S. Bultje
29b6a45b88
Fix typo in splitmv/tx_select code.
...
Change-Id: I2823043634b0fa617c2715d63ff18595b7209287
2012-10-24 13:04:09 -07:00
John Koleszar
45b4832ffd
Fix bad merge of coef_probs update
...
Stray CONFIG_HYBRIDTRANSFORM caused decode mismatch.
Change-Id: I1d77bad9b366f7a6ceb3cb45269ed5badb5c4c53
2012-10-24 12:59:22 -07:00
John Koleszar
226e55c17d
coef_probs: remove duplicate read/update code
...
Refactor per-transform copy & paste into a common function
update_coef_probs_common() and read_coef_probs_common(). The dry-run and
bit-writing loops in the encoder are still obvious candidates to be made
common, but they start to diverge a bit in the next commit, so are left
as-is for now.
Change-Id: I896bd3f4a073a6296eab7e92463fef79d8c6c08c
2012-10-24 09:41:04 -07:00
Yaowu Xu
f75448ed73
Merge "Fixed the MSVC compiling error with correct cast" into experimental
2012-10-23 14:31:38 -07:00
Scott LaVarnway
f8e9d0104b
Fixed the MSVC compiling error with correct cast
...
Change-Id: Ia904f4ec72500d29f1361ce305d8f3231e592f47
2012-10-23 14:25:01 -07:00
pascal massimino
73d387dcd2
Merge "Change eob[] array type in splitmv RD loop to a regular integer." into experimental
2012-10-23 14:00:01 -07:00