Commit graph

16091 commits

Author SHA1 Message Date
huangdarwin
ec6ed0d55f Demo: Add legacy external storage permission for intents.
Without this permission, files in `/sdcard` or other directories cannot be read by the demo, as they're not in the transformer demo's scoped storage container.

For more information, see https://developer.android.com/training/data-storage/use-cases

Tested by uninstalling and re-installing the demo app, granting permission by
starting a transformation, and launching an intent using a local file in `/sdcard`
to start another transformation. Without this CL, this threw an error, and with
this CL it succeeded.

PiperOrigin-RevId: 466399023
2022-09-30 16:26:28 +00:00
hmzh
3bd91707dc Add JSyn library build instructions for the MIDI module
PiperOrigin-RevId: 466370644
2022-09-30 16:25:10 +00:00
Googler
1bdc252d2c Remove times(1) from effect and transformer tests as it is the default.
PiperOrigin-RevId: 466324322
2022-09-30 16:24:11 +00:00
huangdarwin
35161c7489 HDR: Rename ColorInfo#isHdr to isTransferHdr.
While HDR is most closely tied to the color transfer (ex.
COLOR_TRANSFER_SDR is the only one explicitly mentioning dynamic
range), technically color spaces may be associated with HDR as well,
like BT.2020 commonly being used for HDR rather than BT.709 for SDR.

Therefore, it's more specific to mention just that the transfer is HDR.

PiperOrigin-RevId: 466316960
2022-09-30 16:23:12 +00:00
Googler
7dc05edbab Split GlTextureProcessor.Listener into input/output/error listener.
This simplifies ChainingGlTextureProcessor as it now only connects a
consuming and a producing GlTextureProcessor rather than a previous,
current, and next GlTextureProcessor.

Also use default no-op implementations of the listeners in
SingleFrameGlTextureProcessor and MediaPipeProcessor to avoid
null-checks.

PiperOrigin-RevId: 466301642
2022-09-30 16:22:08 +00:00
huangdarwin
536d42c865 HDR: Input ColorInfo to the FrameProcessor.
This allows the GlEffectsFrameProcessor to later handle HLG and PQ
differently, or limited and full color range differently.

No functional change intended in this CL.

PiperOrigin-RevId: 466070764
2022-09-30 16:21:05 +00:00
hmzh
579f25802a Add a custom MIME type for MIDI
PiperOrigin-RevId: 466032455
2022-09-30 16:20:02 +00:00
andrewlewis
2315a39f52 Remove unused log tag constant
PiperOrigin-RevId: 466025324
2022-09-30 16:19:02 +00:00
hmzh
22b00d0e00 Add support for multiple mid-track tempo changes
PiperOrigin-RevId: 466018462
2022-09-30 16:17:58 +00:00
huangdarwin
fdd72aed5a Effect: Update javadoc to remove "final effect" references
"Final" was likely added to reference the FinalMatrixTextureProcessorWrapper,
which is a package-private class. However, I think more clear to express that
this is the input size, which then has all effects applied, to get the output
size.

PiperOrigin-RevId: 477975358
(cherry picked from commit 7286155fc3)
2022-09-30 13:24:26 +00:00
huangdarwin
49cc724a32 Tests: Statically import BitmapTestUtil methods.
Per go/java-practices/imports#static

No functional changes intended.

PiperOrigin-RevId: 477974779
(cherry picked from commit da2c6376cd)
2022-09-30 13:20:49 +00:00
Rakesh Kumar
9f8d69929d Fix review comment in CSD parsing of Mp4a-Latm Reader
Change-Id: I6fc07d88a7dbc52fc2fbe0e5ad45a53f8f25c4fd
2022-09-30 14:07:27 +05:30
Rakesh Kumar
4880057f92 Fix some more review comment in RTP Mp4a-Latm Reader
Change-Id: I9033d0bd93c6129c64c41ce70fef26bf8a6e4b6e
2022-09-30 14:05:53 +05:30
huangdarwin
b49c2aab62 Test: Rename to avoid redundant substrings.
Rename test files to avoid substrings that can be implied by the directory name,
like "Transformation" and "Test"

No functional changes. Renaming-only.

PiperOrigin-RevId: 477724724
(cherry picked from commit 9786802527)
2022-09-29 14:54:25 +00:00
samrobinson
9639f82879 Demo: Split video Effect generation out of createTransformer.
PiperOrigin-RevId: 477524540
(cherry picked from commit 26a73605f8)
2022-09-28 19:39:09 +00:00
huangdarwin
09776f3d72 HDR: Add period to end of error message.
For tone mapping error messages.

