1. 12 Oct, 2017 7 commits
    • Yue Chen's avatar
      filter_intra: make fi mode index entropy coded · 63ce36fc
      Yue Chen authored
      Make fi mode index entropy coded instead of using raw bits. Mode
      cost estimation in key-frame RDO is updated as well. Modification
      to inter frame RDO is not included in this patch.
      Also key-frame y mode cdf table is re-trained since fi modes are
      attached to DC_PRED
      
      Key frame BDRate:
      -0.399% lowres, -0.339% midres
      
      Change-Id: I9ccf478b0a2e48fb1870fe8451e45e2c858a5f63
      63ce36fc
    • Yue Chen's avatar
      entropy_stats: modify output for intra coder · 1f9343a3
      Yue Chen authored
      Align the output of prob optimizer with what is needed by intra
      coder.
      
      Change-Id: Icdecb33240a5691c8c292946faa00d0bfebee742
      1f9343a3
    • David Barker's avatar
      Make SEG_LVL_{SKIP,ZEROMV} blocks be single-ref-only · d92f3560
      David Barker authored
      This patch modifies the interpretation of SEG_LVL_SKIP and
      SEG_LVL_ZEROMV slightly, to fix a decoder crash and to save bits
      in the intended use cases of these segment flags.
      
      Previously, blocks using either of these segment flags could
      signal reference frames just like any other block. But the mode
      was implicitly taken to be ZEROMV. This worked fine in VP9, but
      crashed for compound blocks in AV1 since those should use
      ZERO_ZEROMV instead.
      
      Now we make it so that SEG_LVL_SKIP and SEG_LVL_ZEROMV imply
      that the block is single-reference. The reference to use is taken
      from the SEG_LVL_REF_FRAME segment feature if that is present,
      or is set to LAST_FRAME if not. See the attached bug report
      for the reasoning behind this.
      
      As a related change, we also teach the encoder how to deal with
      the combination of SEG_LVL_SKIP + SEG_LVL_REF_FRAME.
      
      BUG=aomedia:675
      
      Change-Id: I5e657cbfc1f08395a0301cba701edfb1682502a5
      d92f3560
    • Yaowu Xu's avatar
      Align stack arrays to be 16-byte aligned · 2e6f6a73
      Yaowu Xu authored
      This fixes a number of segmentation faults.
      
      BUG=aomedia:874
      BUG=aomedia:658
      
      Change-Id: I9d1c549e9c7d44a03c5b1b35e8de389c085d95b8
      2e6f6a73
    • Yaowu Xu's avatar
      Fix msvc 2015 build · 989dd5bf
      Yaowu Xu authored
      BUG=aomedia:900
      
      Change-Id: I9ca596f677e174ccd12a6e4eb927733d25e76f58
      989dd5bf
    • Yaowu Xu's avatar
      Use correct MACRO · fbe1477b
      Yaowu Xu authored
      Change-Id: I6d24382fe9afbc86068e56e55d5a495ced57b9a0
      fbe1477b
    • Rupert Swarbrick's avatar
      Support 4:1 partitions in count_segs_sb · 2725693d
      Rupert Swarbrick authored
      BUG=aomedia:898
      
      Change-Id: I5c3eb62407c8025650d4023dd408674381312d26
      2725693d
  2. 11 Oct, 2017 19 commits
  3. 10 Oct, 2017 14 commits
    • Ryan's avatar
      soft enable new_multisymbol · f0e39196
      Ryan authored
      enable new_multisymbol by default since it has been enabled.
      
      Change-Id: I6df662c6ae949ac9f834f788ff93b12a1a1eff28
      f0e39196
    • Zoe Liu's avatar
      Clean up the debug code for frame_sign_bias · d38575f4
      Zoe Liu authored
      Change-Id: Ia4b25afaed5dbd48c8e68fe42a479d7ddb645876
      d38575f4
    • Cheng Chen's avatar
      Loop filtering after each superblock · 5ad5b289
      Cheng Chen authored
      The patch is to enable loop filtering for intra block copy.
      
      Apply loop filtering right after each superblock is encoded.
      Use a constant filter level for now. In future updates, the filter
      level should be optimized by LPF_SB and better guess value.
      
      Change-Id: I0a5797b5ba5384c00044a8ec4a495dc75aa0f3fe
      5ad5b289
    • Hui Su's avatar
      Add function to control palette usage · e87fb237
      Hui Su authored
      Add av1_allow_palette() to control whether palette mode should be enabled.
      
      Change-Id: Iee24636451be42eb36093dc3453bc39c7e686276
      e87fb237
    • Jingning Han's avatar
      Format clean-up av1_rtcd_defs.pl · 3ba27237
      Jingning Han authored
      Change-Id: I7a94cdef41e5e451247de939313feb58cd991e7f
      3ba27237
    • Jingning Han's avatar
      Make inter mode context depend on nearest neighbor · abf6f284
      Jingning Han authored
      Reduce the inter mode context model dependency to be within the
      nearest neighbor search.
      
      Change-Id: I0b9e7d360919a809b5400f233040bb474ab56768
      abf6f284
    • Jingning Han's avatar
      Disable all_zero_flag in opt-ref-mv · 426caba9
      Jingning Han authored
      This breaks the inter mode context dependency on the full spatial
      neighbor search.
      
      Change-Id: Ic27fb63531ce2c949756ea10752a7a8e7b7b1046
      426caba9
    • Jingning Han's avatar
      Reduce newmv context model dependency size · 8a8c50af
      Jingning Han authored
      Make the newmv context model dependent only on the nearest spatial
      neighbors reference motion vectors count and the newmv coded block
      counts.
      
      Change-Id: I8db9ca453c4fefddafba5f3476ee0d733f87dfc0
      8a8c50af
    • Yi Luo's avatar
      Highbd D45E intrapred SSE2/AVX2 speedup · 56ad3dd3
      Yi Luo authored
      Function  SSE2 vs C  AVX2 vs C
      4x4       ~4.5x
      4x8       ~4.5x
      8x4       ~11.7x
      8x8       ~12.7x
      8x16      ~14.0x
      16x8                 ~21.7x
      16x16                ~24.0x
      16x32                ~28.7x
      32x16                ~20.5x
      32x32                ~24.4x
      
      Change-Id: Iaca49727d8df17b7f793b774a8d51a401ef8a8d1
      56ad3dd3
    • Rupert Swarbrick's avatar
      Fix call to av1_get_rest_ntiles in restoration.c · 88f2d444
      Rupert Swarbrick authored
      This was getting the wrong count of restoration tiles for chroma
      planes with subsampling and a smaller restoration tilesize.
      
      BUG=aomedia:886
      
      Change-Id: I5c9c17ed4ad91111bcc6fa6205a9550b53f84a64
      88f2d444
    • Yaowu Xu's avatar
      Reduce default lag-in-frames · 2b4c1781
      Yaowu Xu authored
      This is to reduce encoder meomory footprint, tests show no performance
      difference between 17 and 25, as the largest alt-ref group currently
      is 16.
      
      Change-Id: Ia629c30f93c5db33a2d2fae4b757c8b0d589eb4a
      2b4c1781
    • Urvang Joshi's avatar
      horzonly-frame-superres: Apply to superres only. · 69fde2eb
      Urvang Joshi authored
      Plain resize is now unaffected by this flag. That is, plain resizing is
      performed for both width and height always.
      
      Change-Id: I652204d68ca5266f0a1a413927828038aa5dfdf6
      69fde2eb
    • Urvang Joshi's avatar
      Make horzonly-frame-superres a config flag. · 3d8bcb2a
      Urvang Joshi authored
      This allows it to be enabled/disabled during configure/cmake and also
      allows us to specify dependencies.
      
      If 0: superres scaling happens for both width and height.
      If 1: superres scaling happens ONLY for width.
      
      Change-Id: Id00c2a9c9886b638e06c6b92de453b85bee1d8fa
      3d8bcb2a
    • Tom Finegan's avatar
      Correct the aom{dec,enc} output paths in CMake. · 938172c2
      Tom Finegan authored
      They're expected in the root of the config dir and not
      in the examples sub dir.
      
      Change-Id: I26e28e5a341f5bf8db4554269db198501172345e
      938172c2