RFR: 8282054: Mediaplayer not working with HTTP Live Stream link with query parameter appended with file extension m3u8
Alexander Matveev
almatvee at openjdk.java.net
Fri Mar 11 03:08:24 UTC 2022
- Problem was that our code which checks if URI ends with file extension was not considering that URI can have query parameters. Fixed by checking URI path, instead of actual URI.
- Also, creation of HLS Connection holder was missing checking for mimetype, since we do support URI without extensions as long as they provide correct mimetype.
- Added #EXTM3U to file signature check in case if extension and mimetype checks failed to determine stream type. All playlists of HLS based on spec should start with #EXTM3U. For some reason this particular stream has mimetype of "audio/x-mpegurl" and it is not mimetype from spec. Based on spec it should be "audio/mpegurl". Thus check for signature was added in case if URI does not use extension and has unsupported mimetype.
Note: audio will not work on Windows and Linux for stream provided in this bug report due to provided example uses separate audio stream via EXT-X-MEDIA tag and it is not supported. I filed separate issue for this.
-------------
Commit messages:
- 8282054: Mediaplayer not working with HTTP Live Stream link with query parameter appended with file extension m3u8
Changes: https://git.openjdk.java.net/jfx/pull/750/files
Webrev: https://webrevs.openjdk.java.net/?repo=jfx&pr=750&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8282054
Stats: 65 lines in 2 files changed: 27 ins; 3 del; 35 mod
Patch: https://git.openjdk.java.net/jfx/pull/750.diff
Fetch: git fetch https://git.openjdk.java.net/jfx pull/750/head:pull/750
PR: https://git.openjdk.java.net/jfx/pull/750
More information about the openjfx-dev
mailing list