platform/upstream/libvpx.git
11 years agocopy partitioning from last fame
Jim Bankoski [Thu, 20 Jun 2013 16:32:19 +0000 (09:32 -0700)]
copy partitioning from last fame

Change-Id: I26e80ede80cb4389378a95afa95d229092a9859a

11 years agoRemove constant vp9_coef_update_prob table
John Koleszar [Fri, 14 Jun 2013 22:12:31 +0000 (15:12 -0700)]
Remove constant vp9_coef_update_prob table

All elements of this table are equal to 252, so replace it with a
single constant VP9_COEF_UPDATE_PROB.

Change-Id: I1e2d1d284326ce6df9899a740c2fc344b3ec81c9

11 years agoMerge "Fix win64 warning."
Frank Galligan [Thu, 13 Jun 2013 23:37:52 +0000 (16:37 -0700)]
Merge "Fix win64 warning."

11 years agoFix win64 warning.
Frank Galligan [Thu, 13 Jun 2013 22:17:23 +0000 (15:17 -0700)]
Fix win64 warning.

- size_t is 64bits in win64. int is 32 bits.

Change-Id: I4e756427ad42c841098a01a216469f65313987e7

11 years agoMerge "libs.mk: allow tests to be sharded"
John Koleszar [Thu, 13 Jun 2013 23:14:33 +0000 (16:14 -0700)]
Merge "libs.mk: allow tests to be sharded"

11 years agolibs.mk: allow tests to be sharded
James Zern [Fri, 31 May 2013 23:08:09 +0000 (16:08 -0700)]
libs.mk: allow tests to be sharded

Creates test_shard.#n [0,9] targets, usable with make -j [jobs]

Change-Id: Ied86dcc89ae72d1690564aa0dd86de10e06d25f9

11 years agoQuick modifications to mb loopfilter intrinsic functions
Scott LaVarnway [Wed, 12 Jun 2013 23:23:03 +0000 (19:23 -0400)]
Quick modifications to mb loopfilter intrinsic functions

Modified to work with 8x8 blocks of memory.  Will revisit
later for further optimizations.  For the HD clip used, the
decoder improved by almost 20%.

Change-Id: Iaa4785be293a32a42e8db07141bd699f504b8c67

11 years agoMerge "Quick modifications to wide loopfilter intrinsic functions"
Yaowu Xu [Wed, 12 Jun 2013 22:16:11 +0000 (15:16 -0700)]
Merge "Quick modifications to wide loopfilter intrinsic functions"

11 years agoImplement SSE version for sad4x8x4d and SSE2 version for sad8x4x4d.
Ronald S. Bultje [Tue, 11 Jun 2013 22:19:14 +0000 (15:19 -0700)]
Implement SSE version for sad4x8x4d and SSE2 version for sad8x4x4d.

Encoding time of crew (CIF, first 50 frames) @ 1500kbps goes from 4min56
to 4min42.

Change-Id: I92c0c8b32980d2ae7c6dafc8b883a2c7fcd14a9f

11 years agoQuick modifications to wide loopfilter intrinsic functions
Scott LaVarnway [Wed, 12 Jun 2013 20:40:22 +0000 (16:40 -0400)]
Quick modifications to wide loopfilter intrinsic functions

Modified to work with 8x8 blocks of memory.  Will revisit
later for further optimizations.  For the HD clip used, the
decoder improved my 20%.

Change-Id: Ia0057f55d66d1445882351ea6c43b595a5a980e5

11 years agoMerge changes I86fe51b0,I4c9a9e0f
John Koleszar [Wed, 12 Jun 2013 20:43:30 +0000 (13:43 -0700)]
Merge changes I86fe51b0,I4c9a9e0f

* changes:
  Remove unused vp9_idct_add_{y,uv}_block
  Remove some unused loopfilter code

11 years agoMerge "Fix compile warnings on windows."
Johann [Wed, 12 Jun 2013 20:36:50 +0000 (13:36 -0700)]
Merge "Fix compile warnings on windows."

11 years agoMerge "Enable mmx loop filter routines"
John Koleszar [Wed, 12 Jun 2013 19:52:04 +0000 (12:52 -0700)]
Merge "Enable mmx loop filter routines"

