Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/doris 2023 migrate media 1.2 #19

Merged
merged 10,000 commits into from
Feb 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
fdfec60
Remove some debugging lines in `AtomParsers`
icbaker Sep 13, 2023
e0de405
Compositor: Move input source javadoc to class-level.
dway123 Sep 13, 2023
d111976
Change SubtitleParser interface to support incremental output
icbaker Sep 13, 2023
f8b23da
Add overflow tests for sample count to duration conversion methods
icbaker Sep 13, 2023
56fbf73
Add javadoc to `SubtitleParser.OutputOptions`
icbaker Sep 13, 2023
5106f2f
Rollback of https://github.com/androidx/media/commit/e2882c051b35c8b3…
claincly Sep 13, 2023
1d8135e
Add test for MultiInputVideoGraph
claincly Sep 13, 2023
bf25b3e
Move listener methods into private method for readability
claincly Sep 13, 2023
c0e11e0
Move bitmap loader tests in test
christosts Sep 13, 2023
98009d3
Compositor: Document VideoCompositor interface thread safety.
dway123 Sep 14, 2023
dc865e6
Return TIME_UNSET for last sync sample if there is no video track
SheenaChhabra Sep 14, 2023
d58f5fd
Upgrade Guava dependency to 32.1.2
icbaker Sep 14, 2023
03b793e
Read muxedPartialVideo only in MUXER_MODE_MUX_PARTIAL_VIDEO mode
SheenaChhabra Sep 14, 2023
5ef5d46
Compositor: Move Settings to DefaultVideoCompositor.
dway123 Sep 14, 2023
16b0ea8
Support multiple streams in the ImageRenderer
tof-tof Sep 14, 2023
c77b8c8
Compositor: Split out OpenGL drawing logic into inner class.
dway123 Sep 14, 2023
fef16b0
Fix flaky test becasue ExtTexMgr is not using emulator settings
claincly Sep 14, 2023
c4fb755
Open progress conditionVariable when quitting internal thread.
Samrobbo Sep 15, 2023
f89053d
Change UI module documentation link
tonihei Sep 18, 2023
2c0d9ba
Rollback of https://github.com/androidx/media/commit/d58f5fdf7d942185…
icbaker Sep 18, 2023
fe19945
Add QuickTime (Classic) support to `Mp4Extractor`
rohitjoins Sep 18, 2023
93d0618
Compositor: Remove obsolete TODO
dway123 Sep 18, 2023
0c918d2
Fix ErrorProne lint actionable items
oceanjules Sep 19, 2023
24e700c
Decouple output size listener and setting output surface
claincly Sep 19, 2023
92a3f3a
Update `WebvttParser` to implement new partial-output method
icbaker Sep 19, 2023
f35e7bd
Switch `WebvttParserTest` to use partial-output method
icbaker Sep 19, 2023
39c1ac7
Move setAudioAttributes from ExoPlayer to Player
oceanjules Sep 19, 2023
ceac1f4
Add two helpful methods to FakeMediaSource for testing
tianyif Sep 19, 2023
5661794
Update `external/guava/METADATA` link from `master` to `main` branch
icbaker Sep 19, 2023
3cad5ed
Remove using Consumer of ExportException in VideoGraphs
claincly Sep 19, 2023
e357d9f
Don't call `MediaSession.Callback.onPostConnect` if connecting failed
icbaker Sep 19, 2023
694d040
Re-land: `TtmlParser` implementation - moved from `TtmlDecoder`
icbaker Sep 19, 2023
db7c33b
Deprecate `Util.getAudioContentTypeForStreamType`
icbaker Sep 19, 2023
08c72b9
Use a longer timeout for running Transformer on emulators
claincly Sep 19, 2023
3cf9c08
Create `AudioOffloadPreferences` class
microkatz Sep 20, 2023
134f53b
TTML: Remove unused `CellResolution.columns` and collapse to `int rows`
icbaker Sep 20, 2023
234f752
Add MimeTypes.EXTERNALLY_LOADED_IMAGE
tof-tof Sep 20, 2023
67900c3
Fix not setting videoEffect in CompositingVSP
claincly Sep 20, 2023
5ae21b4
Extract the VideoSinkProvider interface
claincly Sep 20, 2023
7b580d3
Add performance playback test for video effects
christosts Sep 20, 2023
bfd4b6a
Move GlProgram.loadAsset to Util and make it public.
a-googler Sep 20, 2023
2052be0
Add new setIntsUniform for setting ivec uniforms in shaders.
a-googler Sep 20, 2023
603d367
Move DefaultImageDecoderTest in tests
christosts Sep 21, 2023
0675e48
HDR: Update HdrMode fallback to use OpenGL tone-mapping.
dway123 Sep 21, 2023
b4d03a9
Bump IMA SDK version to 3.31.0
rohitjoins Sep 21, 2023
fc91ee1
Session tests: Add missing `CountdownLatch.await()`
icbaker Sep 21, 2023
190fd7a
Compositor: Clarify javadoc, to mention VideoCompositorSettings.
dway123 Sep 21, 2023
b2016cc
Adjust externally loaded image URI MIME type definition
tonihei Sep 22, 2023
d9563b1
Split VideoGraph interface and move VideoGraph to common
claincly Sep 22, 2023
4f43359
Cross-reference per-stream volume methods from device volume methods
tonihei Sep 22, 2023
742410d
Use proxy controller to maintain platform session and notification
marcbaechinger Sep 22, 2023
42d9879
Add missing VideoGraph javadoc param
claincly Sep 22, 2023
ba8c85a
Compositor: Add VideoCompositorSettings to Composition.
dway123 Sep 22, 2023
8a40952
Test: Use timestamp iterator in texture output test.
dway123 Sep 22, 2023
444cb3f
Test: Rename getBitmap to getBitmapAtPresentationTimeUs
dway123 Sep 22, 2023
1f86a4e
Remove static initializer block from `MediaSessionKeyEventTest`
icbaker Sep 25, 2023
916b4b0
Allow custom methods in Rtsp Options response public header
microkatz Sep 25, 2023
d965516
Fix 'unused return value' error in `SubtitleViewUtilsTest`
icbaker Sep 25, 2023
5e05e2e
Pass down ControllerInfo from service to session when connecting
marcbaechinger Sep 25, 2023
ffd7bb5
Resolve and dispatch media button events within Media3
marcbaechinger Sep 25, 2023
884b3de
Update VideoSink `queueBitmap()` to match VideoFrameProcessor
claincly Sep 25, 2023
212f1f8
Update decode-only flag logic in non-MediaCodec-renderers
tonihei Sep 25, 2023
69ffac2
Set SurfaceView lifecycle to follow attachment in PlayerView
tonihei Sep 26, 2023
0b62d37
Verify a thread is alive before sending a message to it.
Samrobbo Sep 26, 2023
aba15b6
Add new APIs to ExoMediaDrm
Sep 25, 2023
8e6d3e7
Reformat some javadoc and use Guava empty list
icbaker Sep 26, 2023
8b71712
Change the DASH playback dump for webvtt in mp4 to include subtitles
oceanjules Sep 26, 2023
c03a0fb
Limit SequenceAssetLoader variable scope.
Samrobbo Sep 26, 2023
c12fb67
Update dumpfile tests to only print ColorInfo fields that are set
microkatz Sep 27, 2023
4e10c41
Throw Exception if posting to application handler fails.
Samrobbo Sep 27, 2023
b4771e0
Mark HEIF decoding as only supported on API 26+
icbaker Sep 27, 2023
77ba029
Add position interpolation to MediaControllerImplLegacy
tonihei Sep 27, 2023
1df2210
Test: Update HDR GL tone-map fallback string.
dway123 Sep 27, 2023
99086b4
Add default implementation of Callback.onSubscribe
marcbaechinger Sep 27, 2023
0b0d02c
Add isAutomotiveController and isAutoCompanionController
marcbaechinger Sep 27, 2023
2debf01
Split demo service into its own module for reuse
marcbaechinger Sep 27, 2023
db26b37
Update release notes for 1.2.0-alpha02
marcbaechinger Sep 28, 2023
d716de0
Suppress lint in `PlayerControlView` and `TrackSelectionDialogBuilder`
icbaker Sep 28, 2023
a1767d3
Fix review comments
icbaker Sep 28, 2023
cd6f8a4
Move Single/MultiVideoGraph impl to effect
claincly Sep 28, 2023
6d77838
Merge pull request #675 from shanujshekhar:shanujs/add-new-apis-exome…
copybara-github Sep 28, 2023
d50f662
Mark `DefaultImageDecoder.BitmapDecoder` as `@VisibleForTesting`
icbaker Sep 28, 2023
a3b1661
Bump Media3 version numbers for 1.2.0-alpha02
marcbaechinger Sep 28, 2023
cbd2392
Add demos/session-automotive module
marcbaechinger Sep 29, 2023
0b4638a
ExportTest: make 8K asset and trim
christosts Sep 29, 2023
34dddfe
Add previewing specific video graph.
claincly Sep 29, 2023
8f5835c
Rename `DefaultImageDecoder` to `BitmapFactoryImageDecoder`
icbaker Sep 29, 2023
12332a4
Remove FfmpegVideoRenderer from Media3 1.2.0 release
oceanjules Oct 2, 2023
4acce9b
Update playlist UI when playlist is updated
marcbaechinger Sep 29, 2023
1c7b426
Mark test_session_current support app as MultiDexApplication
icbaker Oct 2, 2023
ecfddb9
MediaCodeVideoRenderer: flush video sink before codec
christosts Oct 2, 2023
948491f
Merge pull request #574 from hugohlln:main
copybara-github Oct 2, 2023
ffe65b3
Fix `Util.scaleLargeValue/Timestamp` to handle negative numbers
icbaker Oct 3, 2023
27d6a9b
Deprecate experimental keepAudioTrackOnSeek methods.
Samrobbo Oct 3, 2023
bc3dded
Explicitly mark DecoderOutputBuffer as shouldBeSkipped if needed
tonihei Oct 3, 2023
484339e
Add Dumper support for outputting multiline strings
oceanjules Oct 3, 2023
e4637d8
Add DashPlayback test with sideloaded TTML subtitles
oceanjules Oct 3, 2023
2564c11
Disable offload scheduling at set up for track transition
microkatz Oct 3, 2023
0480b70
Move decode-only handling out of MetadataDecoder interface logic
tonihei Oct 3, 2023
7957554
Add nullness annotations to `MediaCodecRenderer`
rohitjoins Oct 3, 2023
5563365
Add nullness annotations to `DecoderVideoRenderer`
rohitjoins Oct 3, 2023
6d2bf51
Add onAudioTrackInitialized/Released events
tonihei Oct 4, 2023
c99c71b
Update getName of BitmapFactoryImageDecoder
tof-tof Oct 4, 2023
889739d
Replace ENCODING_DTS_UHD_P2 value by reference to platform constant
tonihei Oct 4, 2023
7bfddf9
Remove wrong Javadoc
tonihei Oct 4, 2023
df85a99
Add Decoder.setOutputStartTimeUs and use it in extension decoders
tonihei Oct 4, 2023
1a0000d
Add `CuesWithTiming.endTimeUs`
icbaker Oct 5, 2023
21c714d
Use RTSP Setup response timeout value in KeepAliveMonitor intervalMs
microkatz Oct 5, 2023
fbb64e2
Remove experimental keepAudioTrackOnSeek.
Samrobbo Oct 5, 2023
3c414fc
Update documentation wrongly referencing the decode-only flag
tonihei Oct 5, 2023
a4582be
Change equalTo check in ImagePlaybackTest to atLeast
tof-tof Oct 5, 2023
dad362b
Add tests for `CuesWithTiming.endTimeUs`
icbaker Oct 5, 2023
03008b9
Remove release notes lines added by merge conflict
tonihei Oct 5, 2023
7e9ca0b
Deprecate decode-only flag.
tonihei Oct 6, 2023
da5a743
Add MEDIA_PLAY_FROM_SEARCH to manifest of session demo app
marcbaechinger Oct 6, 2023
5d0d30a
Allow pause if in offload mode after writing all buffers
microkatz Oct 6, 2023
f43d0f1
Update cached playbackHeadPosition when pausing after AudioTrack.stop()
microkatz Oct 6, 2023
efb8c70
Add multidex Gradle dependency to test-session-current
oceanjules Oct 6, 2023
f776021
Deflake RTSP keep-alive monitor test
microkatz Oct 6, 2023
ef013c0
Bump Media3 version numbers for 1.2.0-beta01 release
oceanjules Oct 9, 2023
c16accb
Update RELEASENOTES.md for 1.2.0-beta01 release
oceanjules Oct 9, 2023
2ae6b1e
Rollback of https://github.com/androidx/media/commit/64bd3bcad3fa4b0e…
tonihei Oct 19, 2023
a8b0bd7
Do not hide System UI when app rejects connection
marcbaechinger Oct 19, 2023
cb67b16
Merge pull request #728 from lawadr:audio-capabilities-fix
copybara-github Oct 19, 2023
e1ad106
Add missing command checks to playback resumption flow
tonihei Oct 19, 2023
9ac6f89
Remove CompositionPlayer activity from the transformer demo app
droid-girl Oct 19, 2023
47a451a
Update translations in the ui module
rohitjoins Oct 20, 2023
f2cf43c
Use MediaSessionImpl.onMediaButtonEvent() to dispatch key events
marcbaechinger Oct 20, 2023
6ad54d7
Update `TextRenderer` to handle `CuesWithTiming` instances directly
icbaker Oct 5, 2023
1818d46
Return true from `CuesResolver.addCues` if the output changed
icbaker Oct 6, 2023
3ba8459
Report dropped frames from the VideoSink
christosts Oct 9, 2023
99ea703
Fix the asset and dump file names for the standalone TTML DASH test
icbaker Oct 9, 2023
fdaf9b4
Use more targeted listening in session PlayerActivity
tonihei Oct 9, 2023
f799259
...Update metalava library and Reformat api.txt...
a-googler Oct 9, 2023
c913237
Fix the resumption of playback when suitable device is connected.
a-googler Oct 10, 2023
7d063e9
Add missing Future cancellation checks
tonihei Oct 10, 2023
77bccf0
Make BundleListRetriever local Binder aware
tonihei Oct 10, 2023
bd24e78
Use package-level `@OptIn` for demo apps
icbaker Oct 10, 2023
69749c5
Align audio adaptive support checks with video
tonihei Oct 10, 2023
d078baf
Remove unneccessary method parameter
tonihei Oct 10, 2023
292701b
Add `SubtitleParser.Factory.getCueReplacementBehavior()`
icbaker Oct 10, 2023
2ec24ac
Update `@UnstableApi` docs to include a `package-info.java` example
icbaker Oct 10, 2023
7254f5a
Do not interrupt controller thread without a good reason
tonihei Oct 10, 2023
03a3f77
Add experimental opt-in to parse DASH subtitles during extraction
icbaker Oct 10, 2023
4b85207
Add MediaSession.Builder().setPeriodicPositionUpdateEnabled()
marcbaechinger Oct 11, 2023
de3eb67
Request notification permission when starting session demo app
icbaker Oct 11, 2023
ec21b9e
Update release notes to mention AudioOffloadPreference class changes
microkatz Oct 11, 2023
0255f3b
Check whether a session is still managed before removing
marcbaechinger Oct 11, 2023
7d61461
Split available command filtering and bundling
tonihei Oct 11, 2023
d7044c7
Avoid bundling PlayerInfo for in-process calls
tonihei Oct 12, 2023
24c39b6
Migrate `SubtitleParser` tests to incremental `parse()` methods
icbaker Oct 12, 2023
c7186c9
Merge pull request #650 from cedricxperi:dts-lbr-buffer-underflow-fix
copybara-github Oct 12, 2023
b77a253
Change `LegacySubtitleUtil` handling of `SubtitleParser.OutputOptions`
icbaker Oct 13, 2023
74277b1
Remove the 'super speed' SmoothStreaming PlayReady stream from demo
icbaker Oct 13, 2023
f77f3df
Migrate `SubtitleParser` implementations to incremental `parse()`
icbaker Oct 13, 2023
3244318
Test more URI forms in `RawResourceDataSourceContractTest`
icbaker Oct 13, 2023
b65136e
Remove deprecated `DownloadNotificationHelper.buildProgressNotification`
a-googler Oct 13, 2023
2a7d85e
Calculate HLS live playlist refresh interval accurately
tianyif Oct 13, 2023
e46ee01
Expand MediaItems in session demo instead of just replacing them
tonihei Oct 16, 2023
386d223
Only set the queue when COMMAND_GET_TIMELINE is available
marcbaechinger Oct 16, 2023
85167f1
Send `ConnectionState` as in-process bundle if possible
marcbaechinger Oct 16, 2023
8e48433
Send media button events from service directly using `MediaSessionImpl`
marcbaechinger Oct 16, 2023
f290d0e
Move DASH subtitle parsing release note to correct section
icbaker Oct 17, 2023
29846d0
Merge pull request #491 from v-novaltd:dsparano-exo128
copybara-github Oct 17, 2023
ee83baf
Publish MIDI decoder module on Maven repository
christosts Oct 17, 2023
fcb3315
Rollback of https://github.com/androidx/media/commit/64bd3bcad3fa4b0e…
a-googler Oct 17, 2023
9ace485
Rollback of https://github.com/androidx/media/commit/4ebe630a80296cbb…
a-googler Oct 18, 2023
5a4adc9
Fix MIDI decoder build.gradle
christosts Oct 18, 2023
fe60d0d
Use DataSourceBitmapLoader by default
tonihei Oct 18, 2023
111ac63
Send decode-only Opus samples in bypass mode for seekPreRoll skip
microkatz Oct 18, 2023
5d6fefe
Add formatting to `scheme` list in `DefaultDataSource` javadoc
icbaker Oct 18, 2023
21cb3a6
Rollback of https://github.com/androidx/media/commit/4ebe630a80296cbb…
tonihei Oct 18, 2023
4c778ed
Rollback of https://github.com/androidx/media/commit/eafe2e35f0f343d9…
a-googler Oct 19, 2023
c997c71
Update RELEASENOTES for 1.2.0-rc01 release
rohitjoins Oct 23, 2023
7a2d80d
Bump Media3 version numbers for 1.2.0-rc01
rohitjoins Oct 23, 2023
1c54c39
Reorder RELEASENOTES to move unreleased changes to correct section
rohitjoins Oct 23, 2023
3d6ac7f
Add `com.github.philburk:jsyn` to JAR list
rohitjoins Oct 24, 2023
7991838
Rollback of https://github.com/androidx/media/commit/a19f577976fc670c…
icbaker Oct 27, 2023
a2679fb
Bump media3 versions to 1.2.0 (stable)
oceanjules Nov 9, 2023
f90726a
Merge release notes for media3 1.2.0 stable release
oceanjules Nov 9, 2023
1b83c59
Add `@OptIn` to fields in demo `PlayerActivity` now this is supported
icbaker Nov 14, 2023
2cc8afe
Remove recommendation to pin `annotation-experimental` to version 1.2.0
icbaker Nov 14, 2023
4f5038b
Merge branch 'release' into release-1.2.0
icbaker Nov 17, 2023
f6fe90f
Clean-up multi-line strings in YAML issue templates
icbaker Dec 12, 2023
4f033c9
Merge tag '1.2.0' of https://github.com/androidx/media into feat/DORI…
guoen21 Jan 5, 2024
79ce4f1
Fallback to legacy sizerate check for H264 if CDD PerfPoint check fails
microkatz Oct 23, 2023
a017080
Bump okhttp dependency to 4.12
icbaker Oct 27, 2023
fe8bbca
Remove stray parentheses from release notes
icbaker Oct 30, 2023
2237f49
Put the custom keys in MediaMetadataCompat to MediaMetadata.extras
tianyif Nov 1, 2023
07258aa
Add warning log if DASH manifest contains incomplete ClearKey info
icbaker Nov 1, 2023
2f4d475
Split media1/media3 conversion methods out of `MediaUtils`
icbaker Nov 1, 2023
4009427
Fix access to stale ByteBuffer in FfmpegAudioDecoder
tonihei Nov 2, 2023
d8d552a
Fix proguard rule to also keep referenced class name
tonihei Nov 3, 2023
f189af5
Remove old pre-releases from the github bug template
oceanjules Nov 8, 2023
2db9da5
Don't crash when receiving a bad playback state
a-googler Nov 9, 2023
21461ab
Parse "f800" as channel count of 5 for Dolby in DASH manifest
tianyif Nov 13, 2023
7901d1c
Expand frame drop workaround to Realme C11
andrewlewis Nov 13, 2023
b972276
Update recommended way to suppress `@UnstableApi` errors in `lint.xml`
icbaker Nov 15, 2023
69884e7
Workaround layout problems with Material Design
tonihei Nov 15, 2023
aab1c9a
Populate `MediaMetadata.extras` to `MediaMetadataCompat`
rohitjoins Nov 17, 2023
0038355
Use `.test` top level domain for test URI
rohitjoins Nov 20, 2023
5752a09
Return empty timeline when media info is null
marcbaechinger Nov 20, 2023
ea642a4
Add test case to test position conversion when POSITION_UNKNOWN
marcbaechinger Nov 21, 2023
c9f6ad0
Avoid clipping live offset override to min/max offsets
tonihei Nov 21, 2023
124eb31
MidiExtractor: mark only the first sample as key-frame
christosts Nov 21, 2023
5e86c4c
Add session extras to the state of the controller
marcbaechinger Nov 21, 2023
33484b0
Merge pull request #707 from equeim:ffmpeg-6.0
copybara-github Nov 23, 2023
4234bc7
Remove redundant ) in Javadoc
tonihei Nov 23, 2023
36f634d
Fix typo in `DashManifestParser`
icbaker Nov 24, 2023
97c9e23
Avoid value close to overflow for `KEY_OPERATING_RATE`
andrewlewis Nov 24, 2023
710c1b9
Work around codec frame rate issues in Redmi Note 9 Pro
andrewlewis Nov 27, 2023
19ee787
Restrict operating rate workaround to SM8550
andrewlewis Nov 27, 2023
db64831
Merge pull request #837 from superjohan:fix/android-14-clearkey
copybara-github Nov 27, 2023
d68c36e
Update emulator device names
tof-tof Nov 27, 2023
3f3287a
Exit early progressive loads if the load task is canceled
christosts Nov 29, 2023
fa268cf
Don't include null text or bitmaps in `Cue.toBundle()`
icbaker Nov 30, 2023
483426a
MCR: Ensure `mediaCrypto` and `codec` are atomically non-null
icbaker Dec 4, 2023
57187aa
Map VORBIS channel layout to Android layout
tonihei Dec 5, 2023
03eae4f
Limit processing Opus decode-only frames by seek-preroll in offload
microkatz Dec 5, 2023
c314123
Fix nullability issue in MediaControllerImplLegacy
a-googler Dec 5, 2023
ea72856
Add Robolectric e2e test support for HEVC content
icbaker Dec 5, 2023
482d5d6
Add extractor and playback tests for Pixel JPEG motion photo
icbaker Dec 5, 2023
7df03f3
TransformerEndToEndTest: replace /*testId=*/ with variable
tof-tof Dec 11, 2023
e509db2
Fix handling of multiple HEVC tracks in JPEG motion photos
icbaker Dec 11, 2023
89baa96
Fix handling of repeated EOS in `SilenceSkippingAudioProcessor`.
Samrobbo Dec 11, 2023
504bcd8
Merge pull request #867 from equeim:ndk-r26
copybara-github Dec 12, 2023
5001f70
Fix `VorbisComment.populateMediaMetadata` key comparison to ignore case
icbaker Dec 12, 2023
7d564f8
Merge pull request #864 from v-novaltd:dsparano-exo129_2
copybara-github Dec 12, 2023
33a5190
Combine 'matching' versions in media3 bug template
icbaker Dec 13, 2023
c8a403e
Merge pull request #753 from stevemayhew:p-fix-issue-9347
copybara-github Dec 14, 2023
09d30a1
Fix broadcasting notifyChildrenChanged for legacy controllers
marcbaechinger Dec 14, 2023
4231a1d
Use different wraparound assumptions for duration readers
tonihei Dec 14, 2023
6236fd3
Fix sending negative `bufferedDurationUs` to `CmcdData.Factory`
rohitjoins Dec 15, 2023
5d7c914
Add Widevine license renewal example to demo app
icbaker Dec 19, 2023
1da24b2
Add container to `Format.toLogString`
icbaker Dec 19, 2023
b68173a
Merge pull request #914 from cemrich:366-forward-time-wrong
copybara-github Dec 21, 2023
b9d205b
Expand operating rate workaround to T612 chipset
andrewlewis Dec 21, 2023
d1b882a
Don't set negative values to setWhen()
marcbaechinger Dec 29, 2023
77d220c
Merge pull request #369 from Tolriq:fix_invalid_frames
copybara-github Jan 4, 2024
141f9b7
Return null if media notification controller Future is not done
marcbaechinger Jan 4, 2024
d55b334
Clarify docs on `Player.setMediaItem(s)` and `replaceMediaItem(s)`
icbaker Jan 4, 2024
f0d24cb
Fix BitmapOverlay to have public constructor
microkatz Jan 9, 2024
1f79a0a
Bump media3 version to 1.2.1 and update RELEASENOTES
microkatz Jan 9, 2024
0ae7a6b
Fix typo of missing closing parentheses in RELEASENOTES
microkatz Jan 11, 2024
b930b40
Fix merge error with ffmpeg_jni.cc
microkatz Jan 17, 2024
fc751b1
chore: polish the debug info print
guoen21 Jan 18, 2024
8dffc51
chore: try to fix the offset issue of cmaf emsg samples. (#18)
guoen21 Jan 22, 2024
3380b98
Merge tag '1.2.1' of https://github.com/androidx/media into feat/DORI…
guoen21 Jan 24, 2024
be08784
Downgrade okhttp from 4.12.0, because it was compiled with an incompa…
guoen21 Jan 24, 2024
87384ee
Merge branch 'main' into feat/DORIS-2023-migrate-media-1.2
guoen21 Feb 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
50 changes: 23 additions & 27 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,37 +5,27 @@ body:
- type: markdown
attributes:
value: |
We can only process bug reports that are actionable. Unclear bug reports or reports with
insufficient information may not get attention.
We can only process bug reports that are actionable. Unclear bug reports or reports with insufficient information may not get attention.

Before filing a bug:
-------------------------

- Search existing issues, including issues that are closed:
https://github.com/androidx/media/issues?q=is%3Aissue
- For ExoPlayer-related bugs, please also check for existing issues on the ExoPlayer
tracker: https://github.com/google/ExoPlayer/issues?q=is%3Aissue
- Search existing issues, including issues that are closed: https://github.com/androidx/media/issues?q=is%3Aissue
- For ExoPlayer-related bugs, please also check for existing issues on the ExoPlayer tracker: https://github.com/google/ExoPlayer/issues?q=is%3Aissue
- type: dropdown
attributes:
label: Media3 Version
label: Version
description: What version of Media3 (or ExoPlayer) are you using?
options:
- Media3 1.1.0-alpha01
- Media3 1.0.2
- Media3 1.0.1
- Media3 1.0.0
- Media3 1.0.0-rc02
- Media3 1.0.0-rc01
- Media3 1.0.0-beta03
- Media3 1.0.0-beta02
- Media3 1.0.0-beta01
- Media3 1.0.0-alpha03
- Media3 1.0.0-alpha02
- Media3 1.0.0-alpha01
- Media3 `main` branch
- ExoPlayer 2.18.7
- ExoPlayer 2.18.6
- ExoPlayer 2.18.5
- Media3 1.2.1
- Media3 1.2.0
- Media3 main branch
- Media3 pre-release (alpha, beta or RC not in this list)
- Media3 1.1.1 / ExoPlayer 2.19.1
- Media3 1.1.0 / ExoPlayer 2.19.0
- Media3 1.0.2 / ExoPlayer 2.18.7
- Media3 1.0.1 / ExoPlayer 2.18.6
- Media3 1.0.0 / ExoPlayer 2.18.5
- ExoPlayer 2.18.4
- ExoPlayer 2.18.3
- ExoPlayer 2.18.2
Expand All @@ -50,10 +40,16 @@ body:
- ExoPlayer 2.14.2
- ExoPlayer 2.14.1
- ExoPlayer 2.14.0
- ExoPlayer `dev-v2` branch
- ExoPlayer dev-v2 branch
- Older (unsupported)
validations:
required: true
- type: textarea
attributes:
label: More version details
description: >
Required if you selected `main` or `dev-v2` (please provide an exact commit SHA),
or 'pre-release' or 'older' (please provide the version).
- type: textarea
attributes:
label: Devices that reproduce the issue
Expand Down Expand Up @@ -114,7 +110,7 @@ body:
* Attach a file here
* Include a media URL
* Refer to a piece of media from the demo app (e.g. `Misc > Dizzy (MP4)`)
* If you don't want to post media publicly please email the info to dev.exoplayer@gmail.com with subject 'Issue #\<issuenumber\>' after filing this issue, and note that you will do this here.
* If you don't want to post media publicly please email the info to android-media-github@google.com with subject 'Issue #\<issuenumber\>' after filing this issue, and note that you will do this here.
* If you are certain the issue does not depend on the media being played, enter "Not applicable" here.

For DRM-protected media please also include the scheme and license server URL.
Expand All @@ -124,8 +120,8 @@ body:
attributes:
label: Bug Report
description: |
After filing this issue please run `adb bugreport` shortly after reproducing the problem (ideally in the [demo app](https://github.com/androidx/media/tree/release/demos/main)) to capture a zip file, and email this to dev.exoplayer@gmail.com with subject 'Issue #\<issuenumber\>'.
After filing this issue please run `adb bugreport` shortly after reproducing the problem (ideally in the [demo app](https://github.com/androidx/media/tree/release/demos/main)) to capture a zip file, and email this to android-media-github@google.com with subject 'Issue #\<issuenumber\>'.

**Note:** Logcat output is **not** the same as a full bug report, and is often missing information that's useful for diagnosing issues. Please ensure you're sending a full bug report zip file.
options:
- label: You will email the zip file produced by `adb bugreport` to dev.exoplayer@gmail.com after filing this issue.
- label: You will email the zip file produced by `adb bugreport` to android-media-github@google.com after filing this issue.
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,6 @@ Don't forget to check ExoPlayer's supported formats and devices, if applicable
(https://developer.android.com/guide/topics/media/exoplayer/supported-formats).

If there's something you don't want to post publicly, please submit the issue,
then email the link/bug report to dev.exoplayer@gmail.com using a subject in the
format "Issue #1234", where #1234 is your issue number (we don't reply to
emails).
then email the link/bug report to android-media-github@google.com using a
subject in the format "Issue #1234", where #1234 is your issue number (we don't
reply to emails).
10 changes: 10 additions & 0 deletions .idea/icon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,24 @@ you made on top of `main` using
$ git diff -U0 main... | google-java-format-diff.py -p1 -i
```

### Push access to PR branches

Please ensure maintainers of this repository have push access to your PR branch
by ticking the `Allow edits from maintainers` checkbox when creating the PR (or
after it's created). See the
[GitHub docs](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork)
for more info. This allows us to make changes and fixes to the PR while it goes
through internal review, and ensures we don't create an
['evil' merge](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefevilmergeaevilmerge)
when it gets merged.

This checkbox only appears on PRs from individual-owned forks
(https://github.com/orgs/community/discussions/5634). If you open a PR from an
organization-owned fork we will ask you to open a new one from an
individual-owned fork. If this isn't possible we can still merge the PR, but it
will result in an 'evil' merge because the changes and fixes we make during
internal review will be part of the merge commit.

## Contributor license agreement

Contributions to any Google project must be accompanied by a Contributor
Expand Down
58 changes: 47 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,21 @@
# AndroidX Media

AndroidX Media is a collection of libraries for implementing media use cases on
Android, including local playback (via ExoPlayer) and media sessions.
Android, including local playback (via ExoPlayer), video editing (via Transformer) and media sessions.

## Documentation

* The [developer guide][] provides a wealth of information.
* The [class reference][] documents the classes and methods.
* The [release notes][] document the major changes in each release.
* The [media dev center][] provides samples and guidelines.
* Follow our [developer blog][] to keep up to date with the latest
developments!

[developer guide]: https://developer.android.com/guide/topics/media/media3
[class reference]: https://developer.android.com/reference/androidx/media3/common/package-summary
[release notes]: RELEASENOTES.md
[media dev center]: https://developer.android.com/media
[developer blog]: https://medium.com/google-exoplayer

## Migration for existing ExoPlayer and MediaSession projects
Expand Down Expand Up @@ -45,13 +47,21 @@ also possible to clone this GitHub repository and depend on the modules locally.
#### 1. Add module dependencies

The easiest way to get started using AndroidX Media is to add gradle
dependencies on the libraries you need in the `build.gradle` file of your app
module.
dependencies on the libraries you need in the `build.gradle.kts` file of your
app module.

For example, to depend on ExoPlayer with DASH playback support and UI components
you can add dependencies on the modules like this:

```gradle
```kotlin
implementation("androidx.media3:media3-exoplayer:1.X.X")
implementation("androidx.media3:media3-exoplayer-dash:1.X.X")
implementation("androidx.media3:media3-ui:1.X.X")
```

Or in Gradle Groovy DSL `build.gradle`:

```groovy
implementation 'androidx.media3:media3-exoplayer:1.X.X'
implementation 'androidx.media3:media3-exoplayer-dash:1.X.X'
implementation 'androidx.media3:media3-ui:1.X.X'
Expand All @@ -73,10 +83,18 @@ details.
#### 2. Turn on Java 8 support

If not enabled already, you also need to turn on Java 8 support in all
`build.gradle` files depending on AndroidX Media, by adding the following to the
`android` section:
`build.gradle.kts` files depending on AndroidX Media, by adding the following to
the `android` section:

```kotlin
compileOptions {
targetCompatibility = JavaVersion.VERSION_1_8
}
```

Or in Gradle Groovy DSL `build.gradle`:

```gradle
```groovy
compileOptions {
targetCompatibility JavaVersion.VERSION_1_8
}
Expand All @@ -101,18 +119,36 @@ git clone https://github.com/androidx/media.git
cd media
```

Next, add the following to your project's `settings.gradle` file, replacing
Next, add the following to your project's `settings.gradle.kts` file, replacing
`path/to/media` with the path to your local copy:

```gradle
```kotlin
gradle.extra.apply {
set("androidxMediaModulePrefix", "media-")
}
apply(from = file("path/to/media/core_settings.gradle"))
```

Or in Gradle Groovy DSL `settings.gradle`:

```groovy
gradle.ext.androidxMediaModulePrefix = 'media-'
apply from: file("path/to/media/core_settings.gradle")
```

You should now see the AndroidX Media modules appear as part of your project.
You can depend on them as you would on any other local module, for example:
You can depend on them from `build.gradle.kts` as you would on any other local
module, for example:

```kotlin
implementation(project(":media-lib-exoplayer"))
implementation(project(":media-lib-exoplayer-dash"))
implementation(project(":media-lib-ui"))
```

Or in Gradle Groovy DSL `build.gradle`:

```gradle
```groovy
implementation project(':media-lib-exoplayer')
implementation project(':media-lib-exoplayer-dash')
implementation project(':media-lib-ui')
Expand Down
Loading