mirror of
https://github.com/samsonjs/media.git
synced 2026-03-26 09:35:47 +00:00
Even when fixed to the US locale (and thus avoiding surprising behaviour in e.g. Turkish locale with "i" and "I") there are unexpected behaviours when upper and lower casing non-ASCII characters. For example it's sometimes not symmetric, e.g.: "ẞ".toLowerCase() -> "ß" "ß".toUpperCase() -> "SS" In all the ExoPlayer usages we are either dealing with known-ASCII strings (e.g. MIME types) or comparing against ASCII constant strings anyway, so it seems easier to just use Guava's ASCII-only class in these cases. Util.toUpperInvariant() is null-tolerant, while Ascii.toLowercase() is not. Most usages in this change are clearly non-null. The BandwidthMeter usages aren't annotated @Nullable, but the current code *would* work if countryCode was null in both cases. These methods will now throw NPE if they're passed null. PiperOrigin-RevId: 368816287 |
||
|---|---|---|
| .. | ||
| all | ||
| common | ||
| core | ||
| dash | ||
| extractor | ||
| hls | ||
| smoothstreaming | ||
| transformer | ||
| ui | ||
| README.md | ||
ExoPlayer library
The ExoPlayer library is split into multiple modules. See ExoPlayer's top level README for more information about the available library modules and how to use them.