11 years agoMerge "Fix row tiling."
Ronald S. Bultje [Wed, 12 Jun 2013 19:41:57 +0000 (12:41 -0700)]
Merge "Fix row tiling."

11 years agoMerge "Fix chroma output when scaling"
John Koleszar [Wed, 12 Jun 2013 19:39:10 +0000 (12:39 -0700)]
Merge "Fix chroma output when scaling"

11 years agoRemove unused vp9_idct_add_{y,uv}_block
John Koleszar [Wed, 12 Jun 2013 19:24:22 +0000 (12:24 -0700)]
Remove unused vp9_idct_add_{y,uv}_block

These functions are not used, and appear to have been superceded.

Change-Id: I86fe51b088264f6b1b8d4d232bba97b371b98120

11 years agoFix the comments in boundary block partition check
Jingning Han [Wed, 12 Jun 2013 19:05:06 +0000 (12:05 -0700)]
Fix the comments in boundary block partition check

Change-Id: Ic6b2881d8d495269edbc514b33376ca963798b45

11 years agoRemove some unused loopfilter code
John Koleszar [Wed, 12 Jun 2013 18:36:00 +0000 (11:36 -0700)]
Remove some unused loopfilter code

This code is unreachable, and not useful for later reference.

Change-Id: I4c9a9e0fbf859c1081bbcfbcda9710afb4b4741f

11 years agoFix compile warnings on windows.
Frank Galligan [Wed, 12 Jun 2013 18:31:28 +0000 (11:31 -0700)]
Fix compile warnings on windows.

Change-Id: If74bc6110016bc75ea3883ab136fbbac88f6a913

11 years agoMerge "Quick fix to stop vpxdec infinite loop"
Yaowu Xu [Wed, 12 Jun 2013 18:28:46 +0000 (11:28 -0700)]
Merge "Quick fix to stop vpxdec infinite loop"

11 years agoEnable mmx loop filter routines
John Koleszar [Wed, 12 Jun 2013 18:28:21 +0000 (11:28 -0700)]
Enable mmx loop filter routines

The mmx routines work as expected for the loop filter, so enable them.

Change-Id: I2bbd9b99a4445fcba17bb95002f1fb6e01fe8f85

11 years agoQuick fix to stop vpxdec infinite loop
Scott LaVarnway [Wed, 12 Jun 2013 17:46:47 +0000 (13:46 -0400)]
Quick fix to stop vpxdec infinite loop

vpxdec stays in a loop when decoding vp9.  This patch is a
quick fix to stop the loop when all data has been decoded.
Eventually we should move the vp9_get_raw_frame() call into
vp8_get_frame().

Change-Id: I3f97b6b4e1fe9ba69f746a29fc54c3304956f661

11 years agoFix row tiling.
Ronald S. Bultje [Wed, 12 Jun 2013 17:30:06 +0000 (10:30 -0700)]
Fix row tiling.

Change-Id: I57be4eeaea6e4402f6a0cc04f5c6b7a5d9aedf9b

11 years agofix a mis use of ref_frame
Yaowu Xu [Wed, 12 Jun 2013 17:32:38 +0000 (10:32 -0700)]
fix a mis use of ref_frame

Change-Id: I9aac140d775b7b4a8727494d15b185b75501a546

11 years agoFix chroma output when scaling
John Koleszar [Wed, 12 Jun 2013 17:09:56 +0000 (10:09 -0700)]
Fix chroma output when scaling

The encode-side scaling was not indexing through the image correctly
for the chroma planes, causing a green checkerboard-like output in
the unit test.

Change-Id: I9abbd73615404cd6699588be3e64dcf59005bc14

11 years agoFix duplicate const.
Frank Galligan [Wed, 12 Jun 2013 15:52:34 +0000 (08:52 -0700)]
Fix duplicate const.

Change-Id: I86be1f7421ed49d577cacf405f6e4b0daa85cfdc

11 years agoVP9 profile 0 release candidate
John Koleszar [Wed, 12 Jun 2013 01:19:14 +0000 (18:19 -0700)]
VP9 profile 0 release candidate

