22
33## 1.3
44
5- ### 1.3.0-rc01 (2024-02-22)
6-
7- This release includes the following changes since the
8- [ 1.3.0-beta01 release] ( #130-beta01-2024-02-07 ) :
9-
10- * ExoPlayer:
11- * Add source prefix to all ` Format.id ` fields generated from
12- ` MergingMediaSource ` . This helps to identify which source produced a
13- ` Format ` ([ #883 ] ( https://github.com/androidx/media/issues/883 ) ).
14- * Fix the regex used for validating custom Common Media Client Data (CMCD)
15- key names by modifying it to only check for hyphen
16- ([ #1028 ] ( https://github.com/androidx/media/issues/1028 ) ).
17- * Stop double-encoding CMCD query parameters
18- ([ #1075 ] ( https://github.com/androidx/media/issues/1075 ) ).
19- * Audio:
20- * Improve silence skipping algorithm with smooth volume ramp; retained
21- minimal silence and more natural silence durations
22- ([ #7423 ] ( https://github.com/google/ExoPlayer/issues/7423 ) ).
23- * Report the skipped silence more deterministically
24- ([ #1035 ] ( https://github.com/androidx/media/issues/1035 ) ).
25- * Session:
26- * Fix issue where ` MediaItem.RequestMetadata ` with just non-null extras is
27- not transmitted between media controllers and sessions.
28- * Add constructor to ` MediaLibrarySession.Builder ` that only takes a
29- ` Context ` instead of a ` MediaLibraryService ` .
30- * HLS Extension:
31- * Resolve seeks to beginning of a segment more efficiently
32- ([ #1031 ] ( https://github.com/androidx/media/pull/1031 ) ).
33-
34- ### 1.3.0-beta01 (2024-02-07)
35-
36- This release includes the following changes since the
37- [ 1.3.0-alpha01 release] ( #130-alpha01-2024-01-15 ) :
38-
39- * Common Library:
40- * Populate both ` artworkUri ` and ` artworkData ` in
41- ` MediaMetadata.Builder.populate(MediaMetadata) ` when at least one of
42- them is non-null ([ #964 ] ( https://github.com/androidx/media/issues/964 ) ).
43- * ExoPlayer:
44- * Prevent subclassing ` CompositeSequenceableLoader ` . This component was
45- [ previously made extensible] ( https://github.com/androidx/media/commit/0de57cbfae7165dd3bb829e323d089cd312b4b1b )
46- but was never subclassed within the library. Customizations can be done
47- by wrapping an instance using the
48- [ decorator pattern] ( https://en.wikipedia.org/wiki/Decorator_pattern ) and
49- implementing a custom ` CompositeSequenceableLoaderFactory ` .
50- * Fix issue where repeating the same time causes metadata from this item
51- to be cleared ([ #1007 ] ( https://github.com/androidx/media/issues/1007 ) ).
52- * Rename ` experimentalSetSubtitleParserFactory ` methods on
53- ` BundledChunkExtractor.Factory ` and ` DefaultHlsExtractorFactory ` to
54- ` setSubtitleParserFactory ` and disallow passing ` null ` . Use the new
55- ` experimentalParseSubtitlesDuringExtraction(boolean) ` methods to control
56- parsing behaviour.
57- * Add support for customising the ` SubtitleParser.Factory ` used during
58- extraction. This can be achieved with
59- ` MediaSource.Factory.setSubtitleParserFactory() ` .
60- * Extractors:
61- * MP3: Use constant bitrate (CBR) seeking for files with an ` Info ` header
62- (the CBR equivalent of the ` Xing ` header). Previously we used the seek
63- table from the ` Info ` header, but this results in less precise seeking
64- than if we ignore it and assume the file is CBR.
65- * MPEG2-TS: Add DTS, DTS-LBR and DTS: X Profile2 support
66- ([ #275 ] ( https://github.com/androidx/media/pull/275 ) ).
67- * Extract audio types from TS descriptors and map them to role flags,
68- allowing users to make better-informed audio track selections
69- ([ #973 ] ( https://github.com/androidx/media/pull/973 ) ).
70- * Image:
71- * Add support for DASH thumbnails. Grid images are cropped and individual
72- thumbnails are provided to ` ImageOutput ` close to their presentation
73- times.
74- * Session:
75- * Disable double-click detection for TV apps
76- ([ #962 ] ( https://github.com/androidx/media/issues/962 ) ).
77-
78- ### 1.3.0-alpha01 (2024-01-15)
5+ ### 1.3.0 (2024-03-06)
796
807This release includes the following changes since the
818[ 1.2.1 release] ( #121-2024-01-09 ) :
@@ -93,6 +20,9 @@ This release includes the following changes since the
9320 [ aligned with all other AndroidX libraries] ( https://android-developers.googleblog.com/2023/10/androidx-minsdkversion-19.html ) ,
9421 and is required for us to upgrade to the latest versions of our AndroidX
9522 dependencies.
23+ * Populate both ` artworkUri ` and ` artworkData ` in
24+ ` MediaMetadata.Builder.populate(MediaMetadata) ` when at least one of
25+ them is non-null ([ #964 ] ( https://github.com/androidx/media/issues/964 ) ).
9626* ExoPlayer:
9727 * Add ` PreloadMediaSource ` and ` PreloadMediaPeriod ` that allows apps to
9828 preload a content media source at a specific start position before
@@ -115,6 +45,30 @@ This release includes the following changes since the
11545 * Implement ` HttpEngineDataSource ` , an ` HttpDataSource ` using the
11646 [ HttpEngine] ( https://developer.android.com/reference/android/net/http/HttpEngine )
11747 API.
48+ * Prevent subclassing ` CompositeSequenceableLoader ` . This component was
49+ [ previously made extensible] ( https://github.com/androidx/media/commit/0de57cbfae7165dd3bb829e323d089cd312b4b1b )
50+ but was never subclassed within the library. Customizations can be done
51+ by wrapping an instance using the
52+ [ decorator pattern] ( https://en.wikipedia.org/wiki/Decorator_pattern ) and
53+ implementing a custom ` CompositeSequenceableLoaderFactory ` .
54+ * Fix issue where repeating the same time causes metadata from this item
55+ to be cleared ([ #1007 ] ( https://github.com/androidx/media/issues/1007 ) ).
56+ * Rename ` experimentalSetSubtitleParserFactory ` methods on
57+ ` BundledChunkExtractor.Factory ` and ` DefaultHlsExtractorFactory ` to
58+ ` setSubtitleParserFactory ` and disallow passing ` null ` . Use the new
59+ ` experimentalParseSubtitlesDuringExtraction(boolean) ` methods to control
60+ parsing behaviour.
61+ * Add support for customising the ` SubtitleParser.Factory ` used during
62+ extraction. This can be achieved with
63+ ` MediaSource.Factory.setSubtitleParserFactory() ` .
64+ * Add source prefix to all ` Format.id ` fields generated from
65+ ` MergingMediaSource ` . This helps to identify which source produced a
66+ ` Format ` ([ #883 ] ( https://github.com/androidx/media/issues/883 ) ).
67+ * Fix the regex used for validating custom Common Media Client Data (CMCD)
68+ key names by modifying it to only check for hyphen
69+ ([ #1028 ] ( https://github.com/androidx/media/issues/1028 ) ).
70+ * Stop double-encoding CMCD query parameters
71+ ([ #1075 ] ( https://github.com/androidx/media/issues/1075 ) ).
11872* Transformer:
11973 * Add support for flattening H.265/HEVC SEF slow motion videos.
12074 * Increase transmuxing speed, especially for 'remove video' edits.
@@ -123,6 +77,10 @@ This release includes the following changes since the
12377 implementations that don't show the first video frame until its
12478 presentation timestamp
12579 ([ #829 ] ( https://github.com/androidx/media/issues/829 ) ).
80+ * Add support for optimizing single asset mp4 trim operations.
81+ * Add support to ensure a video frame has the first timestamp in the
82+ output file. Fixes output files beginning with black frame on iOS based
83+ players ([ #829 ] ( https://github.com/androidx/media/issues/829 ) ).
12684* Track Selection:
12785 * Add ` DefaultTrackSelector.selectImageTrack ` to enable image track
12886 selection.
@@ -135,6 +93,21 @@ This release includes the following changes since the
13593 ` ColorInfo.colorSpace ` , ` ColorInfo.colorTransfer ` , and
13694 ` ColorInfo.colorRange ` values
13795 ([ #692 ] ( https://github.com/androidx/media/pull/692 ) ).
96+ * MP3: Use constant bitrate (CBR) seeking for files with an ` Info ` header
97+ (the CBR equivalent of the ` Xing ` header). Previously we used the seek
98+ table from the ` Info ` header, but this results in less precise seeking
99+ than if we ignore it and assume the file is CBR.
100+ * MPEG2-TS: Add DTS, DTS-LBR and DTS: X Profile2 support
101+ ([ #275 ] ( https://github.com/androidx/media/pull/275 ) ).
102+ * Extract audio types from TS descriptors and map them to role flags,
103+ allowing users to make better-informed audio track selections
104+ ([ #973 ] ( https://github.com/androidx/media/pull/973 ) ).
105+ * Audio:
106+ * Improve silence skipping algorithm with smooth volume ramp; retained
107+ minimal silence and more natural silence durations
108+ ([ #7423 ] ( https://github.com/google/ExoPlayer/issues/7423 ) ).
109+ * Report the skipped silence more deterministically
110+ ([ #1035 ] ( https://github.com/androidx/media/issues/1035 ) ).
138111* Video:
139112 * Change the ` MediaCodecVideoRenderer ` constructor that takes a
140113 ` VideoFrameProcessor.Factory ` argument and replace it with a constructor
@@ -152,6 +125,10 @@ This release includes the following changes since the
152125 ` rowLock ` and ` columnLock ` should both be assumed to be true, regardless
153126 of the values present in the stream (` columnLock ` support is not
154127 implemented, so it's effectively assumed to always be false).
128+ * Image:
129+ * Add support for DASH thumbnails. Grid images are cropped and individual
130+ thumbnails are provided to ` ImageOutput ` close to their presentation
131+ times.
155132* DRM:
156133 * Play 'clear lead' unencrypted samples in DRM content immediately by
157134 default, even if the keys for the later encrypted samples aren't ready
@@ -165,9 +142,18 @@ This release includes the following changes since the
165142* IMA extension:
166143 * Fix issue where DASH and HLS ads without the appropriate file extension
167144 can't be played.
145+ * Session:
146+ * Disable double-click detection for TV apps
147+ ([ #962 ] ( https://github.com/androidx/media/issues/962 ) ).
148+ * Fix issue where ` MediaItem.RequestMetadata ` with just non-null extras is
149+ not transmitted between media controllers and sessions.
150+ * Add constructor to ` MediaLibrarySession.Builder ` that only takes a
151+ ` Context ` instead of a ` MediaLibraryService ` .
168152* HLS Extension:
169153 * Reduce ` HlsMediaPeriod ` to package-private visibility. This type
170154 shouldn't be directly depended on from outside the HLS package.
155+ * Resolve seeks to beginning of a segment more efficiently
156+ ([ #1031 ] ( https://github.com/androidx/media/pull/1031 ) ).
171157* Decoder Extensions (FFmpeg, VP9, AV1, MIDI, etc.):
172158 * MIDI decoder: Ignore SysEx event messages
173159 ([ #710 ] ( https://github.com/androidx/media/pull/710 ) ).
@@ -179,6 +165,18 @@ This release includes the following changes since the
179165 * Add a shortform demo module to demo the usage of ` PreloadMediaSource `
180166 with the short-form content use case.
181167
168+ ### 1.3.0-rc01 (2024-02-22)
169+
170+ Use the 1.3.0 [ stable version] ( #130-2024-03-06 ) .
171+
172+ ### 1.3.0-beta01 (2024-02-07)
173+
174+ Use the 1.3.0 [ stable version] ( #130-2024-03-06 ) .
175+
176+ ### 1.3.0-alpha01 (2024-01-15)
177+
178+ Use the 1.3.0 [ stable version] ( #130-2024-03-06 ) .
179+
182180## 1.2
183181
184182### 1.2.1 (2024-01-09)
0 commit comments