1. 25 Mar, 2022 3 commits
    • Improve throughput on devices requiring workaround · f41ebf6c
      On some devices, decoding gets stuck when the number of frames pending at the
      `SurfaceTexture` is too high. We added a workaround that only allows one frame
      to be pending at a time. That fixed the issue, however, based on on-device
      testing it seems that it's safe to queue more than one frame.
      
      Add a method that returns a safe estimate of the number of frames that can be
      pending at a time, and use this to limit the number of frames that can be
      released from the decoder but not processed by the frame processor chain.
      
      PiperOrigin-RevId: 437057075
      andrewlewis committed
    • Configure the frame sizes in FrameProcessorChain instead of caller. · dbe57af5
      Configuring the frame sizes between frame processors is now the
      FrameProcessorChain's rather than the caller's responsibility.
      The caller can getOutputSize() and override it for encoder fallback
      in configure().
      
      PiperOrigin-RevId: 437048436
      hschlueter committed
    • Move OpenGL setup to FrameProcessorChain#configure(). · 4e63bdf3
      The factory method is replaced by a public constructor and
      configure() method which configures the input/output surfaces
      and handles the OpenGL setup.
      
      This is a prerequisite for removing the responsibility of the
      caller to configureSizes() before creating the chain in a follow-up.
      
      PiperOrigin-RevId: 437028882
      hschlueter committed
  2. 24 Mar, 2022 9 commits
  3. 23 Mar, 2022 4 commits
    • Fix 11 ErrorProneStyle findings: · 8f635294
      * These grouping parentheses are unnecessary; it is unlikely the code will be misinterpreted without them
        (see http://go/bugpattern/UnnecessaryParentheses) (11 times)
      
      This CL looks good? Just LGTM and Approve it!
      This CL doesn’t look good? This is what you can do:
      * Revert this CL, by replying "REVERT: <provide reason>"
      * File a bug under go/error-prone-bug for category ErrorProneStyle if there's an issue with the CL content.
      * File a bug under go/rosie-bug if there's an issue with how the CL was managed.
      * Revert this CL and not get a CL that cleans up these paths in the future by
      replying "BLOCKLIST: <provide reason>". This is not reversible! We recommend to
      opt out the respective paths in your CL Robot configuration instead:
      go/clrobot-opt-out.
      
      This CL was generated by CL Robot - a tool that cleans up code findings
      (go/clrobot). The affected code paths have been enabled for CL Robot in //depot/google3/java/com/google/android/libraries/media/METADATA which is reachable following include_presubmits from //depot/google3/third_party/java_src/android_libs/media/METADATA.
      Anything wrong with the signup? File a bug at go/clrobot-bug.
      
      #codehealth
      
      Tested:
          Local presubmit tests passed.
      PiperOrigin-RevId: 436726763
      olly committed
    • Add javadoc for more FrameProcessorChain fields. · 91bef31e
      PiperOrigin-RevId: 436723149
      hschlueter committed
    • Remove SSIM calculation on SEF videos. · ee2d7d1e
      SEF is similar to frame editing, where the input and output videos are
      not intended to match, so SSIM will not provide a reliable value. To
      check SSIM correctly in future, we would need to provide
      golden/expected video files to compare output against.
      
      PiperOrigin-RevId: 436707240
      samrobinson committed
    • Remove FrameEditor reference. · 4e248cb6
      PiperOrigin-RevId: 436702840
      hschlueter committed
  4. 22 Mar, 2022 9 commits
  5. 21 Mar, 2022 5 commits
  6. 18 Mar, 2022 4 commits
  7. 17 Mar, 2022 5 commits
  8. 16 Mar, 2022 1 commit
    • Fix FrameEditor intermediate texture size. · cd169958
      ExternalCopyFrameProcessor's output dimensions match the input
      size not the output size. So the intermediate texture size
      should match the input size.
      
      Also rename configureOutputDimensions to configureOutputSize.
      
      PiperOrigin-RevId: 435058789
      hschlueter committed