1. 17 Jan, 2023 12 commits
  2. 10 Jan, 2023 16 commits
  3. 04 Jan, 2023 12 commits
    • Optimise bundling for `Timeline.Window` and `Timeline.Period` · 2a77f1e2
      Improves the time taken to construct playerInfo from its bundle from ~400 ms to ~300 ms.
      
      Also made `Timeline.Window.toBundle(boolean excludeMediaItem)` public as it was required to assert a condition in tests.
      
      PiperOrigin-RevId: 499512353
      rohks committed
    • Rename the SamplePipelines · 827bd6b8
      The old names are not really correct anymore because:
      - The Audio/VideoTranscodingSamplePipelines do not decode anymore.
      - The pipelines now mux the encoded data.
      
      PiperOrigin-RevId: 499498446
      kimvde committed
    • Improve encoder resolution capability checking. · 7d727c88
      Whilst testing fallback functionality, I found that we were
      aggressively reducing the resolution if it was not supported. A quick
      test found that we could reduce by a much smaller increments.
      Performance wise it appears these checks are incredibly quick.
      
      The code for checking supported sizes was duplicated, with one case
      having a bug because of this duplication (2/3 case). This CL abstracts
      this into a loop.
      
      PiperOrigin-RevId: 499497646
      samrobinson committed
    • Merge BaseSamplePipeline and SamplePipeline · e6527ec1
      PiperOrigin-RevId: 499469006
      kimvde committed
    • Check bundles in `MediaItem` to verify keys are skipped · 9d431a52
      Added another check in each of these tests to make sure we don't add keys to bundle for fields with default values.
      
      Also fixed comments of similar changes in `AdPlaybackStateTest` and `MediaMetadataTest`.
      
      PiperOrigin-RevId: 499463581
      rohks committed
    • Move video decoding to AssetLoader · 8a8c81d5
      PiperOrigin-RevId: 499454273
      kimvde committed
    • Reduce flakiness of GL release test · bec46b66
      Based on experimentation it seems that buffers can occasionally (roughly 1% of test runs) be dropped when rendering off-screen from EGL on the emulator. Specifically, in this test, sometimes after rendering three buffers with distinct timestamps only the first and third buffers' timestamps are handled in the `ImageReader`'s image available callback causing the assertion checking all frames rendered to fail. This behavior seems to be independent of the nanosecond presentation time attached to the buffers (as expected for off-screen rendering).
      
      Introducing a pause of 1 second between rendering each frame reduces the flake rate to around 1/2000. This increases the run time of some of the tests, so this change also removes the 5 second `FRAME_PROCESSING_WAIT_MS` (it seems to be unnecessary when rendering off-screen) and instead uses a latch to wait until the frame processor has handled 'end of stream'.
      
      PiperOrigin-RevId: 499440591
      andrewlewis committed
    • Demo app fixes · 67294609
      - Do not fail silently if selectedEffects is null.
      - Do not add an empty overlay effect to the Transformer to avoid
        transcoding video all the time.
      
      PiperOrigin-RevId: 499168759
      kimvde committed
    • Remove unnecessary exceptions in tests · 09d43114
      PiperOrigin-RevId: 499160043
      kimvde committed
    • Misc small fixes · 220a5b9f
      - Improve AssetLoader Javadoc
      - Fix Javadoc of sample pipelines
      - Improve Javadoc of Transformer.startTransformation
      - Move thread hops for Transformer listener callbacks to
        TransformerInternal
      
      PiperOrigin-RevId: 499156604
      kimvde committed
    • Deprecated onTransformationError methods are not called. · 46f56546
      When a listener method is deprecated, the new method should (by
      default) called through to the deprecated one. This is because any
      class that implements the method that is now deprecated needs to still
      receive that callback.
      
      It appears when onTransformationError(MediaItem, Exception) was
      deprecated in favour of onTransformationError(MediaItem,
      TransformationException), this deprecation was the wrong way round, and
      the newer callback - onTransformationError(MediaItem,
      TransformationResult, TransformationException) continued this mistake.
      
      This CL now corrects this.
      
      PiperOrigin-RevId: 498221504
      samrobinson committed
    • Remove mentions of player in TransformationException · 8e6daec9
      PiperOrigin-RevId: 497921432
      kimvde committed