1. 14 Sep, 2017 1 commit
    • Hui Su's avatar
      VP9 level targeting: add a new AUTO mode · c3a6943c
      Hui Su authored
      In the new AUTO mode, restrict the minimum alt-ref interval and max column
      tiles adaptively based on picture size, while not applying any rate control
      constraints.
      
      This mode aims to produce encodings that fit into levels corresponding to
      the source picture size, with minimum compression quality lost. However, the
      bitstream is not guaranteed to be level compatible, e.g., the average bitrate
      may exceed level limit.
      
      BUG=b/64451920
      
      Change-Id: I02080b169cbbef4ab2e08c0df4697ce894aad83c
      c3a6943c
  2. 02 Sep, 2017 1 commit
  3. 01 Sep, 2017 7 commits
    • clang-format's avatar
      apply clang-format · 7587a975
      clang-format authored
      Change-Id: If4c3e8a396d0fcb304f407b44e28cac3219f038c
      7587a975
    • James Zern's avatar
      .clang-format: update to 4.0.1 · 053bd263
      James Zern authored
      based on Google style with the following differences:
      
      3a4
      > # Generated with clang-format 4.0.1
      13c14
      < AllowShortCaseLabelsOnASingleLine: false
      ---
      > AllowShortCaseLabelsOnASingleLine: true
      23c24
      < BraceWrapping:
      ---
      > BraceWrapping:
      43c44
      < ConstructorInitializerAllOnOneLineOrOnePerLine: true
      ---
      > ConstructorInitializerAllOnOneLineOrOnePerLine: false
      46,47c47,48
      < Cpp11BracedListStyle: true
      < DerivePointerAlignment: true
      ---
      > Cpp11BracedListStyle: false
      > DerivePointerAlignment: false
      51c52
      < IncludeCategories:
      ---
      > IncludeCategories:
      78c79
      < PointerAlignment: Left
      ---
      > PointerAlignment: Right
      80c81
      < SortIncludes:    true
      ---
      > SortIncludes:    false
      
      Change-Id: Ibc0ef87a516b8eae88d426dfdd7624be57e7b87c
      053bd263
    • Peter Boström's avatar
      be2ba48c
    • James Zern's avatar
      334e9abb
    • Peter Boström's avatar
      Prevent data race from low-pass filter. · 9ab4d9df
      Peter Boström authored
      Makes main thread wait for the filter level to be picked to avoid a race
      between the LPF thread and update_reference_frames(). This also
      re-enables the failing tests under thread_sanitizer where this data race
      was detected.
      
      BUG=webm:1460
      
      Change-Id: I7f5797142ea0200394309842ce3e91a480be4fbc
      9ab4d9df
    • Peter Boström's avatar
      03191f73
    • Peter Boström's avatar
      Add atomics to vp8 synchronization primitives. · d42e8761
      Peter Boström authored
      Fixes issue on iPad Pro 10.5 (and probably other places) where threads
      are not properly synchronized. On x86 this data race was benign as load
      and store instructions are atomic, they were being atomic in practice as
      the program hasn't been observed to be miscompiled.
      
      Such guarantees are not made outside x86, and real problems manifested
      where libvpx reliably reproduced a broken bitstream for even just the
      initial keyframe. This was detected in WebRTC where this device started
      using multithreading (as its CPU count is higher than earlier devices,
      where the problem did not manifest as single-threading was used in
      practice).
      
      This issue was not detected under thread-sanitizer bots as mutexes were
      conditionally used under this platform to simulate the protected read
      and write semantics that were in practice provided on x86 platforms.
      
      This change also removes several mutexes, so encoder/decoder state is
      lighter-weight after this change and we do not need to initialize so
      many mutexes (this was done even on non-thread-sanitizer platforms where
      they were unused).
      
      Change-Id: If41fcb0d99944f7bbc8ec40877cdc34d672ae72a
      d42e8761
  4. 31 Aug, 2017 5 commits
  5. 30 Aug, 2017 3 commits
  6. 29 Aug, 2017 6 commits
  7. 28 Aug, 2017 2 commits
  8. 25 Aug, 2017 7 commits
  9. 24 Aug, 2017 8 commits