- 27 Jun, 2022 1 commit
-
- 24 Jun, 2022 2 commits
-
-
PiperOrigin-RevId: 457023382 (cherry picked from commit 4819b285)
hschlueter committed -
This will be useful for downgrading to a lower resolution during a slow preview and for processing slide-shows once sequential multi-asset editing is supported. PiperOrigin-RevId: 457017255 (cherry picked from commit 30c52c58)
hschlueter committed
-
- 23 Jun, 2022 4 commits
-
-
PiperOrigin-RevId: 456814150 (cherry picked from commit f3893c14)
hschlueter committed -
videoEncoderFormatUnsupported_completesWithError() has recently been flaky on API 31 emulators on presubmit because a different exception than the expected exception is thrown. This disables it on those emulators to reduce testing noise until the underlying problem is investigated and resolved. PiperOrigin-RevId: 456765512 (cherry picked from commit 938d3c2e)
hschlueter committed -
This change is just renaming. There is no functional change intended. The FrameProcessor interface will be created in a follow-up. PiperOrigin-RevId: 456741628 (cherry picked from commit 709224fb)
hschlueter committed -
PiperOrigin-RevId: 456728032 (cherry picked from commit 352967f6)
samrobinson committed
-
- 22 Jun, 2022 3 commits
-
-
After this change GlEffects can use any GlTextureProcessor not just SingleFrameGlTextureProcessor. MediaPipeProcessor now implements GlTextureProcessor directly which allows it to reuse MediaPipe's output texture for its output texture and avoids an extra copy shader step. PiperOrigin-RevId: 456530718 (cherry picked from commit 69ab7941)
hschlueter committed -
After this change, FrameProcessorChain chains any GlTextureProcessors instead of only SingleFrameGlTextureProcessors. The GlTextureProcessors are chained in a bidirectional manner using ChainingGlTextureProcessorListener to feed input and output related events forward and release events backwards. PiperOrigin-RevId: 456478414 (cherry picked from commit 555ab97e)
hschlueter committed
- 20 Jun, 2022 2 commits
-
-
PiperOrigin-RevId: 456064021 (cherry picked from commit f5d8800d)
huangdarwin committed -
This is useful for testing Transformer in the same way as it is used in tests and to see only the real transformation time. PiperOrigin-RevId: 456058466 (cherry picked from commit 931562c2)
hschlueter committed
-
- 17 Jun, 2022 1 commit
-
-
In follow-ups the FrameProcessorChain will set an instance of this listener for each GlTextureProcessor to chain it with its previous and next GlTextureProcesssor. PiperOrigin-RevId: 455628942 (cherry picked from commit 981baae7)
hschlueter committed
-
- 16 Jun, 2022 1 commit
-
-
The wrapper * catches exceptions for each task and notifies the listener (this will be used more in follow-ups when processFrame is split into lots of listeners and callbacks), * removes finished tasks from the queue and signals any exceptions that occurred to the listener each time a new task is executed. PiperOrigin-RevId: 455345184 (cherry picked from commit ee847d92)
hschlueter committed
-
- 15 Jun, 2022 4 commits
-
-
PiperOrigin-RevId: 455114693 (cherry picked from commit fdfca880)
hschlueter committed -
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 ea7f1ca1)
hschlueter committed -
- 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 84c43f85)
hmzh committed
- 13 Jun, 2022 2 commits
-
- 10 Jun, 2022 2 commits
-
-
The native GL errors are in an arbitrary order according to https://www.khronos.org/registry/OpenGL-Refpages/es2.0/xhtml/glGetError.xml This means any of them could contain the most useful message so it's better to use all for the GlException's message rather than picking the last message and logging all others. PiperOrigin-RevId: 454130460 (cherry picked from commit d6a6b447)
hschlueter committed
- 09 Jun, 2022 3 commits
-
-
Based on https://developer.android.com/reference/android/media/MediaCodec#using-an-output-surface, frame dropping behaviour depends on the target SDK version. After this change transformer will only use MediaFormat#KEY_ALLOW_FRAME_DROP if both the target and system SDK version are at least 29 and default to its pre 29 behaviour where each decoder output frame must be processed before a new one is rendered to prevent frame dropping otherwise. Also remove deprecated Transformer.Builder constructor without a context and the context setter. PiperOrigin-RevId: 453971097 (cherry picked from commit a105d033)
hschlueter committed -
Transformer always enabled glAssertionsEnabled, so there should be no functional change. ExoPlayer previously disabled glAssertionsEnabled, so GlUtil logged GlExceptions instead of throwing them. The GlExceptions are now caught and logged by the callers so that there should also be no functional change overall. This change also replaces EGLSurfaceTexture#GlException with GlUtil#GlException. PiperOrigin-RevId: 453963741 (cherry picked from commit cc1f32d0)
hschlueter committed
-
- 08 Jun, 2022 3 commits
-
-
This removes the prior restriction of needing to remember not to crop and set aspect ratio in the same Presentation.Builder, and makes each class a bit more targeted. This is partially made feasible by the past work to merge consecutive MatrixTransformations into a single MatrixTransformationFrameProcessor, which ensures that there's no loss in quality between successive MatrixTransformations. PiperOrigin-RevId: 453660582 (cherry picked from commit c5b881e0)
huangdarwin committed -
PiperOrigin-RevId: 453633920 (cherry picked from commit cdb80387)
hschlueter committed -
SingleFrameGlTextureProcessor is now an abstract class containing a default implementation of the more flexible GlTextureProcessor interface while still exposing the same simple abstract methods for single frame processing it previously did. FrameProcessorChain and GlEffect will be changed to use GlTextureProcessor in follow-ups. PiperOrigin-RevId: 453633000 (cherry picked from commit 457f4461)
hschlueter committed
-
- 06 Jun, 2022 3 commits
-
-
PiperOrigin-RevId: 453168843 (cherry picked from commit 8d326312)
christosts committed -
This change makes MediaSessionPermissionTest.removeMediaItems() non-flaky. This is a quick fix though it'd be good to refactor this test file. PiperOrigin-RevId: 453162764 (cherry picked from commit 34ca3bc3)
christosts committed -
Implementations of this interface will be able to drop or add frames, change timestamps, accept multiple input frames before producing output, and process frames on their own background thread. A default implementation of this interface will be added to SingleFrameGlTextureProcessor in a follow-up. PiperOrigin-RevId: 453159835 (cherry picked from commit 63436390)
hschlueter committed
-
- 31 May, 2022 2 commits
-
-
This internal listener avoids wrapping the TransformationExceptions in PlaybackExceptions that are handled via the Player.Listener and is also used for FrameProcessingExceptions which already avoided the PlaybackException layer previously. This listener will also be useful in follow-ups for encoder-related TransformationExceptions that are thrown in the SurfaceProvider that will be called on the GL thread. PiperOrigin-RevId: 452074575 (cherry picked from commit 35b5147e)
hschlueter committed -
Once the more advanced GlTextureProcessor interface exists, it will be possible to change the output size of a GlTextureProcessor between frames. To keep the re-configuration based on the frame sizes minimal, things indepedent of the frame size, such as the GlProgram, can be initialized in the constructor. PiperOrigin-RevId: 451997584 (cherry picked from commit 87ab96d3)
hschlueter committed
-
- 30 May, 2022 1 commit
-
-
Gives a bit more information upon failures PiperOrigin-RevId: 451882968 (cherry picked from commit 9d460023)
aquilescanta committed
-
- 08 Aug, 2022 1 commit
-
-
PiperOrigin-RevId: 465318320
tonihei committed
-
- 22 Jul, 2022 1 commit
-
-
r1.0.0 beta02
Rohit Kumar Singh committed
-
- 21 Jul, 2022 2 commits
-
-
Rohit Singh committed
-
- 15 Jul, 2022 1 commit
-
- 13 Jul, 2022 1 commit
-
-
The call doesn't currently reset the already loaded suppliers and factories. Also fix the supplier loading code to use a local copy of the current dataSourceFactory to avoid leaking an updated instance to a later invocation. Issue: androidx/media#116 PiperOrigin-RevId: 460721541 (cherry picked from commit adc50515)
tonihei committed
-