JDK-8185691 : MediaPlayer reports error with HTTP Live Streams instead of EOS
  • Type: Bug
  • Component: javafx
  • Sub-Component: media
  • Affected Version: 8u102,9,10
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: linux
  • Submitted: 2017-08-01
  • Updated: 2017-10-11
  • Resolved: 2017-08-05
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 10 JDK 8
10Fixed 8u162Fixed
Related Reports
Relates :  
This issue is reproducible on Ubuntu 15.10 or 16.04 (with libav56). It is reproducible with any streams which I tried, so it looks like affecting any HLS stream with MPEG-TS. MP3 HLS streams work fine.

To reproduce try to play any HLS stream with callbacks set for error and EOS. EOS is never received and error will be set instead.

Looks good. +1

Looks fine to me, approved

Please review the following: http://cr.openjdk.java.net/~almatvee/8185691/webrev.00/ Reviewers: kcr, ddehaven Fixed issue when error was send instead of EOS on Linux. This is due to difference between libav (expected by us) and libav-ffmpeg (used by Ubuntu). Errors code are define differently between libav and libav-ffmpeg and thus we considered EOS as error. Fixed by detecting EOS when demuxer is sending us error code and we do not expecting any data anymore from it. Also, fixed read callback to return 0 (EOS) instead of error code.