Commit 5a516baa by andrewlewis Committed by Oliver Woodman

Fix init data handling for FLAC in MP4

Issue: #6396
PiperOrigin-RevId: 267536336
parent 332afc9f
...@@ -11,12 +11,14 @@ ...@@ -11,12 +11,14 @@
quality video can be loaded up to the full default buffer duration. quality video can be loaded up to the full default buffer duration.
* Bypass sniffing in `ProgressiveMediaPeriod` in case a single extractor is * Bypass sniffing in `ProgressiveMediaPeriod` in case a single extractor is
provided ([#6325](https://github.com/google/ExoPlayer/issues/6325)). provided ([#6325](https://github.com/google/ExoPlayer/issues/6325)).
* Fix `PlayerNotificationManager` to show play icon rather than pause icon when
playback is ended ([#6324](https://github.com/google/ExoPlayer/issues/6324)).
* Fix audio selection issue where languages are compared by bit rate
([#6335](https://github.com/google/ExoPlayer/issues/6335)).
* Add `HttpDataSource.getResponseCode` to provide the status code associated * Add `HttpDataSource.getResponseCode` to provide the status code associated
with the most recent HTTP response. with the most recent HTTP response.
* Fix initialization data handling for FLAC in MP4
([#6396](https://github.com/google/ExoPlayer/issues/6396)).
* Fix audio selection issue where languages are compared by bit rate
([#6335](https://github.com/google/ExoPlayer/issues/6335)).
* Fix `PlayerNotificationManager` to show play icon rather than pause icon when
playback is ended ([#6324](https://github.com/google/ExoPlayer/issues/6324)).
* Upgrade LibRtmp-Client-for-Android to fix RTMP playback issues * Upgrade LibRtmp-Client-for-Android to fix RTMP playback issues
([#4200](https://github.com/google/ExoPlayer/issues/4200), ([#4200](https://github.com/google/ExoPlayer/issues/4200),
[#4249](https://github.com/google/ExoPlayer/issues/4249), [#4249](https://github.com/google/ExoPlayer/issues/4249),
......
...@@ -1148,7 +1148,7 @@ import java.util.List; ...@@ -1148,7 +1148,7 @@ import java.util.List;
System.arraycopy(opusMagic, 0, initializationData, 0, opusMagic.length); System.arraycopy(opusMagic, 0, initializationData, 0, opusMagic.length);
parent.setPosition(childPosition + Atom.HEADER_SIZE); parent.setPosition(childPosition + Atom.HEADER_SIZE);
parent.readBytes(initializationData, opusMagic.length, childAtomBodySize); parent.readBytes(initializationData, opusMagic.length, childAtomBodySize);
} else if (childAtomSize == Atom.TYPE_dfLa || childAtomType == Atom.TYPE_alac) { } else if (childAtomType == Atom.TYPE_dfLa || childAtomType == Atom.TYPE_alac) {
int childAtomBodySize = childAtomSize - Atom.FULL_HEADER_SIZE; int childAtomBodySize = childAtomSize - Atom.FULL_HEADER_SIZE;
initializationData = new byte[childAtomBodySize]; initializationData = new byte[childAtomBodySize];
parent.setPosition(childPosition + Atom.FULL_HEADER_SIZE); parent.setPosition(childPosition + Atom.FULL_HEADER_SIZE);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment