- 08 Aug, 2022 27 commits
-
-
TransformationException error codes were previously tied to OpenGL but other FrameProcessor implementations are possible. So this CL renames the error codes. Also, remove GL_INIT_FAILED error code, as FrameProcessor implemenations may initialize resources on a background thread after the factory method returns, so it's not obvious how to distinguish between initialization failures and processing failures. PiperOrigin-RevId: 463704902
hschlueter committed -
This allows non-GL effects to be passed to custom FrameProcessor implementations. PiperOrigin-RevId: 463696384
hschlueter committed -
PiperOrigin-RevId: 463646211
hschlueter committed -
Both are used in the public FrameProcessor interface, so they should be public too. PiperOrigin-RevId: 463454859
hschlueter committed -
Downsampled from 3840x2160 resolution videos using ffmpeg: `ffmpeg -i <inputFilename> -filter:v scale=<width>:<height> -c:a copy <outputFilename>` PiperOrigin-RevId: 463454628
samrobinson committed -
PiperOrigin-RevId: 463452893
samrobinson committed -
PiperOrigin-RevId: 463450395
leonwind committed -
This is possible because SSIM increases monotonically with bitrate. PiperOrigin-RevId: 463434373
samrobinson committed -
Just a misc nit, since I found the name a bit confusing, and figured findEncoderWithClosestSupportedFormat might be more descriptive. PiperOrigin-RevId: 463433646
huangdarwin committed -
Extract a FrameProcessor.Factory interface from GlEffectsFrameProcessor and allow it to be customized using a setter on Transformer.Builder. PiperOrigin-RevId: 463433438
hschlueter committed -
#minor-release PiperOrigin-RevId: 463338680
bachinger committed -
#minor-release PiperOrigin-RevId: 463328436
bachinger committed -
PiperOrigin-RevId: 463328405
hmzh committed -
PiperOrigin-RevId: 463320634
christosts committed -
PiperOrigin-RevId: 463315188
olly committed -
Size requires API 21. Using Pair instead will allow effects to be used from API 18 during previewing once they are moved out of transformer. PiperOrigin-RevId: 463206474
hschlueter committed -
PiperOrigin-RevId: 463193768
hschlueter committed -
Issue: google/ExoPlayer#10460 #minor-release PiperOrigin-RevId: 463163839
olly committed -
PiperOrigin-RevId: 463146426
tonihei committed -
#minor-release PiperOrigin-RevId: 463062454
bachinger committed -
This is needed for applying effects to a playlist. The effects are applied based on the presentation time of the frame in its corresponding media item and the offset is added back before encoding. Each time the offset changes, end of input stream is signalled to the texture processors. This is needed because the texture processors can expect monotonically increasing timestamp within the same input stream but when the offset changes, the timstamps jump back to 0. PiperOrigin-RevId: 462714966
hschlueter committed -
The DefaultMediaNotificationProvider caches the last loaded artwork bitmap so that the bitmap isn't loaded again when the notification is updated, e.g., the player is transiting from playing to paused. However, loading bitmap requests for bitmaps that are already being loaded are not suppressed. For example, if the notification is updated while the artwork is still downloading, the same artwork might be downloaded multiple times. This change suppresses a bitmap load request if the same artwork is still being loaded, to avoid additional artwork downloads. #minor-release PiperOrigin-RevId: 462572221
christosts committed -
#minor-release PiperOrigin-RevId: 462395554
rohks committed -
#minor-release PiperOrigin-RevId: 462391856
rohks committed -
Issue: androidx/media#102 #minor-release PiperOrigin-RevId: 462391045
bachinger committed -
It's always safe to ignore the result of these methods, because the caller already has a reference to the returned value. PiperOrigin-RevId: 462388947
ibaker committed -
Issue: google/ExoPlayer#10454 PiperOrigin-RevId: 462375294
olly committed
-
- 21 Jul, 2022 13 commits
-
-
Also rearranged release notes to correctly show when the changes were released. #minor-release PiperOrigin-RevId: 462361982
rohks committed -
We currently clear all pending messages, including the one that flushes pending commands to the MediaSession. To ensure all commands that have been called before controller.release() are still sent, we can manually trigger the flush message from the release call. Related to handling the final flush because disconnecting the controller, MediaSessionStub didn't post the removal of the controller to the session thread, creating a race condition between removing the controller and actually handling the flush. Issue: androidx/media#99 PiperOrigin-RevId: 462342860
tonihei committed -
These constructors are currently very intertwined, passing `this` references from the constructor of one to the constructor of another before the first constructor is complete (and so the `this` reference isn't really valid yet). This change uses checker framework `@UnderInitialization` and `@NotOnlyInitialized` annotations to make it more clear that the references are not available yet. For the one 'direct' access needed in the second constructor (calling `getApplicationLooper()`) we now pass the `applicationLooper` directly alongside (to avoid needing to dereference the reference 'too early'). This change also ensures that where a class hierarchy has a 'dependent' class hierarchy, the 'subclass' instance is always used (by both subclass and superclass) without casting or manually hiding the superclass field, by defining an overridable `getFoo()` method instead and always using it. #minor-release PiperOrigin-RevId: 462335043
ibaker committed -
This allows us to use BT.2020 RGB linear for intermediate shaders, which also allows us to re-enable PeriodicVignetteProcessor, which should work properly in linear color-spaces. Manually tested by adding a GlEffectsWrapper, and confirming that HLG HDR editing still looks correct. PiperOrigin-RevId: 462265821
huangdarwin committed -
PiperOrigin-RevId: 462232813
olly committed -
"seq" is not a well-defined abbreviation and the value is also an integer, so sequenceNumber is better than just sequence. PiperOrigin-RevId: 462129581
tonihei committed -
Add a Builder to constructor DefaultMediaNotificationProvider. The Builder can also set the provider's: - notification ID - notification channel ID - notification channel name The change adds an API for apps to set the small icon in notifications. #minor-release Issue: androidx/media#104 PiperOrigin-RevId: 462111536
christosts committed -
Some commands are run asynchronously and subsequent commands need to wait until the previous one finished. This can be supported by returning a Future for each command and using the existing command execution logic to wait for each Future to complete. As some MediaSessionStub code is now executed delayed to when it was originally created, we also need to check if the session is not released before triggering any actions or sending result codes. Issue: androidx/media#85 PiperOrigin-RevId: 462101136
tonihei committed -
The commands currently use a task and a postTask that are chained together manually. In some cases, e.g. when adding MediaItems, the postTask is already a chain of commands in itself. To allow using the entire command handling as a single task (for simplified queueing), we can change the implementation to always create a single task. If multiple subtasks need to be chained together, we can do that by wrapping the method calls. In case a task is asynchronous, we can also use Futures to chain them together. Overall, this is just a refactoring and changes no logic. Issue: androidx/media#85 PiperOrigin-RevId: 462085724
tonihei committed -
#minor-release PiperOrigin-RevId: 461902089
ibaker committed -
This adds two methods that are helpful when working with Futures. One is a version of postOrRun that can indicate completion by a Future and the other is a simplified version of Guava's Futures.transformAsync (which can't be used as it's in Beta). PiperOrigin-RevId: 461896598
tonihei committed -
Issue: androidx/media#102 #minor-release PiperOrigin-RevId: 461891031
bachinger committed -
Issue: androidx/media#10310 #minor-release PiperOrigin-RevId: 461889651
bachinger committed
-