Merge experimental branch into master

Change-Id: Ie5f89fb977d28a4d98a8dcdf1c6eb97271a3c1db

11 years agoMerge branch 'master' into experimental
John Koleszar [Tue, 11 Jun 2013 23:29:08 +0000 (16:29 -0700)]
Merge branch 'master' into experimental

Change-Id: Ie648398b82f7311143709f55c0e30ba452f50eff

11 years agoTrap reference frames of invalid size
John Koleszar [Tue, 11 Jun 2013 21:24:53 +0000 (14:24 -0700)]
Trap reference frames of invalid size

A corrupt bitstream could refer to a reference frame that has no size.

Change-Id: I56c3b71a9dbb58b498e9969403e289c0e574f948

11 years agodecode_tiles(): validate buffer reads
John Koleszar [Tue, 11 Jun 2013 17:06:31 +0000 (10:06 -0700)]
decode_tiles(): validate buffer reads

Previous code indexed using the tile length coded in the bitstream
without checking that the read would be valid.

Change-Id: Ia5047762223a4f80d75016dd546dc2ef18b6887d

11 years agoMerge "Minor change in forward updates" into experimental
Deb Mukherjee [Tue, 11 Jun 2013 19:48:41 +0000 (12:48 -0700)]
Merge "Minor change in forward updates" into experimental

11 years agoMerge "Fix mismatch check output" into experimental
John Koleszar [Tue, 11 Jun 2013 19:29:08 +0000 (12:29 -0700)]
Merge "Fix mismatch check output" into experimental

11 years agoMerge "Disallow wide loopfilter on some chroma borders" into experimental
John Koleszar [Tue, 11 Jun 2013 19:29:03 +0000 (12:29 -0700)]
Merge "Disallow wide loopfilter on some chroma borders" into experimental

11 years agoFix mismatch check output
John Koleszar [Tue, 11 Jun 2013 18:28:08 +0000 (11:28 -0700)]
Fix mismatch check output

Fixes a condition where the address of the mismatching pixels was not
being found/printed.

Change-Id: Ifac5cd3471bc2437448128591eea7c7b87e2d8fe

11 years agoDisallow wide loopfilter on some chroma borders
John Koleszar [Tue, 11 Jun 2013 18:26:50 +0000 (11:26 -0700)]
Disallow wide loopfilter on some chroma borders

Don't do the 15 tap filter if there aren't 8 pixels below/right of the
edge.

Change-Id: I62f16437c1d9ba59b6901a5fe71ddb2f472da344

11 years agoMinor change in forward updates
Deb Mukherjee [Tue, 11 Jun 2013 16:31:33 +0000 (09:31 -0700)]
Minor change in forward updates

Removes the case of coding prob = 0 for forward updates, since that
is not an allowed probability to code.
Slightly improves efficiency but may not matter in practice.

Change-Id: I3b4caf82e8f0891992f0706d4089cc5a27568dba

11 years agoFix rd partition search for corner blocks
Jim Bankoski [Tue, 11 Jun 2013 16:29:21 +0000 (09:29 -0700)]
Fix rd partition search for corner blocks

This commit enables proper partition type search for the bottom-
right corner blocks.

Change-Id: Id1123d0e4e81eba648ed4f3c0c7ab587e174f650

11 years agoMerge "halloc: Cast the offsetof macro to ptrdiff_t before negating"
Johann [Tue, 11 Jun 2013 15:18:46 +0000 (08:18 -0700)]
Merge "halloc: Cast the offsetof macro to ptrdiff_t before negating"

11 years agoFix partition coding of corner block
Jingning Han [Tue, 11 Jun 2013 02:54:06 +0000 (19:54 -0700)]
Fix partition coding of corner block

This commit fixed the allowable partition types for bottom-right
corner blocks.

When a block has over half of its pixels as valid content in both
vertical and horizontal directions, allow all the four partition
types in the bit-stream. Otherwise, apply partition type constraints.

Change-Id: I2252e2de7125a8bfb1c824bf34299a13c81102e3

