This project is mirrored from https://aomedia.googlesource.com/aom. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
  1. 10 Mar, 2022 1 commit
    • Tom Finegan's avatar
      Fix race condition in BUILD_SHARED_LIBS configs. · 23f646ae
      Tom Finegan authored
      Duplicate the ASM custom build rules: build each ASM object
      once for each library. This avoids creating a race condition
      on the output objects for the assembly custom build rules
      when building the static and shared libraries from the same
      configuration.
      
      BUG=aomedia:3214
      
      Change-Id: I8c7c44d26ffc1b6c2b9fe2556bf9da800d90c496
      (cherry picked from commit 4d5b1222)
      23f646ae
  2. 15 Feb, 2022 1 commit
    • Wan-Teh Chang's avatar
      Replace AOM_EXT_PART_ABI_VERSION with old value · 87460cef
      Wan-Teh Chang authored
      In the definition of AOM_ENCODER_ABI_VERSION, replace
      AOM_EXT_PART_ABI_VERSION with its value (3) in libaom v3.2.0, so as to
      not break the ABI version check in aom_codec_enc_init_ver() when an
      application compiled against libaom v3.2.0 passes the old value of
      AOM_ENCODER_ABI_VERSION to aom_codec_enc_init_ver().
      
      Mark the external partition API as experimental. This was announced in
      the libaom v3.2.0 release notes, but I neglected to add a note to the
      source code.
      
      Bug: 3236
      Change-Id: Iefbe11ebce94c1ae7ca1e5f05f434eb71824b8fa
      87460cef
  3. 05 Feb, 2022 1 commit
  4. 02 Feb, 2022 3 commits
    • James Zern's avatar
      reconinter_enc: quiet -Wstringop-overflow warnings · bea49eed
      James Zern authored
      w/gcc-11 in
        av1_build_inter_predictors_for_planes_single_buf
        av1_build_wedge_inter_predictor_from_buf
      
      the array parameters' size may vary based on the number of planes;
      replace [3] w/[] and a size comment
      
      Change-Id: I7e9e87bffca4b67ff1e88295383dbf49f5c43a22
      (cherry picked from commit 3a862d3d)
      bea49eed
    • venkat sanampudi's avatar
      Correct the referencing of an argument search_sites · 80f7dbae
      venkat sanampudi authored
      While referencing the argument 'search_sites' in functions
      av1_make_default_fullpel_ms_params() and av1_set_mv_search_method(),
      the size of this array is used as NUM_SEARCH_METHODS instead of
      allocated size NUM_DISTINCT_SEARCH_METHODS. This CL corrects the same
      for better understanding.
      
      BUG=aomedia:3205
      
      Change-Id: I1a6c20f1755b2e920638941df2cc93268d94cbb2
      (cherry picked from commit 67dc8da7)
      80f7dbae
    • James Zern's avatar
      quiet -Warray-parameter warnings · 09807d35
      James Zern authored
      w/gcc-11
      this matches the definition of the function with the declaration
      
      this is similar to the change in libvpx:
      7fbcee49d quiet -Warray-parameter warnings
      
      Bug: aomedia:3204
      Change-Id: I757b731b9560cb0b0ceec4ec258ec5af5a183b3d
      (cherry picked from commit 06e13e81)
      09807d35
  5. 01 Feb, 2022 1 commit
  6. 29 Jan, 2022 5 commits
  7. 27 Jan, 2022 5 commits
  8. 25 Jan, 2022 6 commits
    • James Zern's avatar
      update .mailmap · bb634783
      James Zern authored
      Bug: aomedia:3223
      Change-Id: Iae307273d57930b42f1cc0d4a1422c84c8e2c5a6
      (cherry picked from commit d4dfe02d)
      bb634783
    • James Zern's avatar
      aom_ports.cmake: don't add x86_abi_support.asm to source list x2 · b76de396
      James Zern authored
      this avoids compilation failures when projects enable ASM language
      support in project(). this file was never included in libaom_srcs.*
      
      aom & aom_static were missed in the removal from aom_ports in:
      676f00c61 aom_ports.cmake: don't add x86_abi_support.asm to source list
      
      Bug: aomedia:3201
      Bug: aomedia:3223
      Change-Id: Id26e7a02955eab43c83ca26bd414fe34d4b34e50
      (cherry picked from commit 8cba6495)
      b76de396
    • James Zern's avatar
      aom_ports.cmake: don't add x86_abi_support.asm to source list · 65673888
      James Zern authored
      this avoids compilation failures when projects enable ASM language
      support in project(). this file was never included in libaom_srcs.*
      
      Bug: aomedia:3201
      Bug: aomedia:3223
      Change-Id: Ifc11ea9d1ef568c8695c0b3e305030d686b8ab9f
      (cherry picked from commit 07deb29e)
      65673888
    • James Zern's avatar
      README.md: replace master w/main · bcc5361d
      James Zern authored
      for aomedia.googlesource.com refs; main is the preferred branch now and
      pushing to master will be blocked from submitting
      
      Bug: b/204460717
      Bug: aomedia:3223
      Change-Id: I5b306bc2b4bf15c30689ee8e8e0cb5c42b7b76ef
      (cherry picked from commit 77165f5d)
      bcc5361d
    • James Zern's avatar
      update .mailmap · 3911f12c
      James Zern authored
      Bug: aomedia:3223
      Change-Id: Idb6c28b3651c01bfad379f6793abaee6d8d8bada
      (cherry picked from commit 56a666e4)
      3911f12c
    • James Zern's avatar
      aom_mem: fix overflow in alignment calculation · 4ca9c5cb
      James Zern authored
      the calculation of the aligned allocation size could rollover if the
      requested size is near SIZE_MAX
      
      + add a missing overflow check for aom_calloc()
      
      Bug: aomedia:3195
      Bug: aomedia:3223
      Change-Id: I385de3344dadf9af56f0673b1e1a69b254e73c92
      (cherry picked from commit 0929aa0a)
      4ca9c5cb
  9. 24 Nov, 2021 4 commits
    • Tarundeep Singh's avatar
      FPMT: Recompute frame parallel contexts · 0192bca7
      Tarundeep Singh authored
      Disabled FPMT when unsupported configurations are set through control
      calls. Recomputed maximum number of frame contexts at the beginning of
      each sub-gop to account for updates to supported configurations.
      Cleanup in is_fpmt_config function.
      
      Change-Id: I1c343110e0b8cebc1584895cd43ff1ba1779768e
      0192bca7
    • Fyodor Kyslov's avatar
      AV1 RT: Adjust VBP thresholds on intra frames · 10fe614e
      Fyodor Kyslov authored
      This allows to speed up intra frame encoding to 35-40% with overall
      quality impact of <0.5% (rtc and rtc_derf sets speed 9 and 10)
      
      Change-Id: Ic29e2287103c13b79fa241405abfcd00b69685f2
      10fe614e
    • Jerome Jiang's avatar
      Add flag to disable content based q adjustment · 089794f2
      Jerome Jiang authored
      This flag is added for rate control library for av1, to disable content
      dependency so the test can run the encoder without content related
      adjustment to qp.
      
      BD rate loss:
                 aq 0      aq 3
      rtc        1%        2.2%
      rtc_derf   1.7%      3.2%
      
      Change-Id: I3c88f000b44e43ec537096232647776c44eda6e3
      089794f2
    • Mudassir Galagnath's avatar
      Allintra: Introduce adapt_top_model_rd_count_using_neighbors sf · 43a92e13
      Mudassir Galagnath authored
      The sf top_intra_model_count_allowed indicates the number of top
      model rds to be stored during intra mode decision and these stored
      model rds are used to prune the luma intra modes. This CL
      introduces aggressive pruning of modes by reducing the number of
      candidates used to store the model rd and by adapting the index of
      the candidate for pruning based on neighbor blocks and quantizer
      information. This change is applicable for speed >= 6.
      
      For AVIF still-image encode,
      
                Instruction Count   BD-Rate Loss(%)
      cpu-used     Reduction(%)     psnr       ssim
          6           5.481         0.0222    -0.0281
          7           4.170         0.2591     0.2361
          8           2.437         0.1108     0.1157
          9           0.000         0.0000     0.0000
      
      STATS_CHANGED
      
      Change-Id: Ib1bf8cae2f78c640c387050e6a2d4dfb988e742e
      43a92e13
  10. 23 Nov, 2021 2 commits
  11. 22 Nov, 2021 1 commit
    • Paul Wilkins's avatar
      Auto select noise synthesis level for all intra · 2b52e653
      Paul Wilkins authored
      Add code to estimate the noise level in a still image and choose
      a noise synthesis level.
      
      The auto selection of the noise synthesis level will only occur where
      --allintra is set on the command line and --denoise-noise-level > 0.
      
      Also on the command line:
      
      if --enable-dnl-denoising=1 then the source image will also be filtered.
      If --enable-dnl-denoising=0  then the source image will not be filtered.
      
      Filtering of the source image is much more likely to cause some loss
      fine detail if a strong filter level is chosen and is not recommended.
      
      Adjustment from previous patch increases filtering on some images
      where subjective evaluation said it was too low and reduced it on
      some high complexity images where it was too high (by lowering the
      edge threshold).
      
      Change-Id: I90c99c3c12ddb8f5155f0ad7d87c35767ffccb38
      2b52e653
  12. 21 Nov, 2021 1 commit
    • Angie Chiang's avatar
      Fix AV1/ResizeModeTestLarge.ResizeModeTest/14 · dd950e6c
      Angie Chiang authored
      Before this CL, apply_filtering will be triggered with overlay
      frame. This will make
      cpi->source = av1_realloc_and_scale_if_required() happen in the
      end of denoise_and_encode().
      
      BUG=aomedia:3194
      
      Change-Id: I38a7dd63fd0dc4708931bc01f5707744e914ad16
      dd950e6c
  13. 20 Nov, 2021 4 commits
    • Angie Chiang's avatar
      Fix seg fault when --enable-keyframe-filtering=2 · b4bedf50
      Angie Chiang authored
      enable_keyframe_filtering > 1 will introduce an extra overlay frame at
      key frame location. However when
      baseline_gf_interval == MAX_STATIC_GF_GROUP_LENGTH, we can't
      afford to have an extra overlay frame.
      Otherwise, the gf_group->size will exceed MAX_STATIC_GF_GROUP_LENGTH,
      which leads to memory error.
      
      A cheap solution is to turn off kf_decomp when
      baseline_gf_interval == MAX_STATIC_GF_GROUP_LENGTH.
      
      BUG=aomedia:3163
      
      Change-Id: I05c604065496d698611f58ceb5c6ac7c7bbf5ebe
      b4bedf50
    • Fyodor Kyslov's avatar
      AV1 RT: Cleanup redundant condition in low temp variance · 794a4efe
      Fyodor Kyslov authored
      we only go into this function if short_circuit_low_temp_var set to 1.
      There is no need to check MVs as left part of || operator is always true
      
      Change-Id: I98e325f3ffb81981fdeef35df735f00778ba0892
      794a4efe
    • chiyotsai's avatar
      Remove nonrd condition in var based partitioning · 2fed774e
      chiyotsai authored
      Prior to this commit, the condition was added to prevent a regression.
      The regression was due to an incorrect segment id, which led to the
      wrong q index being used.
      
      This commit fixes the issue by replacing
      av1_set_offsets_without_segment_id with av1_set_offsets.
      
      Performance:
       SPD_SET | TESTSET | AVG_PSNR | OVR_PSNR |  SSIM   |  SPD
      ---------+---------+----------+----------+---------+-------
          5    |   rtc   | -0.617%  | -0.487%  | -0.923% | +0.9%
          5    |rtc_derf | -0.256%  | -0.243%  | -0.178% | -2.0%
      ---------+---------+----------+----------+---------+-------
          6    |   rtc   | -1.283%  | -1.147%  | -1.593% | -0.3%
          6    |rtc_derf | -0.127%  | -0.199%  | -0.120% | -1.6%
      ---------+---------+----------+----------+---------+-------
      
      STATS_CHANGED
      
      Change-Id: I643cde296344bfa68e0f9c655bfed0d85cd7e404
      2fed774e
    • Aniket Wanare's avatar
      Move the allocation of mi buffers to encode stage · b7d5529a
      Aniket Wanare authored
      The mbmi buffers are used to store mode information at block level.
      In allintra encode though minimum partition sf setting can be 8x8,
      these buffers were allocated at init time by assuming minimum
      partition size as 4x4.
      
      As the minimum partition size is known in the encode stage, this CL
      moves the allocation of mi buffers from init stage to encode stage
      and the buffers are allocated based on minimum partition size.
      
      For AVIF still-image encode with speed = 9,
      
                   HEAP Memory reduction(%)
      Resolution   threads=1    threads=4
      640x360        19.96        15.78
      768x512        19.14        15.54
      832x480        23.59        20.20
      1280x720       24.15        21.50
      
      For threads=4, an average encode time reduction of ~13.75% is
      observed for 360p-720p resolutions.
      
      HEAP memory reduction was measured using the following command.
      $valgrind --tool=massif ./avifenc ...
      
      Change-Id: I2cfb2a594a6bc3a7f748910a05d88d2f7316f336
      b7d5529a
  14. 19 Nov, 2021 5 commits
    • venkat sanampudi's avatar
      Allintra: Delay top-right sync for row-mt · f77347a4
      venkat sanampudi authored
      When row-mt is enabled, a thread waits for the encoding of
      the top-right superblock to be complete before encoding the
      current superblock. This wait time is reduced in allintra
      mode, by delaying the sync wait until the data from top-right
      superblock is needed. This change is applicable for
      resolutions < 4k in speed >= 9 as cost update frequencies
      are set to COST_UPD_OFF for these resolutions.
      
      For AVIF still-image encode, an average encode time reduction
      of ~6.12% is observed for 360p-720p resolutions with speed=9
      and 4 threads.
      
      Change-Id: I3cdeb7ad58df976788cc6bd058184dfc65b63593
      f77347a4
    • Yunqing Wang's avatar
      Remove unused edge detection · 78ce82eb
      Yunqing Wang authored
      Removed unused edge detection and related unit tests. So we
      don't need to maintain and support it.
      
      BUG=aomedia:3188
      
      Change-Id: I92fcee5a34d0949b49ed98ee01176078b68a6418
      78ce82eb
    • James Zern's avatar
      aom/aomdx.h: remove configure option references · 1f49a6c0
      James Zern authored
      and update them to the CMake equivalent
      
      Bug: aomedia:2673
      Change-Id: Ib1e950e4481552460314a567451999e1e2a89d11
      1f49a6c0
    • Marco Paniconi's avatar
      rtc: Fix prediction on keyframes for spatial layers · 691b0ded
      Marco Paniconi authored
      On superframes whose base is key: fix the reference
      predicton structure so that the SL layer (for SL > 0)
      only does the inter-layer prediction from the SL-1 layer.
      This requires fixes to the sample encoder and in the
      nonrd_pickmode.
      
      In the current code SL2 was either predicting only from
      SL0 (for ksvc), or it was predicting from both SL0 & SL1
      (in non-ksvc mode), which was not the intended behavior.
      So this fix improves the key frame quality for ksvc and
      reduces the encode_time for non-ksvc.
      
      Change-Id: Ifde750c741b53b42e4f27d493945036fb7e0e334
      691b0ded
    • Akshata Jadhav's avatar
      Extend prune_zero_mv_with_sse speed feature to speed 3 · 7118af54
      Akshata Jadhav authored
      This patch extends SF prune_zero_mv_with_sse to speed 3
      with reduced aggressiveness.
      
      cpu-used   Instruction Count       BD-Rate Loss(%)
                    Reduction(%)    avg.psnr   ovr.psnr   ssim
          3           1.093         -0.0162    -0.0093   -0.0038
      
      STATS_CHANGED
      
      Change-Id: I95bfe546653722db870201578642e74fca9ac415
      7118af54