PiperOrigin-RevId: 477447799
(cherry picked from commit 05ce639ea0)
2022-09-28 14:30:48 +00:00
huangdarwin
619333fe3c HDR: Add tests for tone mapping.
Also, add checks for output file color.

PiperOrigin-RevId: 477439139
(cherry picked from commit 507a1be61d)
2022-09-28 13:42:36 +00:00
ibaker
0be36d084b Add a troubleshooting section about slow seeking
#minor-release

PiperOrigin-RevId: 477432256
(cherry picked from commit f8f2ec64c9)
2022-09-28 13:15:03 +00:00
Googler
3b97b99230 Fix checkboxes on configuration page
PiperOrigin-RevId: 477166507
(cherry picked from commit bcea7bd355)
2022-09-27 14:31:59 +00:00
samrobinson
d348157777 Fix badly formatted AudioProcessor javadoc.
PiperOrigin-RevId: 476909855
(cherry picked from commit 9b1909e563)
2022-09-26 16:00:10 +00:00
huangdarwin
c9f019eb15 HDR: Update gamma comments to linear.
Comment-only change.

PiperOrigin-RevId: 476873286
(cherry picked from commit f3d132141e)
2022-09-26 13:00:17 +00:00
tonihei
289d039410 Add setPreferredAudioDevice method to ExoPlayer
This allows to access the associated functionality of AudioTrack and
fills a feature gap to MediaPlayer, which has a similar method.

Issue: androidx/media#135
PiperOrigin-RevId: 476398964
(cherry picked from commit ccb820dd2f)
2022-09-23 17:05:43 +00:00
leonwind
8b807432ca Add example CLUT to demo.
PiperOrigin-RevId: 476390089
(cherry picked from commit 29cf09316e)
2022-09-23 16:28:25 +00:00
leonwind
0a1f30aba5 Store LUT bitmap as texture with processor creation.
* Before this CL, the texture was stored during the construction of the LUT processor. This failed since if one creates a list of GlEffects on the application thread, the texture will get stored in the application thread during the effect creation and not on the GL thread, which executes the FrameProcessors.
* This is an issue since the executing thread then can't index from the texture stored on a different thread.

PiperOrigin-RevId: 476388021
(cherry picked from commit f745c6ee0e)
2022-09-23 16:19:43 +00:00
Marc Baechinger
d648c1910c Merge pull request #123 from stoyicker:wrapping_media_source
PiperOrigin-RevId: 476376463
(cherry picked from commit 8623f1f016)
2022-10-19 23:42:52 +00:00
leonwind
61a2cc76aa Add HSL Adjustments to the demo.
PiperOrigin-RevId: 476373520
(cherry picked from commit 5725ebbeea)
2022-09-23 15:11:52 +00:00
ibaker
55e44b1399 Fix broken links on https://exoplayer.dev/troubleshooting.html
#minor-release

PiperOrigin-RevId: 476366214
(cherry picked from commit 0969118041)
2022-09-23 14:41:59 +00:00
leonwind
91fb951e2a Remove TODOs for merging RGB and MatrixTransformation processors.
PiperOrigin-RevId: 476362571
(cherry picked from commit af19f82f99)
2022-09-23 14:21:38 +00:00
michaelkatz
9ac9322a45 Try alternative decoder for Dolby Vision if display does not support
If the sample type is dolby vision and the following conditions match
a)There is a supported alternative codec mimetype
b)Display does not support Dolby Vision
Then getDecoderInfos will return the alternative types.

Issue: google/ExoPlayer#9794
PiperOrigin-RevId: 476356223
(cherry picked from commit 94a88e93d9)
2022-09-23 13:43:21 +00:00
huangdarwin
a3a08f8355 HDR: Assert output C.ColorTransfer for tests.
To confirm that tone mapping did or did not happen.

PiperOrigin-RevId: 476354606
(cherry picked from commit df58107eae)
2022-09-23 13:33:28 +00:00
leonwind
55d3c5ac0c Add HSL Adjustments to the effects module.
PiperOrigin-RevId: 476144167
(cherry picked from commit 2c27cd82f1)
2022-09-22 17:56:54 +00:00
leonwind
a534f60f56 Add OETF and EOTF ES2 fragment shaders for non-HDR frames.
* Transform the intermediate color space to linear SDR by applying the SMPTE 170M EOTF and OETF.
* Use linear colors for the color filter pixel tests and update all golden bitmaps.

PiperOrigin-RevId: 476124592
(cherry picked from commit afd829e5db)
2022-09-22 16:45:28 +00:00
ibaker
eb496dabcd Work around a bug in the Android 13 ClearKey implementation
The ClearKey CDM will attach an 'invalid' URL in `KeyRequest` objects,
when the documentation states this should be an empty string if a
default URL is not known.