11 years agoAdds a zero check in model_rd function
Deb Mukherjee [Tue, 11 Jun 2013 00:02:49 +0000 (17:02 -0700)]
Adds a zero check in model_rd function

Avoids divide-by-zero when variance is 0.

Change-Id: I3c7f526979046ff7d17714ce960fe81d6e1442a0

11 years agoMerge "Using network byte order (big-endian) to encode tile size." into experimental
John Koleszar [Mon, 10 Jun 2013 23:48:11 +0000 (16:48 -0700)]
Merge "Using network byte order (big-endian) to encode tile size." into experimental

11 years agoMerge "New probs for filters/tx_size and a few others" into experimental
Deb Mukherjee [Mon, 10 Jun 2013 23:39:43 +0000 (16:39 -0700)]
Merge "New probs for filters/tx_size and a few others" into experimental

11 years agoNew probs for filters/tx_size and a few others
Deb Mukherjee [Mon, 10 Jun 2013 19:00:43 +0000 (12:00 -0700)]
New probs for filters/tx_size and a few others

* New probs for subpel filters/tx_count
* Makes a change to not reset to defaults for the tx_size
probs if an intermediate frame reverts to using a fixed tx_size.
* A few updates to the parameters for backward adaptation for mode/mv
* some cosmetic cleanups

derf300: +0.06%

Change-Id: I22994d659bc31ca7a4fc8820fde24001e64a2920

11 years agoMerge "Remove remnants of VP8 profiles/versions" into experimental
John Koleszar [Mon, 10 Jun 2013 23:16:17 +0000 (16:16 -0700)]
Merge "Remove remnants of VP8 profiles/versions" into experimental

11 years agoUsing network byte order (big-endian) to encode tile size.
Dmitry Kovalev [Mon, 10 Jun 2013 23:13:08 +0000 (16:13 -0700)]
Using network byte order (big-endian) to encode tile size.

This is consistent with uncompressed header encoding.

Change-Id: Iccf40a44b493ed36ee085b81ed56f7952cde70a9

11 years agoRemove remnants of VP8 profiles/versions
John Koleszar [Mon, 10 Jun 2013 22:55:03 +0000 (15:55 -0700)]
Remove remnants of VP8 profiles/versions

Remove the bilinear filter mode, and the no-loopfilter mode, and the
related vp9_setup_version() function.

Change-Id: I32311367812faf37863131df3af37d63d03973d7

11 years agoprint debugging info from mode info struct
Jim Bankoski [Sat, 8 Jun 2013 13:19:33 +0000 (06:19 -0700)]
print debugging info from mode info struct

This commit has no impact but to help us debug issues.   To Use call like
this:

  vp9_print_modes_and_motion_vectors(cpi->common.mi, cpi->common.mi_rows,
                                     cpi->common.mi_cols,
                                     cpi->common.current_video_frame,
                                     "decode_mi.stt");

Change-Id: I89e27725dae351370eb7f311a20a145ed4f1d041

11 years agoFix a crash in vpxdec
John Koleszar [Fri, 7 Jun 2013 15:49:38 +0000 (08:49 -0700)]
Fix a crash in vpxdec

