Dmitry Kovalev [Wed, 23 Oct 2013 20:37:09 +0000 (13:37 -0700)]
Merge "Renaming vp9_short_fdct16x16 to vp9_fdct16x16."
Dmitry Kovalev [Wed, 23 Oct 2013 18:38:55 +0000 (11:38 -0700)]
Merge "Renaming vp9_short_fdct8x8 to vp9_fdct8x8."
Jingning Han [Wed, 23 Oct 2013 18:08:12 +0000 (11:08 -0700)]
Merge "Make decode modules independent of tile index"
Dmitry Kovalev [Wed, 23 Oct 2013 17:57:12 +0000 (10:57 -0700)]
Renaming vp9_short_fdct16x16 to vp9_fdct16x16.
For consistency with idct function names.
Change-Id: I5ca355ba99fdba04f09254be95cf79808b534f71
Dmitry Kovalev [Wed, 23 Oct 2013 17:52:33 +0000 (10:52 -0700)]
Renaming vp9_short_fdct8x8 to vp9_fdct8x8.
For consistency with idct function names.
Change-Id: I7b6af2f92c66eff56f84ed29edc3a66af8dc421f
Dmitry Kovalev [Wed, 23 Oct 2013 17:10:24 +0000 (10:10 -0700)]
Merge "Reordering probability tables for consistency."
Dmitry Kovalev [Wed, 23 Oct 2013 17:09:53 +0000 (10:09 -0700)]
Merge "Removing quantize_b_4x4 function pointer."
Adrian Grange [Tue, 22 Oct 2013 23:53:37 +0000 (16:53 -0700)]
Remove right_available member from VP9_COMP
This member of VP9_COMP is no longer used, so I removed it.
Change-Id: I3509f52756da4768a3e4581cec5ed5d2a70d5fb8
Jingning Han [Tue, 22 Oct 2013 22:22:59 +0000 (15:22 -0700)]
Make decode modules independent of tile index
Assign the pointer to mode_info stream per tile. Remove the use of
tile_col in the decoding modules.
Change-Id: I7df87086708a3d92c5e20e86bcfb04e458ff47a6
Dmitry Kovalev [Tue, 22 Oct 2013 21:00:48 +0000 (14:00 -0700)]
Merge "Moving functions from vp9_decodemv.c to vp9_decodframe.c."
Dmitry Kovalev [Tue, 22 Oct 2013 01:12:08 +0000 (18:12 -0700)]
Moving functions from vp9_decodemv.c to vp9_decodframe.c.
This move is done to have all compressed header reading functions in one
place. Moved functions:
read_switchable_interp_probs
read_inter_mode_probs
read_comp_pred_mode
read_comp_pred
update_mv
read_mv_probs
Change-Id: I2aebb57d2826d03d11bf2f8fbbfc3a9978c4f9fb
Dmitry Kovalev [Tue, 22 Oct 2013 20:09:36 +0000 (13:09 -0700)]
Removing quantize_b_4x4 function pointer.
The pointer was asigned only once with vp9_regular_quantize_b_4x4, calling
this function directly now. Also removing unused declarations:
prototype_quantize_block
prototype_quantize_block_pair
prototype_quantize_mb
vp9_regular_quantize_b_4x4_pair
vp9_regular_quantize_b_8x8
Change-Id: I14325bc2f082336820671eafbc06126651b79f73
James Zern [Tue, 22 Oct 2013 20:08:44 +0000 (13:08 -0700)]
Merge "vp9 dec/com: only update frame counts when necessary (2)"
Dmitry Kovalev [Tue, 22 Oct 2013 20:05:24 +0000 (13:05 -0700)]
Merge "Using stride (# of elements) instead of pitch (bytes) in fdct4x4."
James Zern [Tue, 22 Oct 2013 20:00:33 +0000 (13:00 -0700)]
Merge changes I305fd55f,I13fe92b1
* changes:
vp9/dec: use loop filter worker for all inline cases
vp9_thread: add vp9_worker_execute()
James Zern [Tue, 22 Oct 2013 19:47:22 +0000 (12:47 -0700)]
Merge "Revert "Merge "SVC improvements"""
Dmitry Kovalev [Tue, 22 Oct 2013 19:21:37 +0000 (12:21 -0700)]
Reordering probability tables for consistency.
Putting vp9_kf_y_mode_prob[] before vp9_kf_uv_mode_prob[].
Change-Id: I2404910e35de1ee24ce46337e00c07eb1446e50f
Dmitry Kovalev [Tue, 22 Oct 2013 18:34:28 +0000 (11:34 -0700)]
Merge "Removing NUM_ prefix from constant names."
Dmitry Kovalev [Tue, 22 Oct 2013 18:34:17 +0000 (11:34 -0700)]
Merge "Using stride (# of elements) instead of pitch (bytes) in fdct8x8."
Dmitry Kovalev [Tue, 22 Oct 2013 18:34:09 +0000 (11:34 -0700)]
Merge "Using INTER_MODES constant instead of MB_MODE_COUNT - NEARESTMV."
Jingning Han [Tue, 22 Oct 2013 16:37:17 +0000 (09:37 -0700)]
Merge "Prevent left_block_mode stepping into left tile"
Jingning Han [Tue, 22 Oct 2013 00:01:57 +0000 (17:01 -0700)]
Prevent left_block_mode stepping into left tile
This commit uses left_available flag to decide if the left mode_info
struct is available for left_block_mode. As discussed with James
Zern (jzern@), this prevents the codec from fetching mode_info from
blocks in the left tile, which although effectively not used might
present concerns for multi-threaded tile decoding.
This is NOT a bit-stream change.
Change-Id: I1dc8cf1bcbf056688eee27c7bc5706ac4b4e0125
James Zern [Tue, 22 Oct 2013 09:04:51 +0000 (11:04 +0200)]
Revert "Merge "SVC improvements""
This reverts commit
a82001b1cfd688601bbda9b08b3d20e9b46b14d4, reversing
changes made to
f6d870f7ae6f968bdbc342af80c8f71fa98f2ac2.
This commit breaks windows builds and needs some work to fix those and
some additional comments.
Change-Id: Ic0b0228e36704b127e5e399ce59db26182cfffe7
Ivan Maltz [Mon, 21 Oct 2013 23:28:31 +0000 (16:28 -0700)]
Merge "SVC improvements"
Dmitry Kovalev [Mon, 21 Oct 2013 22:27:35 +0000 (15:27 -0700)]
Using stride (# of elements) instead of pitch (bytes) in fdct4x4.
Just making fdct consistent with iht/idct/fht functions which all use
stride (# of elements) as input argument.
Change-Id: I0ba3c52513a5fdd194f1e7e2901092671398985b
Dmitry Kovalev [Mon, 21 Oct 2013 21:43:37 +0000 (14:43 -0700)]
Merge "Inlining set_partition_seg_context function."
Ivan Maltz [Sat, 12 Oct 2013 01:03:00 +0000 (18:03 -0700)]
SVC improvements
These changes were originally made in the Stratacaster team-review repository
commit
e114bffcd82ad74c3696ec58e13c0ac895d6c82d
Author: Charles 'Buck' Krasic <ckrasic@google.com>
Date: Mon Oct 14 16:52:13 2013 -0700
Make dummy frame handling a bit more explicit, fixing bug
with single layer encodes.
Squashed commit of the following:
commit
1ebbfd976c0fadb02bf1ea562a2d0e3f0206daad
Merge: ac468dd 54e88b7
Author: Ivan Maltz <ivanmaltz@google.com>
Date: Fri Oct 11 17:29:58 2013 -0700
Move SVC code from vp9_spatial_scalable_encoder to libvpx module accessible from ffmpeg
commit
54e88b78b160becc9569fc3c6cb6b0a8c95dc357
Author: Ivan Maltz <ivanmaltz@google.com>
Date: Tue Oct 8 09:08:40 2013 -0700
common svc encoding code for sample app and ffmpeg
added svc_encodeframe.c, svc_context.h, svc_test.cc
vp9_spatial_scalable_encoder uses vpx_svc_encode
commit
5616ec8e2e3d3e8d277333d8a9242f6c70151162
Merge: 4528014 e29137d
Author: Ivan Maltz <ivanmaltz@google.com>
Date: Tue Oct 8 08:47:58 2013 -0700
Merge branch 'master' into stratacaster
commit
45280148450b1f3d61e390df8aadedf85cd5bce1
Merge: bb2b675 1ab60f7
Author: Sujeevan Rajayogam <sujee@google.com>
Date: Fri Oct 4 10:22:31 2013 -0700
Merge branch 'master' into stratacaster
commit
bb2b675e595dc9bfc8551e963edf56800c3aea61
Author: Sujeevan Rajayogam <sujee@google.com>
Date: Wed Oct 2 12:37:26 2013 -0700
Track individual frame sizes and psnrs instead of averages.
commit
c6d303b714795c81e7ceb4173967115c9f8ff5b7
Merge: fa87df9 3583087
Author: Sujeevan Rajayogam <sujee@google.com>
Date: Fri Sep 27 10:05:35 2013 -0700
Merge branch 'master' into stratacaster
commit
fa87df94fba923d9f7aeb8ae20c6e15f777e00b5
Merge: bf22d71 3c465af
Author: Sujeevan Rajayogam <sujee@google.com>
Date: Thu Sep 26 16:10:31 2013 -0700
Merge branch 'master' into stratacaster
commit
bf22d7144895a82e0c348ac177c8a261b9e2b88e
Author: Sujeevan Rajayogam <sujee@google.com>
Date: Thu Sep 26 11:10:34 2013 -0700
Parameterized quantizer, 16th scalefactors, more logging, enabled single layer encodes to generate baseline.
commit
ceffd7e6025b765f9886b5ea0f324248aa37e327
Author: Sujeevan Rajayogam <sujee@google.com>
Date: Thu Sep 19 10:04:49 2013 -0700
- Include new mode for 3 layer I frame with 5 total layers.
- Refactor svc api.
Change-Id: Ie4d775e21e006fa597d884c59488dc999478e9b5
Dmitry Kovalev [Mon, 21 Oct 2013 21:30:01 +0000 (14:30 -0700)]
Merge "Cleanup: using cm variable instead of cpi->common."
Dmitry Kovalev [Mon, 21 Oct 2013 19:02:19 +0000 (12:02 -0700)]
Inlining set_partition_seg_context function.
We used set_partition_seg_context() only before calls to:
1. update_partition_context()
2. partition_plane_context()
Moving these functions from vp9_blockd.h to vp9_onyxc_int.h and
inlining set_partition_seg_context into them. After that it is not
necessary to have {above, left}_seg_context fields in MACROBLOCKD struture,
so removing them also.
Change-Id: I4723f59e1c8f3788432b7f51185d8d747b3a97f9
Jingning Han [Mon, 21 Oct 2013 18:45:59 +0000 (11:45 -0700)]
Merge "Make memory alloc in pick_mode_context bsize aware"
Dmitry Kovalev [Mon, 21 Oct 2013 18:10:11 +0000 (11:10 -0700)]
Cleanup: using cm variable instead of cpi->common.
Change-Id: Iab334b5fd51dfa7e7f29963f8bdc62fd7355e56d
Dmitry Kovalev [Mon, 21 Oct 2013 17:55:02 +0000 (10:55 -0700)]
Merge "Moving allow_high_precision_mv from MACROBLOCKD to VP9_COMMON."
James Zern [Mon, 21 Oct 2013 16:07:50 +0000 (18:07 +0200)]
vp9 dec/com: only update frame counts when necessary (2)
missed one in vp9_detokenize.c in the last
+ add some asserts in vp9_decode_frame() to catch regressions
Change-Id: Ide67505114ee17efdafb13694aed0c09039e5a16
Yunqing Wang [Mon, 21 Oct 2013 17:45:20 +0000 (10:45 -0700)]
Merge "Fix d207 intra prediction SSSE3 functions"
Paul Wilkins [Mon, 21 Oct 2013 17:32:47 +0000 (10:32 -0700)]
Merge "Modified no memory rate control."
Paul Wilkins [Mon, 21 Oct 2013 17:32:35 +0000 (10:32 -0700)]
Merge "Reduced delta for kf/gf/arf when at maxq."
Dmitry Kovalev [Mon, 21 Oct 2013 17:12:14 +0000 (10:12 -0700)]
Moving allow_high_precision_mv from MACROBLOCKD to VP9_COMMON.
This value is a global frame-level flag, not a macroblock-level.
Change-Id: Ie8c5790a931150741c2167c00c3e3dd2cf26744d
Dmitry Kovalev [Mon, 21 Oct 2013 16:46:07 +0000 (09:46 -0700)]
Merge "Removing unused struct member mvcount[MV_VALS]."
James Zern [Mon, 21 Oct 2013 14:19:51 +0000 (07:19 -0700)]
Merge "Added necessary includes"
James Zern [Mon, 7 Oct 2013 10:38:06 +0000 (12:38 +0200)]
vp9_decodframe: limit scope of private function params
replace VP9D_COMP usage with the (slightly) more targeted
VP9_COMMON/MACROBLCKD structures.
Change-Id: I50d2579238d1a5d51ba5a82379266448ae64b24b
James Zern [Mon, 7 Oct 2013 10:26:26 +0000 (12:26 +0200)]
vp9_decode_tokens: limit scope of function params
replace VP9D_COMP usage with the (slightly) more targeted
VP9_COMMON/MACROBLCKD/struct segmentation structures.
Change-Id: Iabb3616e231417b0e17b7e4b384ea63167a81745
James Zern [Mon, 7 Oct 2013 10:03:53 +0000 (12:03 +0200)]
vp9_read_mode_info: limit scope of function params
replace VP9D_COMP usage with the (slightly) more targeted
VP9_COMMON/MACROBLCKD structures.
Change-Id: I09f6c4a5b0bcc20222210831b5b4c1582eced300
James Zern [Mon, 7 Oct 2013 10:00:15 +0000 (12:00 +0200)]
vp9_decodemv: limit scope of private function params
replace VP9D_COMP usage with the (slightly) more targeted
VP9_COMMON/MACROBLCKD structures.
Change-Id: Ieafac9ad035cba808ed91d3dfd321ba864b58905
James Zern [Mon, 21 Oct 2013 12:28:40 +0000 (14:28 +0200)]
vp9/dec: use loop filter worker for all inline cases
- uses vp9_worker_execute() in non-threaded case
+ removes hook reassignment
Change-Id: I305fd55f2be5cd92367373c929cdb9004066f90f
Paul Wilkins [Wed, 16 Oct 2013 09:59:55 +0000 (10:59 +0100)]
Modified no memory rate control.
This 2-pass rate control setting allocates bits based
on first pass stats to each kf group, gf group and individual
frame but does not correct the bits left and allocation after
each frame.
In other words it recommends a bit allocation for each frame
but does not try and correct any over or under spend on a
frame over the remainder of the clip. This reduces the accuracy
of rate control in terms of hitting an average bitrate but prevents
problems that may arise because early frames either use to many
or too few bits. This mode is currently more inclined to undershoot
than overshoot (particularly at higher data rates).
Also minor changes to rate of adaption when recode loop is not
enabled.
This mode is currently enabled by default for VBR.
It gives the following % performance gains.
derf +0.467, +1.072
yt 2.962, 2.645
stdhd 1.682, 1.595,
yt-hd 2.3, 2.174
Change-Id: I3c84a9bf8884e5b345698ff0e19187f792c2f3a0
Paul Wilkins [Sat, 19 Oct 2013 11:24:59 +0000 (12:24 +0100)]
Reduced delta for kf/gf/arf when at maxq.
Delta reduced because of concern about popping on some
very hard clips.
Also allow some frame recode at speed 2 for kf/gf/arf.
Change-Id: Ib47dff42da41aa6eec83b7285fcaaca24abb851e
Dmitry Kovalev [Sat, 19 Oct 2013 00:44:19 +0000 (17:44 -0700)]
Removing NUM_ prefix from constant names.
Renames for consistency with other constants:
NUM_FRAME_TYPES -> FRAME_TYPES
NUM_PARTITION_CONTEXTS -> PARTITION_CONTEXTS
Change-Id: I3db30acb2868eb0a424237c831087b2e264ec47f
Yunqing Wang [Sat, 19 Oct 2013 00:00:18 +0000 (17:00 -0700)]
Fix d207 intra prediction SSSE3 functions
This patch fixed a bug that caused 32bit PIC build mismatch. The
stack pointer was modified after "GET_GOT". Loading left pointer
from a hard-coded position gave wrong result.
Change-Id: Iea0aec6f917b12a6b3393ffc986bad74510248cc
Dmitry Kovalev [Fri, 18 Oct 2013 21:31:56 +0000 (14:31 -0700)]
Using INTER_MODES constant instead of MB_MODE_COUNT - NEARESTMV.
Change-Id: Ie5ec392904d03fd5485474b33be8408108e9d3c9
Yunqing Wang [Fri, 18 Oct 2013 21:23:17 +0000 (14:23 -0700)]
Disable d207 intra prediction SSSE3 functions
Commit "d207 intra prediction ssse3 using bytes" caused mismatch
while building 32bit PIC code. Disabled these SSSE3 functions
until we fix the bug.
Change-Id: Ic444e531d3d4058092fe6eab09006b44fcb18e4c
James Zern [Fri, 18 Oct 2013 20:56:11 +0000 (13:56 -0700)]
Merge "vp9 dec/com: only update frame counts when necessary"
Yaowu Xu [Fri, 18 Oct 2013 00:58:23 +0000 (17:58 -0700)]
Added necessary includes
To avoid the dependency on the order of header files included.
Change-Id: Ic142638d75fe95e6aba41b11664bfa15f076f793
James Zern [Fri, 18 Oct 2013 20:22:19 +0000 (13:22 -0700)]
Merge "vp9 com/dec: avoid reading unavailable above/left"
James Zern [Wed, 16 Oct 2013 14:20:01 +0000 (16:20 +0200)]
vp9 dec/com: only update frame counts when necessary
don't update them when frame_parallel_mode is true
Change-Id: I22ff131a6c6eea238415d10b729f195c7d6dc60d
Yaowu Xu [Fri, 18 Oct 2013 19:55:24 +0000 (12:55 -0700)]
Merge "Use lookup table to simplify logic"
Dmitry Kovalev [Fri, 18 Oct 2013 19:53:09 +0000 (12:53 -0700)]
Merge "Using stride (# of elements) instead of pitch (bytes) in fdct16x16."
Jingning Han [Wed, 16 Oct 2013 19:43:03 +0000 (12:43 -0700)]
Make memory alloc in pick_mode_context bsize aware
This commit makes the buffer allocation of zcoeff_blk array in
pick_mode_context block size aware. It calculates the number of
4x4 blocks in the partition and assigns the memory space accordingly.
This process (and the uninitialization) is done once for each encoding
pass. It allows memory copy of smaller buffer when possible.
For football at 600kbps, the runtimes improve by about 1%:
speed 1, 45961ms -> 45472ms
speed 2, 23863ms -> 23598ms
Change-Id: Id2ca24906fa89f46fa5fe742ec4b8efc2a61f877
James Zern [Wed, 16 Oct 2013 16:33:43 +0000 (18:33 +0200)]
vp9 com/dec: avoid reading unavailable above/left
in most cases at least the left column was a harmless race as it was
left unused later in the code.
Change-Id: I43211df66fb157c6feecf08c681add4fcf18b644
Yaowu Xu [Fri, 18 Oct 2013 19:39:28 +0000 (12:39 -0700)]
Merge "Converted assert to error checking"
Dmitry Kovalev [Fri, 18 Oct 2013 19:20:26 +0000 (12:20 -0700)]
Using stride (# of elements) instead of pitch (bytes) in fdct8x8.
Just making fdct consistent with iht/idct/fht functions which all use
stride (# of elements) as input argument.
Change-Id: Ibc944952a192e6c7b2b6a869ec2894c01da82ed1
Dmitry Kovalev [Fri, 18 Oct 2013 18:56:55 +0000 (11:56 -0700)]
Removing unused struct member mvcount[MV_VALS].
Change-Id: Iaaca88097904b889769901f2bd331f4fff0e5044
Dmitry Kovalev [Fri, 18 Oct 2013 18:51:24 +0000 (11:51 -0700)]
Merge "Passing block index explicitly instead of using get_sb_index()."
Dmitry Kovalev [Fri, 18 Oct 2013 18:49:33 +0000 (11:49 -0700)]
Using stride (# of elements) instead of pitch (bytes) in fdct16x16.
Just making fdct consistent with iht/idct/fht functions which all use
stride (# of elements) as input argument.
Change-Id: I2d95fdcbba96aaa0ed24a80870cb38f53487a97d
Yaowu Xu [Fri, 18 Oct 2013 18:24:00 +0000 (11:24 -0700)]
Converted assert to error checking
Change-Id: Icb8c677f910f588cc7c97e70f024787fe6789257
Yaowu Xu [Fri, 18 Oct 2013 18:45:12 +0000 (11:45 -0700)]
Merge "Added checking for invalid size"
Dmitry Kovalev [Wed, 16 Oct 2013 19:35:07 +0000 (12:35 -0700)]
Passing block index explicitly instead of using get_sb_index().
That makes decoder and encoder (only bitstream writing part) a little bit
simpler and faster. Moving get_sb_index() function to the encoder.
Change-Id: Ie91aaeefd69c84b085948267b33556a7666c6278
Yaowu Xu [Fri, 18 Oct 2013 17:32:56 +0000 (10:32 -0700)]
Added checking for invalid size
Change-Id: I9672a61e60a26e2934796f088880ce4cb49605be
Paul Wilkins [Fri, 18 Oct 2013 08:59:03 +0000 (01:59 -0700)]
Merge "Add missing calls to emms in the adaptive quantization code"
Yaowu Xu [Thu, 17 Oct 2013 23:02:53 +0000 (16:02 -0700)]
fix a VP8 build issue
coef_counts is now in cpi->mb, instead of cpi. The commit corrected the
mis-use and enable succefual build.
Change-Id: I0e77909d34571cfd2560c66b46b1f8fa0cd1a6b4
Yaowu Xu [Thu, 17 Oct 2013 18:09:14 +0000 (11:09 -0700)]
Use lookup table to simplify logic
In deciding the transform size for a given block in a given TX_MODE.
Change-Id: I1467da09853e69cd320695a24c04e19a2f3d04fb
Dmitry Kovalev [Thu, 17 Oct 2013 21:47:06 +0000 (14:47 -0700)]
Merge "Adding allow_hp as an argument to mv search functions."
Dmitry Kovalev [Thu, 17 Oct 2013 21:46:08 +0000 (14:46 -0700)]
Merge "Using TREE_SIZE macro for vp9_segment_tree."
Dmitry Kovalev [Thu, 17 Oct 2013 21:46:02 +0000 (14:46 -0700)]
Merge "Removing last_kf_gf_q member from VP9Common structure."
Guillaume Martres [Thu, 17 Oct 2013 18:04:57 +0000 (11:04 -0700)]
Add missing calls to emms in the adaptive quantization code
Also avoid using floating-point operations when adaptive quantization is
disabled.
Change-Id: I54936d7afb661df049cdb3ecd246d04ac2a9d8d3
Dmitry Kovalev [Thu, 17 Oct 2013 21:02:04 +0000 (14:02 -0700)]
Adding allow_hp as an argument to mv search functions.
Making this change in order to move allow_high_precision_mv field
from MACROBLOCKD structure to VP9_COMMON (because it is a frame level
flag).
Change-Id: I1d006ba36d938e0caf4d40fa051e2e38df9c1108
Dmitry Kovalev [Thu, 17 Oct 2013 20:02:28 +0000 (13:02 -0700)]
Using stride (# of elements) instead of pitch (bytes) in fdct32x32.
Just making fdct consistent with iht/idct/fht functions which all use
stride (# of elements) as input argument.
Change-Id: Id623c5113262655fa50f7c9d6cec9a91fcb20bb4
Yaowu Xu [Thu, 17 Oct 2013 16:01:14 +0000 (09:01 -0700)]
Merge "Prevent first pass from outputing invalid info"
James Zern [Wed, 16 Oct 2013 14:10:27 +0000 (16:10 +0200)]
vp9_thread: add vp9_worker_execute()
cherry-picked from:
commit
988b70844e03efcfcc075a9bc25d846670494f36
Author: Pascal Massimino <pascal.massimino@gmail.com>
Date: Fri Aug 2 11:15:16 2013 -0700
add WebPWorkerExecute() for convenient bypass
This is mainly for re-using the worker structs without using the
thread.
Change-Id: I8e1be29e53874ef425b15c192fb68036b4c0a359
Original source:
http://git.chromium.org/webm/libwebp.git
100644 blob
c0d318aee628fdf9ba4876451a28aa978f1066b8 src/utils/thread.c
100644 blob
c2b92c9fe353f8e514f78922f3d237204a9cbc66 src/utils/thread.h
Change-Id: I13fe92b1e94062bb99fdeeb7cb0b4b0575d27793
Dmitry Kovalev [Thu, 17 Oct 2013 01:01:48 +0000 (18:01 -0700)]
Removing last_kf_gf_q member from VP9Common structure.
It looks like we don't actually use this value.
Change-Id: If21d52b597337e7755f7ea817824fc2b1e477a14
Dmitry Kovalev [Thu, 17 Oct 2013 00:35:06 +0000 (17:35 -0700)]
Using TREE_SIZE macro for vp9_segment_tree.
Change-Id: I2965453135643d8f061b9fa9406fdca2db9c961e
Guillaume Martres [Thu, 17 Oct 2013 00:05:39 +0000 (17:05 -0700)]
Merge changes I6226456d,I97925178,I766c4b74
* changes:
Use a separate MODE_INFO stream for each tile column
Get rid of "this_mi", use "mi_8x8[0]" everywhere instead
Make the static_segmentation feature work again
Yaowu Xu [Wed, 16 Oct 2013 23:29:28 +0000 (16:29 -0700)]
Prevent first pass from outputing invalid info
First pass does not produce compressed data, therefore encode/decode
match check is not initialized.
Change-Id: I1971a6747337872a850987cc70ba267bd0f1d564
Guillaume Martres [Fri, 11 Oct 2013 23:14:29 +0000 (16:14 -0700)]
Use a separate MODE_INFO stream for each tile column
This should make parallel tiles decoding easier to implement.
Change-Id: I6226456dd11f275fa991e4a7a930549da6675915
Guillaume Martres [Thu, 10 Oct 2013 19:11:44 +0000 (12:11 -0700)]
Get rid of "this_mi", use "mi_8x8[0]" everywhere instead
The only case where they were intentionally pointing to different
structures was in mbgraph, and this didn't have the expected behavior
because both of these pointers are used interchangeably through the code
Change-Id: I979251782f90885fe962305bcc845bc05907f80c
Guillaume Martres [Thu, 10 Oct 2013 18:03:36 +0000 (11:03 -0700)]
Make the static_segmentation feature work again
Change-Id: I766c4b74db526efa4ff6dd2d95ef3e0beb45b6e5
Dmitry Kovalev [Wed, 16 Oct 2013 23:15:18 +0000 (16:15 -0700)]
Merge "Adding get_band_translate() function."
Guillaume Martres [Wed, 16 Oct 2013 23:07:05 +0000 (16:07 -0700)]
Merge "Prevent accidental changes to the previous frame mode_infos"
Yaowu Xu [Wed, 16 Oct 2013 22:53:37 +0000 (15:53 -0700)]
Merge "change to use vp9_idct_32x32_add"
Dmitry Kovalev [Wed, 16 Oct 2013 22:11:42 +0000 (15:11 -0700)]
Adding get_band_translate() function.
Moving code that gets band_translate array from get_scan_and_band()
function to get_band_translate() function. Renaming get_scan_and_band() to
get_scan().
Change-Id: I43047c205a1ca2a6e24be44db39dc04b7a385008
Dmitry Kovalev [Wed, 16 Oct 2013 22:00:48 +0000 (15:00 -0700)]
Inlining and removing fwd_txm16x16 and fwd_txm8x8 pointers.
Change-Id: I3528ba1c3fee761918509f9d9dc2d842c69f5a44
Dmitry Kovalev [Wed, 16 Oct 2013 21:47:17 +0000 (14:47 -0700)]
Merge "Cleanup of decode_coefs() function."
Yaowu Xu [Wed, 16 Oct 2013 21:39:14 +0000 (14:39 -0700)]
change to use vp9_idct_32x32_add
instead of vp9_idct32x32_1024_add by making use the eob positions
Change-Id: Iafcad20f0c75d8e00536c6a20dda76fe40a973fb
Dmitry Kovalev [Wed, 16 Oct 2013 20:13:25 +0000 (13:13 -0700)]
Merge "Removing print_prob_tree function and vp9_coeff_probs typedef."
Dmitry Kovalev [Wed, 16 Oct 2013 20:13:14 +0000 (13:13 -0700)]
Merge "Moving FILTER_BITS constant from vp9_convolve.h to vp9_filter.h."
Dmitry Kovalev [Wed, 16 Oct 2013 20:13:04 +0000 (13:13 -0700)]
Merge "Using constants instead of plain numbers."
Marco Paniconi [Thu, 3 Oct 2013 00:13:59 +0000 (17:13 -0700)]
Initial 1-pass.
Change-Id: I58c5436f5c95f6012fb2891cd2a02f76e4870b6a
Guillaume Martres [Mon, 7 Oct 2013 18:20:10 +0000 (19:20 +0100)]
Implement variance-based adaptive quantization
This should be similar to what x264 does with --aq-mode 1.
It works well with clips like parkjoy and touhou
(http://x264.nl/developers/Dark_Shikari/LosslessTouhou.mkv).
At low bitrates, the segmentation signaling overhead may negate the
benefits of this feature.
(PGW) Default changed to feature OFF to allow provisional merge.
Change-Id: I938abf9bb487e1d4ad3b0264ea03d9826275c70b
James Zern [Wed, 16 Oct 2013 08:44:24 +0000 (01:44 -0700)]
Merge "lint-hunks: remove runtime/int filter"
Adrian Grange [Wed, 16 Oct 2013 00:19:28 +0000 (17:19 -0700)]
Merge "Updated encoder to handle intra-only frames"
Johann [Wed, 16 Oct 2013 00:05:32 +0000 (17:05 -0700)]
Merge "Remove Windows-style newlines using dos2unix"