1. 21 Feb, 2018 1 commit
    • Sebastien Alaiwan's avatar
      Remove experimental flag of LV_MAP · cad5ebce
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      Change-Id: Ic3438799335c6cd05f170302f49bd47e1f705c24
  2. 20 Feb, 2018 2 commits
  3. 19 Feb, 2018 1 commit
    • Hui Su's avatar
      Add cdf_update_mode experiment · 1cb1c002
      Hui Su authored
      Allow the CDF update to operate in different modes, e.g. update vs no
      The update mode is transmitted in the uncompressed frame header of
      every keyframe and intra-only frame.
      This patch only adds bitstream signaling and API support. The
      implementation of the update modes will be in later patches.
      Change-Id: Ic9fcd60e8a75f9c01f414253823d78cf9b3113dd
  4. 15 Feb, 2018 2 commits
    • Yaowu Xu's avatar
      Remove CONFIG_TX64X64 · d3d4159f
      Yaowu Xu authored
      The experiment is fully adopted.
      Change-Id: I6cc80a2acf0c93c13b0e36e6f4a2378fe5ce33c3
    • David Barker's avatar
      [NORMATIVE-SYNTAX, intrabc] Disallow intrabc+superres · 218556e2
      David Barker authored
      Superres should not be used together with intrabc, for the same
      reasons why the other loop filters are disabled when intrabc is
      used. However, we actually read superres information first,
      so the simplest change is to only read allow_intrabc if superres is off.
      Change-Id: I55c4c8ace72ab3fac9417da5cf803883be7efb84
  5. 14 Feb, 2018 2 commits
    • Imdad Sardharwalla's avatar
      Prevent undefined behaviour for AMVR experiment · bf2cc016
      Imdad Sardharwalla authored
      Sequences starting with intra-only frames previously resulted in undefined
      behaviour with CONFIG_AMVR == 1, as seq_force_integer_mv was only read for
      This patch makes changes as follows:
      - The syntax element force_screen_content_tools has been added to the
        SequenceHeader struct, and is read and written correspondingly
      - seq_force_integer_mv has been renamed to force_integer_mv and moved to the
        SequenceHeader struct, and is read and written correspondingly (provided that
        force_screen_content_tools != 0)
      - The conditional reading/writing of allow_screen_content_tools now happens for
        every frame after reading/writing error_resilient_mode (CONFIG_OBU == 1) or
        the sequence header (CONFIG_OBU == 0)
      - The conditional reading/writing of cur_frame_force_integer_mv now happens for
        every frame after reading/writing allow_screen_content_tools
      Change-Id: I689476fc2fa781dc8ec6fc8da91926cc8cfd3dc2
    • Yunqing Wang's avatar
      [NORMATIVE] Consolidate reference mv clamping · 3e225434
      Yunqing Wang authored
      Clamp_mv_ref happens in multiple places in ref_mv search, which can be
      convoluted as reported in issue 1124. This change is to consolidate
      the clamping into one place.
      Borg test result on lowres set:
      avg_psnr:    ovr_psnr:   ssim:
        0.000       0.000      0.001
      Change-Id: I1649d5b5f37683c9c30e493c6eed13a808ab543a
  6. 12 Feb, 2018 4 commits
    • Luc Trudeau's avatar
      Use PLANE_TYPE to index angle_delta · 7bb3a4f0
      Luc Trudeau authored
      This is important because only one angle delta
      is used for both chroma planes. Using PLANE_TYPE
      increases readability and reduces the chance of
      people trying to access the angle_delta for
      AOM_PLANE_V (i.e. 2).
      Change-Id: I26f452e6fcee8bd7fd1e670e73f457d6937e0da9
    • Jingning Han's avatar
      Remove deprecated macros for inter mode context · 59b1263e
      Jingning Han authored
      This will not cause coding stats change.
      Change-Id: I0c527a8906f99170cf66d2360654bf65af81c7e0
    • Cheng Chen's avatar
      Add frame_offset to mismatch debug tool · bb87c66d
      Cheng Chen authored
      Use frame_offset to locate the location of mismatch.
      Change-Id: I17ceb60febf5f30041a1d8e35556ae7034d095cd
    • Zoe Liu's avatar
      [NORMATIVE] Unify comp ref context design · 4917295b
      Zoe Liu authored
      This patch uses the neighboring ref counts to design the contexts
      for the coding of the first reference frame of a reference pair for
      the compound prediction. This aligns the context design with that
      for the second reference frame of a reference pair for the
      compound prediction.
      The new designed contexts are much simpler than that in the baseline.
      The number of contexts for each binary symbol is reduced from 5 to
      3. Further, the logic for each context only depends on the collected
      neighboring ref counts, which is straightforward to derive.
      The default CDFs for the first reference frame coding have been
      updated using aom_entropy_optimizer.
      Experimental results demonstrate a small coding gain for Google test
      sets of both lowres and midres, with 30 frames coded for the default
      coding tool setup:
      lowres: avg_psnr -0.077%; ovr_psnr -0.076%; ssim -0.106%
      midres: avg_psnr -0.059%; ovr_psnr -0.066%; ssim -0.037%
      Change-Id: I781abbe4616dc3f3a7213ec663946ff9844eb830
  7. 10 Feb, 2018 1 commit
  8. 09 Feb, 2018 2 commits
  9. 07 Feb, 2018 2 commits
    • Jingning Han's avatar
      Re-design inter mode context for compound modes · 7ae50fda
      Jingning Han authored
      Unify the context model referencing for both single and compound
      inter modes. Make the context model for compound inter mode coding
      independent of the single ones search.
      Need to train the model in the final run. Currently provides 0.05%
      compression performance improvements.
      Change-Id: I9597df4aa293fc7aa2b1becb6dfd68f911d6f278
    • Jingning Han's avatar
      Remove all_zero_mvs_flag from the rate-distortion loop · 5bc4d1c1
      Jingning Han authored
      This flag has been removed from bit-stream definition to improve
      the context parsing latency. Remove the corresponding controls
      from the rate-distortion optimization process. No coding stats
      will be changed.
      Change-Id: Ice1c5473635471494ad21e2068d7e3a19ff7121e
  10. 06 Feb, 2018 2 commits
    • Imdad Sardharwalla's avatar
      Move sb_size to sequence header · 4ec84aba
      Imdad Sardharwalla authored
      sb_size, mib_size and mib_size_log2 have been moved from the AV1_COMMON struct
      to the SequenceHeader struct, as they are sequence-level parameters. sb_size is
      now written to and read from the end of the sequence header.
      Change-Id: I9d450518a1b898677976acd80088b8ea9ee9d7ce
    • Zoe Liu's avatar
      Silence a build warning. · d6989bef
      Zoe Liu authored
      Change-Id: I4ace32db8580eb8df4091bb4a43f2868609fbb0d
  11. 05 Feb, 2018 1 commit
  12. 03 Feb, 2018 1 commit
  13. 02 Feb, 2018 2 commits
  14. 01 Feb, 2018 6 commits
  15. 31 Jan, 2018 3 commits
    • Hui Su's avatar
      Reduce memory usage of inter_tx_size[] in MB_MODE_INFO · 1379beb7
      Hui Su authored
      Reduce the length of inter_tx_size[] from 1024 to 16.
      On a cif test sequence,
      encoder memory consumption decreases by 18% (380MB -> 312MB);
      decoder memory consumption decreases by 56% (21.4MB -> 9.4MB).
      Change-Id: Ie11dd055255d200954b704b8c2ad8ca3dff7bf5c
    • Urvang Joshi's avatar
      Cleanup some fragile aspects of rd_pick_partition. · 00c6e6f7
      Urvang Joshi authored
      (1) Explicitly reset RD stats for each partition.
      PARTITION_SPLIT was the only one resetting the RD_STATS in 'sum_rdc'.
      But this was working because:
      - PARTITION_SPLIT was tried before VERT, HORZ, VERT_4 and HORZ_4; and
      - RD cost calculations in VERT, HORZ, VERT_4 and HORZ_4 partitions
      implicitly discarded existing value in sum_rdc
      However, that was very fragile; explicitly resetting the stats every
      time is much safer.
      (2) Using a separate variable 'temp_best_rd_cost' was fragile as someone
      may forget to update the same. So, we use best_rdc.rdcost directly.
      Change-Id: Icd75f25c34bb0f1806e691784648bcffce2417e6
    • Imdad Sardharwalla's avatar
      Added HighBD support for mismatch debugging · 5b084ee1
      Imdad Sardharwalla authored
      Enabling CONFIG_MISMATCH_DEBUG with highbd streams was producing undefined
      behaviour. This patch adds support for highbd frames.
      Change-Id: I36ff4ddbb9b2e884e4a5b76485247a20b1f5db3c
  16. 30 Jan, 2018 1 commit
  17. 29 Jan, 2018 2 commits
  18. 27 Jan, 2018 1 commit
  19. 26 Jan, 2018 1 commit
    • Jingning Han's avatar
      Properly reset the skip_mode element in mb_mode_info · 3da65bff
      Jingning Han authored
      The skip_mode element might re-use prior frame's coding decision
      for a current coding block rate-distortion search. Properly reset
      it to be zero for regular rate-distortion mode search.
      This improves the coding performance for ext-skip by 0.07% for
      Change-Id: Idbda5b441e3eb844e03ca07bd174b4b7f8a7cb59
  20. 25 Jan, 2018 2 commits
    • Yaowu Xu's avatar
      Add num_plane to av1_copy_tree_context() · 68377282
      Yaowu Xu authored
      To support monochrome video and fixes a nightly test segfault.
      Change-Id: I87dd3d5ca79e8f0ce51ee31738205ae5a53af072
    • Zoe Liu's avatar
      Simplify context identification for coding ref frames · fa8bad19
      Zoe Liu authored
      This patch simply aggregates the checking on the counts of certain
      reference frames in the neighboring above and left blocks. It does
      not incur any coding performance change.
      Change-Id: I59a962ba95e7ab16731ce97371ec5709a582a0ba
  21. 24 Jan, 2018 1 commit
    • Zoe Liu's avatar
      Use split and horz/vert to predict horzA/B/vertA/B · 6001fb05
      Zoe Liu authored
      In rd_pick_partition(), the first one or two blocks for the partition
      types HORZ_A, HORZ_B, VERT_A, and VERT_B may be already evaluated,
      during the evaluation of SPLIT, HORZ, and VERT. This patch saves the
      RD pick mode results and tries to reuse them to remove the duplicate
      RD mode evaluation operations.
      This patch should not incur any coding performance loss.
      Testing on a few lowres frames: when CFL is off, this patch obtains
      >10% encoder speedup.
      Change-Id: I932e233bc93873de62a88230254df44494236dde