If the codec fails to return a frame on the second frame (as in a VP8 alt-ref,
then img will be a null pointer and dereferencing it while trying to write
the color format (again) will crash.

Change-Id: Ie48710d4c5715f532d453c879c71c20ccdeb81cc

11 years agoMerge the new loopfilter experiment
John Koleszar [Fri, 7 Jun 2013 07:54:28 +0000 (00:54 -0700)]
Merge the new loopfilter experiment

Change-Id: I524ba98841f2e1850e3276ac365c501cea31546d

11 years agoMerge "Loopfilter: Fix chroma edge selection" into experimental
John Koleszar [Mon, 10 Jun 2013 19:17:24 +0000 (12:17 -0700)]
Merge "Loopfilter: Fix chroma edge selection" into experimental

11 years agoMerge "Fix use of get_uv_tx_size in loopfilter" into experimental
John Koleszar [Mon, 10 Jun 2013 19:17:11 +0000 (12:17 -0700)]
Merge "Fix use of get_uv_tx_size in loopfilter" into experimental

11 years agoMerge "Implement intra-coded frames" into experimental
Adrian Grange [Mon, 10 Jun 2013 19:08:09 +0000 (12:08 -0700)]
Merge "Implement intra-coded frames" into experimental

11 years agoCosmetic cleanups of filters
Deb Mukherjee [Sun, 9 Jun 2013 13:54:17 +0000 (06:54 -0700)]
Cosmetic cleanups of filters

No bitstream change.

Removes unused filters and the code for the case of 2 switchable filters;
also changes the 8tap-smooth filter coefficients for integer shifts to be
interpolating to be consistent with the way it is implemented currently.

Change-Id: I96c542fd8c06f4e0df507a645976f58e6de92aae

11 years agoImplement intra-coded frames
Adrian Grange [Sun, 9 Jun 2013 17:10:33 +0000 (10:10 -0700)]
Implement intra-coded frames

Implements ability to signal and decode frames that are
encoded using only intra coding modes. Only the decode
side has been implemented here.

Change-Id: I53ac6a8d90422cd08ba389e5236e15b45f9e93de

11 years agoLoopfilter: Fix chroma edge selection
John Koleszar [Mon, 10 Jun 2013 17:05:44 +0000 (10:05 -0700)]
Loopfilter: Fix chroma edge selection

A 32x32 transform should have no internal filtering (check c==4)

Change-Id: I7414cf4748ed053208217692ef00cd8b20d49a91

11 years agoFix use of get_uv_tx_size in loopfilter
John Koleszar [Mon, 10 Jun 2013 13:48:58 +0000 (06:48 -0700)]
Fix use of get_uv_tx_size in loopfilter

Change the argument of get_uv_tx_size() to be an MBMI pointer, so that the
correct column's MBMI can be passed to the function.

Change-Id: Ied6b8ec33b77cdd353119e8fd2d157811815fc98

11 years agoRd check on segment level reference mode.
Paul Wilkins [Mon, 10 Jun 2013 17:19:25 +0000 (18:19 +0100)]
Rd check on segment level reference mode.

Do not allow the rd code to check compound modes if
a segment level reference frame is selected.

Change-Id: I95f0c57789e0eaceed7caf227e94b4ba3130a06c

11 years agoAllow non-zeromv if ref_frame=intra with segmentation skip/ref enabled.
Ronald S. Bultje [Mon, 10 Jun 2013 17:54:29 +0000 (10:54 -0700)]
Allow non-zeromv if ref_frame=intra with segmentation skip/ref enabled.

Change-Id: Ib5a95bb6ab643b276df3faa9bf99595e4a69ff18

11 years agoFix crash on RD iterations with segmentation enabled.
Ronald S. Bultje [Mon, 10 Jun 2013 17:40:55 +0000 (10:40 -0700)]
Fix crash on RD iterations with segmentation enabled.

Change-Id: I3baf93c2fa5c2f7f45c6bc5514d317040975da71

11 years agoMerge "Fixed point reference picture scaling" into experimental
John Koleszar [Mon, 10 Jun 2013 16:45:34 +0000 (09:45 -0700)]
Merge "Fixed point reference picture scaling" into experimental

11 years agoMerge "border mvref issue" into experimental
Ronald S. Bultje [Mon, 10 Jun 2013 16:22:49 +0000 (09:22 -0700)]
Merge "border mvref issue" into experimental

11 years agoborder mvref issue
Jim Bankoski [Mon, 10 Jun 2013 16:21:11 +0000 (09:21 -0700)]
border mvref issue

Fixes mvref issue.

Change-Id: I07dc1b0682845bc18fe0efa6af5e4f4da3abfa3a

11 years agoMerge "Loopfilter: bug fix in sb_type usage" into experimental
Yaowu Xu [Mon, 10 Jun 2013 15:56:38 +0000 (08:56 -0700)]
Merge "Loopfilter: bug fix in sb_type usage" into experimental

11 years agoFixed point reference picture scaling
Tero Rintaluoma [Mon, 10 Jun 2013 07:23:04 +0000 (10:23 +0300)]
Fixed point reference picture scaling

Fixed point scaling factors are calculated once for each
reference frame by using integer division. Otherwise fixed point
scaling routines are used in all scaling calculations. This makes it
possible to calculate fixed point scaling factors on device driver
software and pass them to hardware and thus avoid division on hardware.

TODO:
 - Missing check for maximum frame dimensions
   (currently scaling uses 14 bits)
 - Missing check for maximum scaling ratio
   (upscaling 16:1, downscaling 2:1)

Problems:
 - Straightforward fixed point implementation can cause error +-1
   compared to integer division (i.e. in x_step_q4). Should only
   be an issue for frames larger than 16k.

Change-Id: I3cf4dabd610a4dc18da3bdb31ae244ebaf5d579c

11 years agoLoopfilter: bug fix in sb_type usage
Janne Salonen [Mon, 10 Jun 2013 06:21:12 +0000 (09:21 +0300)]
Loopfilter: bug fix in sb_type usage

Was always using sb_type of first column in a row of 8x8 units when
determining decoded block edges as a subcondition for loop filter
skipping.

Change-Id: Ib17554633a63a90b70cdaa7bed65db035a8ad9d8

11 years agoMerge "Loopfilter: Always filter intra edges" into experimental
Yaowu Xu [Mon, 10 Jun 2013 04:18:00 +0000 (21:18 -0700)]
Merge "Loopfilter: Always filter intra edges" into experimental

11 years agoMerge "Loopfilter: use the current block only for skip" into experimental
Yaowu Xu [Mon, 10 Jun 2013 04:17:54 +0000 (21:17 -0700)]
Merge "Loopfilter: use the current block only for skip" into experimental

11 years agoMerge "Modified loop filter edge skipping" into experimental
Yaowu Xu [Mon, 10 Jun 2013 04:17:47 +0000 (21:17 -0700)]
Merge "Modified loop filter edge skipping" into experimental

11 years agoLoopfilter: Always filter intra edges
John Koleszar [Sun, 9 Jun 2013 16:02:47 +0000 (09:02 -0700)]
Loopfilter: Always filter intra edges

Change-Id: Ifb1ce2bd52147981ca1aec9ec6cfea8738a23e45

11 years agoMerge "New comp_inter defaults." into experimental
Ronald S. Bultje [Sun, 9 Jun 2013 13:40:02 +0000 (06:40 -0700)]
Merge "New comp_inter defaults." into experimental

11 years agoMerge "Fix firstpass if framesize is not a multiple of 16." into experimental
Ronald S. Bultje [Sun, 9 Jun 2013 00:40:17 +0000 (17:40 -0700)]
Merge "Fix firstpass if framesize is not a multiple of 16." into experimental

11 years agoMerge "New default tables" into experimental
Ronald S. Bultje [Sun, 9 Jun 2013 00:39:50 +0000 (17:39 -0700)]
Merge "New default tables" into experimental

11 years agoMerge "Align frame size to 8 instead of 16." into experimental
Ronald S. Bultje [Sun, 9 Jun 2013 00:39:41 +0000 (17:39 -0700)]
Merge "Align frame size to 8 instead of 16." into experimental

11 years agoNew comp_inter defaults.
Ronald S. Bultje [Sat, 8 Jun 2013 22:13:57 +0000 (15:13 -0700)]
New comp_inter defaults.

It seems like I inverted the meaning of the contexts by accident?

Change-Id: Iafb2346d9933930949578342b84519b719dd5dd3

11 years agoFix firstpass if framesize is not a multiple of 16.
Ronald S. Bultje [Sat, 8 Jun 2013 19:04:12 +0000 (12:04 -0700)]
Fix firstpass if framesize is not a multiple of 16.

Change-Id: Iec41736c2b6140715f90f40de5ae6cf52497a9b8

11 years agoMerge "Fix the rd loop over partition types" into experimental
Yaowu Xu [Sat, 8 Jun 2013 20:30:27 +0000 (13:30 -0700)]
Merge "Fix the rd loop over partition types" into experimental

11 years agoNew default tables
Ronald S. Bultje [Fri, 7 Jun 2013 22:27:47 +0000 (15:27 -0700)]
New default tables

Change-Id: Ice8c73a2a843113877b8f8ed78737a1442c25ced

11 years agoTX_SIZE contexts simplification.
Deb Mukherjee [Sat, 8 Jun 2013 07:09:44 +0000 (00:09 -0700)]
TX_SIZE contexts simplification.

Reduces TX_SIZE contexts to 2 for each kind. The code is
cleaner and there is hardly any performance difference with
more than two contexts.

Results: almost neutral

Change-Id: I17656bd6db76224ae2856adf882504560e7dbaa4

11 years agoMinor fix in TX_SIZE contexts
Deb Mukherjee [Sat, 8 Jun 2013 14:14:58 +0000 (07:14 -0700)]
Minor fix in TX_SIZE contexts

Change-Id: I9e81f84877e18ba7e55d66389ed60e64a5b7abcc

11 years agoFix the rd loop over partition types
Jingning Han [Sat, 8 Jun 2013 06:33:33 +0000 (23:33 -0700)]
Fix the rd loop over partition types

This commit enables boundary blocks properly tested over allowable
partition types.

Change-Id: I405a9a46ddcfa0c7af2b63e3644cabfa3b6a951d

11 years agoMerge "Fix mv range border in pixels" into experimental
Jingning Han [Sat, 8 Jun 2013 06:20:36 +0000 (23:20 -0700)]
Merge "Fix mv range border in pixels" into experimental

11 years agoMerge "Uncompressed header: new encoding for frame size" into experimental
Dmitry Kovalev [Sat, 8 Jun 2013 01:22:53 +0000 (18:22 -0700)]
Merge "Uncompressed header: new encoding for frame size" into experimental

11 years agoMerge "Handle partition type coding of boundary blocks" into experimental
Yaowu Xu [Sat, 8 Jun 2013 01:16:16 +0000 (18:16 -0700)]
Merge "Handle partition type coding of boundary blocks" into experimental

11 years agoUncompressed header: new encoding for frame size
Dmitry Kovalev [Sat, 8 Jun 2013 01:09:29 +0000 (18:09 -0700)]
Uncompressed header: new encoding for frame size

For key frames everything is the same as before. For inter frames we try
to reference last/golden/altref frame size. If there is no match then the
actual size is encoded. Also we don't allow zero width and height anymore.

Change-Id: I49d791fd94af749c823579b0c5ef17c961372678

11 years agoLoopfilter: use the current block only for skip
John Koleszar [Fri, 7 Jun 2013 18:21:35 +0000 (11:21 -0700)]
Loopfilter: use the current block only for skip

Use the current block's skip flag to determine edge skipping.

Change-Id: I4ba81f899286afbc3f6bb83eba2ef146a01b6fa4

11 years agoAlign frame size to 8 instead of 16.
Ronald S. Bultje [Sat, 8 Jun 2013 00:20:50 +0000 (17:20 -0700)]
Align frame size to 8 instead of 16.

Change-Id: Ic606ef1b31e49963a779455a1e010a9ebb0f3f1f

11 years agoFrame header changes to support intra_only frames
Adrian Grange [Fri, 7 Jun 2013 22:55:15 +0000 (15:55 -0700)]
Frame header changes to support intra_only frames

Made changes to the frame header to write the sync
code in the frame header for a non-displayable,
intra-only frame.

Extended reset_frame_context to 2-bits.

(Submitting on behalf of Dmitri)

Change-Id: Ie836ae0df9ed572fb4f08aabe9351a555c4f3b96

11 years agoCoding tx-size selection by use of spatial context
Deb Mukherjee [Thu, 6 Jun 2013 18:14:04 +0000 (11:14 -0700)]
Coding tx-size selection by use of spatial context

Adds coding of transform size within a frame by use of context
of transform sizes selected in left and above blocks.

Also incorporates code for generating stats.

TODO: generate and incorporate new default stats

Change-Id: I6a7af099f6ad61d448521d9a51167aedaf638ed6

11 years agoCleans up mbskip encoding
Deb Mukherjee [Fri, 7 Jun 2013 20:24:14 +0000 (13:24 -0700)]
Cleans up mbskip encoding

Refactors mbskip coding to be compatible with coding of the rest of
the symbols. Adds forward/backward adaptation and removes a lot of
the legacy code.

Results:
fast50: +1.6%
derfraw300: +0.317%

Change-Id: I395a2976d15af044d3b8ded5acfa45f6f065f980

11 years agoFix mv range border in pixels
Jingning Han [Fri, 7 Jun 2013 22:43:08 +0000 (15:43 -0700)]
Fix mv range border in pixels

WIP: trying to resolve the mismatch issue in extending frame
dimension into multiples of 8.

Change-Id: I24e7638ab3c50e21e6969c1eeed4f607d6f11f65

11 years agoAdd slightly more colorspace variations.
Ronald S. Bultje [Fri, 7 Jun 2013 21:45:49 +0000 (14:45 -0700)]
Add slightly more colorspace variations.

Change-Id: Ib44541fbbdcf71ec881814bd6715ea1c6bd82cf4

11 years agoMerge "Preparation to new frame size encoding." into experimental
Dmitry Kovalev [Fri, 7 Jun 2013 21:42:49 +0000 (14:42 -0700)]
Merge "Preparation to new frame size encoding." into experimental

11 years agoHandle partition type coding of boundary blocks
Jingning Han [Thu, 6 Jun 2013 22:33:57 +0000 (15:33 -0700)]
Handle partition type coding of boundary blocks

The partition types of blocks sitting on the frame boundary are
constrained by the block size and the position of each sub-block
relative to the frame. Hence we use truncated probability models
to handle the coding of such information.

100 frames run:
yt 0.138%

Change-Id: I85d9b45665c15280069c0234ea6f778af586d87d

11 years agoFix ref_frame segment feature when it is intra.
Ronald S. Bultje [Fri, 7 Jun 2013 18:54:20 +0000 (11:54 -0700)]
Fix ref_frame segment feature when it is intra.

Change-Id: Ifbf790c14cee0c08a27f6728e3c637404e1f8477

11 years agoFix segment feature data size.
Ronald S. Bultje [Fri, 7 Jun 2013 18:44:33 +0000 (11:44 -0700)]
Fix segment feature data size.

Change-Id: I4331cfd99a717938f4f970cad81c468cbf287b00

11 years agoFix line that disables the line above it.
Ronald S. Bultje [Fri, 7 Jun 2013 18:43:43 +0000 (11:43 -0700)]
Fix line that disables the line above it.

Change-Id: I19d5cb60a00a001f6e5b3d90ce2db6e49d6209ad

11 years agoFix segment feature data type.
Ronald S. Bultje [Fri, 7 Jun 2013 18:41:00 +0000 (11:41 -0700)]
Fix segment feature data type.

It has a range of -255,255, so should be int16_t, not int8_t.

Change-Id: I5ef4b6aefb6212b0f35f4754f3c4d73fddbc52a0

11 years agoDon't crash if motion vector ref points to out-of-bounds area.
Ronald S. Bultje [Fri, 7 Jun 2013 18:40:42 +0000 (11:40 -0700)]
Don't crash if motion vector ref points to out-of-bounds area.

This can only happen if partition is partly out-of-frame, in which
case the referenced mv is either out-of-frame also (and thus has the
same value as an already-read one), or it is actually uninitialized,
in which case we don't want to use it.

Change-Id: Icf39fa4d987c7abcbebb9bbdcdd6311e8fb9d3c9

11 years agoFix static segmentation feature.
Ronald S. Bultje [Fri, 7 Jun 2013 17:20:03 +0000 (10:20 -0700)]
Fix static segmentation feature.

Change-Id: Ia36f626b9b3c2fe7eb89bb9acddf4701db1baef2

11 years agoChange to segment ref frame feature.
Paul Wilkins [Fri, 7 Jun 2013 13:59:53 +0000 (14:59 +0100)]
Change to segment ref frame feature.

Simplify feature to only support a single reference frame
instead of a mask.

Change-Id: I5dd3a98c7a224aafb35708850ab82e2f220e68fb