- 11 Jan, 2021 25 commits
-
-
#minor-release PiperOrigin-RevId: 351158541
olly committed -
#minor-release PiperOrigin-RevId: 351144857
aquilescanta committed -
PiperOrigin-RevId: 350782940
olly committed -
I think this was missed when integrating DefaultMediaSourceFactory with SingleSampleMediaSource.Factory in https://github.com/google/ExoPlayer/commit/315ba6f324b03ef651773a3bdb43386dcb1281ca Issue: #8430 PiperOrigin-RevId: 350759580
ibaker committed -
There is a race condition when initializing the downloads database. The constructor of the DownloadManager kicks-off the database initialization in its internal thread, but at the same time an app can try to access the database directly through the manager's download index, e.g. doing DonwloadManager manager = new ... manager.getDownloadIndex().getDownload("id"); might enter DefaultDownloadIndex.ensureInitialized() from two threads. When upgrading the downloads table from version 2 to version 3, the first thread that enters the database transaction in ensureInitialized() will drop and recreate the table using the v3 schema. Then, the second thread will attempt to read from the newly created table using the v2 schema, which will fail. This race condition was not introduced in 2.12 but was there already. However, prior to 2.12, the code only dropped and re-created and the table and did not attempt to read any data. Hence, if the race condition happened, the code would drop and create the table twice, but no error would occur. Issue: #8420 #minor-release PiperOrigin-RevId: 350745463christosts committed -
Reported by https://github.com/google/ExoPlayer/issues/8329. PiperOrigin-RevId: 350547523
krocard committed -
Issue: #8419 PiperOrigin-RevId: 350134719
olly committed -
Issue: #8374 PiperOrigin-RevId: 348792965
olly committed -
The media specifies a URL that uses http rather than https, which the demo app doesn't permit by default. The URL here is the same except it uses https instead. #minor-release PiperOrigin-RevId: 348445571
olly committed -
PiperOrigin-RevId: 348440799
Oliver Woodman committed -
This avoids a NullPointerException later when the format is used. Fixes https://github.com/google/ExoPlayer/issues/8283. PiperOrigin-RevId: 348017149
krocard committed -
Issue: #8323 PiperOrigin-RevId: 347827615
christosts committed -
This regression was introduced in https://github.com/google/ExoPlayer/commit/b1e9257de143e9f377895b63868ef47b4fc0eea9 Issue: #8349 PiperOrigin-RevId: 347802049
ibaker committed -
It's intended to log a warning in this case, rather than throw. Issue: #8290 PiperOrigin-RevId: 347790527
andrewlewis committed -
PiperOrigin-RevId: 347789441
krocard committed -
Issue: #8011 PiperOrigin-RevId: 347288689
sungsoo committed -
Issue: #8272 PiperOrigin-RevId: 347010412
olly committed -
PiperOrigin-RevId: 346764371
olly committed -
PiperOrigin-RevId: 346346359
bachinger committed -
Issue:#8295 PiperOrigin-RevId: 346064966
kimvde committed -
Issue: #8308 #minor-release PiperOrigin-RevId: 345707141
aquilescanta committed -
This was reported for SSA/ASS in PR #8265, but it seems to me the SubRip part of the Matroska spec is similarly loose, so this change handles null-terminated strings in both. PiperOrigin-RevId: 345452667
ibaker committed -
PiperOrigin-RevId: 345428731
Oliver Woodman committed -
The `AudioProcessor` interface requires that no more input is queued after queueing end of stream, but `DefaultAudioSink` did queue more input and the implementation of `SonicAudioProcessor` actually relied on this to drain output at the end of the stream. Fix this behavior by getting `Sonic` output in `getOutput` and having `DefaultAudioSink` only queue input to processors that are not draining. Also add TODOs to clean up audio processor implementations where the code handles interaction that doesn't conform to the interface. PiperOrigin-RevId: 345406478
andrewlewis committed -
Asset generated using a temporary SSA file and: ``` $ mkvmerge -o sample_with_ssa_subtitles.mkv sample.mkv input.ssa ``` PiperOrigin-RevId: 345217628
ibaker committed
-
- 08 Jan, 2021 4 commits
-
-
PiperOrigin-RevId: 345202157
Oliver Woodman committed -
PiperOrigin-RevId: 345036042
olly committed -
Previously `MediaPeriodQueue` would return null if an ad media URI hadn't loaded yet, but this meant that the player could be stuck in `STATE_READY` if an `AdsLoader` unexpectedly didn't provide an ad URI. Fix this behavior by masking ad media periods. `MaskingMediaPeriod` no longer requires a `MediaSource` to instantiate it. This also fixes a specific case where playback gets stuck when using the IMA extension with an empty ad where the IMA SDK unexpectedly doesn't notify the ad group fetch error. Issue: #8205 PiperOrigin-RevId: 344984824
andrewlewis committed -
PiperOrigin-RevId: 334801561
bachinger committed
-
- 04 Dec, 2020 3 commits
-
-
Marc Baechinger committed
-
Marc Baechinger committed
-
Marc Baechinger committed
-
- 01 Dec, 2020 1 commit
-
-
r2.12.2
Ian Baker committed
-
- 30 Nov, 2020 7 commits
-
-
PiperOrigin-RevId: 344801462
ibaker committed -
- Retire YouTube streams. They're flaky (e.g., one of them has transformed into an audio only stream!). There is also a desire for us to stop relying on special non-expiring YouTube URLs. - Reorganize the remaining streams. PiperOrigin-RevId: 344421031
olly committed -
PiperOrigin-RevId: 344420436
olly committed -
PiperOrigin-RevId: 344408351
olly committed -
#exofixit PiperOrigin-RevId: 344246408
olly committed -
Issue: #8239 PiperOrigin-RevId: 344211877
andrewlewis committed -
#exofixit Issue: #5602 PiperOrigin-RevId: 344093622
olly committed
-