1. 11 Jul, 2022 1 commit
  2. 07 Jul, 2022 2 commits
  3. 06 Jul, 2022 2 commits
  4. 05 Jul, 2022 1 commit
  5. 04 Jul, 2022 1 commit
  6. 01 Jul, 2022 6 commits
    • Fallback to SDR if encoder doesn't support HDR (HLG only). · 67439206
      If the input is HDR (HLG), check encoder capabilities for HDR support
      and request tone-mapping to SDR during decoder configuration otherwise.
      Capabilities are only checked for API 31 and above, as HDR editing is
      not supported before.
      
      As the encoder capabilities check needs to happen before selecting the
      encoder to use (as this may depend on the resolution output by the
      effects chain), the EncoderWrapper checks all candidate encoders
      for the MIME type for HDR capabilities and only requests fallback to
      SDR if none of them support it.
      
      When the actual encoder is selected, the wrapper checks that it matches
      one of the encoders is checked capabilities for.
      
      PiperOrigin-RevId: 458511599
      (cherry picked from commit 474e2f2c)
      hschlueter committed
    • HDR: Configure GL shaders and encoder. · 39047b56
      Configure the GL shaders and encoder to take in HDR metadata.
      
      This mostly just consists of passing the Format.colorInfo through
      the VideoTranscodingSamplePipeline down to the encoder, rather than passing
      the PQ-ness down to the GL step.
      
      Due to b/237674316, this will remove HDR10+ support temporarily to introduce
      support for HLG10.
      
      Manually tested to confirm that HLG10 operations that don't affect color display
      correctly after this CL with "HDR editing" in the demo checked, and continue to display incorrectly (as before this CL) without the option unchecked.
      
      PiperOrigin-RevId: 458490810
      (cherry picked from commit 53db3056)
      huangdarwin committed
    • Fix error in frame rate handling. · b440b556
      The old getString() will throw because FRAME_RATE can only be float or int.
      
      PiperOrigin-RevId: 458481251
      (cherry picked from commit 2b6f62b2)
      claincly committed
    • Find only REGULAR_CODECS in EncoderUtil. · e3f1787c
      We used "ALL_COOECS" previously, and it is not necessary because "ALL_CODECS"
      additionally the codecs that support tunneling/secure decoding, which there
      is no use case in Transformer.
      
      PiperOrigin-RevId: 458470278
      (cherry picked from commit 8f89eba5)
      claincly committed
    • Round the frame rate in MediaFormat · f1d4a4ca
      Although MediaCodec claims supporting float frame rate, encoder init failed on
      API21 Nexus 5. Since it's just a performance hint to the codec, it's OK to
      generalize it to other API versions.
      
      PiperOrigin-RevId: 458434650
      (cherry picked from commit 821ab267)
      claincly committed
    • Fix MIDI command timestamp calculations and synthesization duration. · d03fb394
      - Improve variable naming to include time units for clarity
      - Fix existing timestamp calculations to respect time units as well as track tempo (default values for now)
      - Ensure the synthesizer produces PCM for the correct amount of time (including gaps between commands).
      
      PiperOrigin-RevId: 458428243
      (cherry picked from commit bce59b1a)
      hmzh committed
  7. 29 Jun, 2022 4 commits
  8. 28 Jun, 2022 1 commit
  9. 27 Jun, 2022 1 commit
    • Add timestamp to `Metadata` · 76310ad4
      `MetadataRenderer` is updated to output `Metadata` with its presentation time, in microseconds.
      
      PiperOrigin-RevId: 457444718
      (cherry picked from commit 6e9275c1)
      rohks committed
  10. 24 Jun, 2022 2 commits
  11. 23 Jun, 2022 4 commits
  12. 22 Jun, 2022 3 commits
  13. 20 Jun, 2022 2 commits
  14. 17 Jun, 2022 1 commit
  15. 16 Jun, 2022 1 commit
  16. 15 Jun, 2022 4 commits
    • Don't export broadcast receivers that don't require it · 54f72e73
      Issue: google/ExoPlayer#10287
      PiperOrigin-RevId: 455131138
      (cherry picked from commit 9267ba3f)
      olly committed
    • Replace FrameProcessorChain#isEnded with listener method. · da7ad371
      PiperOrigin-RevId: 455114693
      (cherry picked from commit 10050a1e)
      hschlueter committed
    • Use FrameProcessorChain#SurfaceProvider for encoder compat transform. · 5f142c4b
      This change adds a SurfaceProvider interface which is necessary to
      allow for texture processors whose output size becomes available
      asynchronously in follow-ups.
      VTSP's implementation of this interface wraps the encoder and provides
      its input surface together with the output frame width, height, and
      orientation as used for encoder configuration.
      The FrameProcessorChain converts the output frames to the provided
      orientation and resolution using a ScaleToFitTransformation and
      Presentation replacing EncoderCompatibilityTransformation.
      
      PiperOrigin-RevId: 455112598
      (cherry picked from commit d20f6849)
      hschlueter committed
    • Implement seeking to the start of a MIDI file · 5a3454c8
      - Fixed MidiExtractor state issues which caused seeking to behave unexpectedly. Ensures the extractor is now always in the file loading state after returning RESULT_END_OF_INPUT.
      - Fixed an infinite loop in MidiExtractor caused by the file data array having an initial size of 0. The extractor attempted to increase the capacity of the array by using this size of 0 in it's calculations.
      
      PiperOrigin-RevId: 455107511
      (cherry picked from commit e5260bee)
      hmzh committed
  17. 13 Jun, 2022 2 commits
  18. 10 Jun, 2022 2 commits