#minor-release

PiperOrigin-RevId: 476113513
(cherry picked from commit 331d4d626f)
2022-09-22 15:59:44 +00:00
leonwind
109ab70e00 Add RGB Adjustments to transformer demo.
PiperOrigin-RevId: 476049125
(cherry picked from commit cfc0eef24e)
2022-09-22 10:04:42 +00:00
samrobinson
61acf5871a Add file size to TransformationResult at the end of a Transformation.
Tested:
  * Manually using both path and file descriptor.
PiperOrigin-RevId: 475860978
(cherry picked from commit 08bb01b218)
2022-09-21 17:18:42 +00:00
leonwind
b23c966c5a Use golden bitmaps in contrast pixel tests.
PiperOrigin-RevId: 475805421
(cherry picked from commit 06c0040ab4)
2022-09-21 12:53:42 +00:00
Rakesh Kumar
97afe69e92 Added support for CSD parsing in RTSP Mp4a-Latm Reader
Added support for parsing CSD data to get sample Rate and Channel
Count.

Change-Id: I69fb0fa2cb11453d3b9e416925d3776eb6dc19a3
2022-09-21 15:37:29 +05:30
rohks
a6f58bdb29 Fix instrumentation tests not working via Gradle
PiperOrigin-RevId: 475560401
(cherry picked from commit 6015f052ba)
2022-09-20 15:25:38 +00:00
leonwind
0a811bd4a1 Fix outdated command in bitmap/README.md.
* The command changed after creating a custom effects module.

PiperOrigin-RevId: 474777823
(cherry picked from commit fd6b0d1551)
2022-09-16 10:40:19 +00:00
yschimke
3af297101c Fix tracing under offload.
Currently doSomeWork is never closed and so tracing is deceiving.

See https://screenshot.googleplex.com/eZDzn5APpBNnhe5

PiperOrigin-RevId: 474755816
(cherry picked from commit 005b73c82a)
2022-09-16 08:26:54 +00:00
leonwind
eb6cf356bb Add LUT functionalities to transformer.
* Adds SDR 3D LUT functionalities with OpenGL 2.0 support.

PiperOrigin-RevId: 474561060
(cherry picked from commit 702419dd22)
2022-09-15 14:49:19 +00:00
leonwind
b041e4dce6 Fix testId and match it to the test name.
PiperOrigin-RevId: 474363545
(cherry picked from commit 0e2b6a03b5)
2022-09-14 19:41:11 +00:00
samrobinson
3adfa48f34 Add support for skipping windows in MssimCalculator.
By skipping every other row and column, SSIM calculation time reduces by 10-30%.

PiperOrigin-RevId: 474286702
(cherry picked from commit 6dd2a6dac6)
2022-09-14 14:35:12 +00:00
samrobinson
766b9cd385 Clarify the replaceOutputBuffer parameter because count is unclear.
PiperOrigin-RevId: 474279220
(cherry picked from commit 3e0ad6d804)
2022-09-14 13:54:06 +00:00
leonwind
2576346e45 Change ContrastProcessor java doc for consistency.
PiperOrigin-RevId: 474002026
(cherry picked from commit 7c435621ae)
2022-09-13 13:28:30 +00:00
samrobinson
c4f4c42e1d Add MssimCalculatorTest to verify SSIM calculations.
As part of this change, MssimCalculator is moved from androidTest/ to main/

PiperOrigin-RevId: 473771344
(cherry picked from commit 20aa22c9fa)
2022-09-12 16:45:36 +00:00
leonwind
5b084dd470 Add java docs for ContrastProcessor constructor.
* Add docs for the public constructor for consistency with all the
other frame processors.

PiperOrigin-RevId: 473726586
(cherry picked from commit 696ef2a5e7)
2022-09-12 13:02:32 +00:00
leonwind
474a5571e2 Add rgb matrices to java docs for public constructors.
PiperOrigin-RevId: 473699927
(cherry picked from commit 75f920bf25)
2022-09-12 09:52:09 +00:00
claincly
2fa9042058 Split decoding out of the test
This method is useful for other tests also.

PiperOrigin-RevId: 473574282
(cherry picked from commit f770324f31)
2022-09-11 13:01:26 +00:00
leonwind
7e810b50e0 Rename MatrixTransformationProcessor to MatrixTextureProcessor.
PiperOrigin-RevId: 473283967
(cherry picked from commit 40f1bd345a)
2022-09-09 17:23:24 +00:00