1. 16 May, 2014 1 commit
  2. 15 May, 2014 5 commits
  3. 14 May, 2014 13 commits
    • levytamar82's avatar
      AVX2 To VP9 Block Error Optimization · 1fbab853
      levytamar82 authored
      vp9_block_error_sse2 can only handle 16 bytes at a time but
      the function requires to handle a sequence of 32 bytes at a time
      so each 16 bytes is handled in a different register.
      With AVX2 optimization the 32 bytes can be handled in one register instead
      of two in the SSE2
      The vp9_block_error was optimized by 85%.
      The user level was optimized by 1.2%
      Change-Id: Ia8fffe60e61eff7432a5fbd538757894f6c319fd
    • Yaowu Xu's avatar
      vp9_ratectrl.c: cleanup -wextra warning · 6f350810
      Yaowu Xu authored
      Change-Id: I7ca46fa26acd80a21210cb8d9584ad812cb995bf
    • Yaowu Xu's avatar
      vp9_tokenize.c: cleanup -wextra warnings · 051332a6
      Yaowu Xu authored
      Change-Id: I85854f1ab2d60feea0bfe6b2141f89a998777ecb
    • Yaowu Xu's avatar
      vp9_quantizer.c: cleanup -wextra warnings · c39a361b
      Yaowu Xu authored
      Change-Id: If5a3c48a8c554018a5d63c1541a2900f15767a00
    • Paul Wilkins's avatar
      Clear unused parameter warning. · 69544cfe
      Paul Wilkins authored
      Caused by a parameter which is only used under
      Change-Id: I2c0979d215d45f56da1a38bb13aa214bde52a640
    • Yaowu Xu's avatar
      vp9_mbgraph.c: cleanup -wextra warnings · e05a17bf
      Yaowu Xu authored
      Change-Id: Ia6e2c2741adbf45f98a447dbb401506f95a2b0c8
    • Paul Wilkins's avatar
      Silence unused parameter warnings. · 82cf1070
      Paul Wilkins authored
      The various motion search functions share a
      common function prototype. In the case of
      vp9_full_range_search() two of the parameters
      are not needed.
      Change-Id: I0e190af54a3b3f276409f20e8ec55912f9b0b798
    • Paul Wilkins's avatar
      Fix int compared to unsigned int warnings. · 2493e0f3
      Paul Wilkins authored
      Also delete vp9_set_roimap() which is not used in VP9.
      Change-Id: I48c60b1dc8794c6a234f9c3d95e2debb7bdb3fd5
    • Paul Wilkins's avatar
      Silence unused parameter warnings. · 200f9aed
      Paul Wilkins authored
      Remove two unused parameters in the function
      Change-Id: Ic192734586291cf5400926eeb8e720e69d40835c
    • Paul Wilkins's avatar
      Clean up two unused parameters. · 7b4258da
      Paul Wilkins authored
      Unused parameters to encode_without_recode_loop()
      Change-Id: Ia94ce09199cd2419f26964eb5b53db2b7718cf03
    • Paul Wilkins's avatar
      Simplify 2 pass KF bitrate allocation · 6122ca87
      Paul Wilkins authored
      Simplify the calculation of KF bitrate in similar way
      to previous patch for GF/arf.
      This has no impact on derf or std hd sets but gives a
      small net gain of ~0.1% for yt and yt-hd sets.
      Change-Id: Ida64ac1428d9c2a62adb67056fadbf0180eff030
    • Paul Wilkins's avatar
      Further two pass clean up. · d677ea1f
      Paul Wilkins authored
      The variation in boost calculation for gf and arf groups
      is not significant enough to justify the extra complexity.
      Also removed some other spurious code that no longer
      has much material impact.
      The handling of the rare case, where the boost bits
      number is less than the number of bits a that would
      be allocated if a frame was not boosted, will be dealt
      with in a subsequent patch.
      This change actually helps on all sets a little by
      ~0.1% - 0.2% with slightly bigger gains on SSIM.
      Change-Id: Id42c1ac22a80a8c4993cfa0e51bc733eb9ed4f75
    • Deb Mukherjee's avatar
      Remove Wextra warnings from vp9_sad.c · 7ab9a958
      Deb Mukherjee authored
      As a side-effect, the max_sad check is removed from the
      C-implementation of VP8, for consistency with VP9, and to
      ensure that the SAD tests common to VP8/VP9 pass.
      That will make the VP8 C implementation of sad a little slower
      but given that is rarely used in practice, the impact will be
      Change-Id: I7f43089fdea047fbf1862e40c21e4715c30f07ca
  4. 13 May, 2014 2 commits
  5. 12 May, 2014 7 commits
    • Dmitry Kovalev's avatar
      Moving loopfilter call to vp9_decode_frame(). · ae7d3ef3
      Dmitry Kovalev authored
      Inline loopfilter has been already handled in vp9_decode_frame().
      Collecting all similar code in one place now.
      Change-Id: I358a0280fc7c2b27cca520bc1e8c16c4eb6491dd
    • Yaowu Xu's avatar
      vp9_pickmode.c: Removed unused function parameters · 3e81ee26
      Yaowu Xu authored
      Change-Id: I4ec07d3935dc56ca16ea4ba1e5730b09f1bf1f21
    • Yaowu Xu's avatar
      Change to use proper type · 26cb7bee
      Yaowu Xu authored
      Change-Id: If1afb9f3eaec88079d1d97907870409bce691c2a
    • Yaowu Xu's avatar
      fixed comparison of different int types. · 7145e3f7
      Yaowu Xu authored
      Change-Id: Iaa5543eb9e17589d46d9ed2bc363e2646ed4e01e
    • Yaowu Xu's avatar
      Cleanup unused parameters · d22faee9
      Yaowu Xu authored
      Remove unused function parameters from:
      Change-Id: I07725e5099cf98486e70c9c70babb0cd785c58a9
    • Paul Wilkins's avatar
      Clean up of firstpass.c · 702e2583
      Paul Wilkins authored
      Re-factor duplicate code.
      Add two pass check for use of section_intra_rating as
      it is un-initialised in the 1 pass and rt case.
      Change-Id: I93120796f07961b8a21fb26e1a9f0d3d13949994
    • Paul Wilkins's avatar
      First pass clean up. · 00d54aa3
      Paul Wilkins authored
      One of a series of changes to clean up two pass
      allocation as precursor to support for multiple arf
      or boosted frames per GF/ARF group.
      This change pulls out the calculation of the total bits
      allocated to a GF/ARF group into a function, to aid
      readability and reduce the line count for define_gf_group().
      This change should have no material impact on output.
      Change-Id: I716fba08e26f9ddde3257e7d9b188453791883a3
  6. 10 May, 2014 1 commit
    • Jingning Han's avatar
      Apply constrained partition search range to non-RD mode decision · 734c5ffa
      Jingning Han authored
      This commit enables a chessboard pattern for partition search. All
      the black blocks run regular partition search ranging from 8x8 to
      32x32. The rest white blocks take the nearby blocks' information
      to adaptively decide the effective search range.
      The compression performance for rtc set at speed -5 is down by 1.5%.
      For pedestrian 1080p at speed -5, the runtime goes from 41594 ms to
      39697 ms, i.e., about 5% faster.
      Change-Id: Ia4b96e237abfaada487c743bca08fe1afd298685
  7. 09 May, 2014 3 commits
  8. 08 May, 2014 4 commits
  9. 07 May, 2014 3 commits
    • Paul Wilkins's avatar
      Remove separate arf and gf minq tables. · ed30c8ef
      Paul Wilkins authored
      Merged minq tables for arf and gf cases.
      These tables were almost the same and for
      VBR the arf table was not used at all.
      Change-Id: Ie3c87e91dab613cf06f6945ac1ace0e0e4213d34
    • Paul Wilkins's avatar
      Rate control adjustment. · 38ff3e32
      Paul Wilkins authored
      Small adjustment to the active Q range calculations.
      These changes should slightly extend the available Q range
      for KF/GF/ARF and narrow it for other frames.
      The results for this change in isolation are broadly positive
      for SSIM and average PSNR and slightly up but mixed for opsnr.
      derf +0.293% opsnr, +1.286% SSIM
      std-hd + 0.528% opsnr, + 1.746% SSIM
      yt +0.056% opsnr, +0.457% SSIM
      yt-hd -0.147% opsnr, + 0.226% SSIM
      Change-Id: If065280342027ecc5d44b49fc1d440dfef041002
    • Paul Wilkins's avatar
      Revert "Add an MMX fwht4x4" · 33b1c457
      Paul Wilkins authored
      Includes changes that are not compatible with VS windows builds.
      Amongst other things stdint.h is not supported in VS.
      This reverts commit 89fbf3de.
      Change-Id: Ifa86d7df250578d1ada9b539c9ff12ed0c523cdd
  10. 06 May, 2014 1 commit
    • Jingning Han's avatar
      Tune rate-distortion modeling to account for frame light change · 74f98e6f
      Jingning Han authored
      When the variance is far less than sse, the block is considered to
      be under light change. All the energy is compacted into DC coeff
      and can be coded at low cost. In such situation, switch the rate-
      distortion modeling from sse+var based back to variance based.
      Note that this is a temporary solution to handle the rare situations
      where the scene light changes.
      Change-Id: I1ee0fe2b9eda6b5fac40152e1841bf23f4d229fd