ExoPlayer icon indicating copy to clipboard operation
ExoPlayer copied to clipboard

HLS init segment loads are not reported to MediaSourceEventListener

Open tipoc123 opened this issue 6 years ago • 4 comments

[REQUIRED] Issue description

Exoplayer tries lo load chunk by url /vod/78/video_78.mp4 instead of video_78.mp4?expires=1562330914&md5=4LMrqMnsIj99n8grOu1C3w (as stated in playlist) and as a result gets 403 Forbidden.

Also see the next difference (correct uri in onLoadStarted, incorrect - in DefaultHttpDataSource's open):

07-04 15:48:35.042 D/EventLogger( 4772): onLoadStarted [0.14, 0.00, window=0, period=0, uri=http://mw.iptv/vod/78/video_78.mp4?expires=1562330914&md5=4LMrqMnsIj99n8grOu1C3w, dataSpec.uri=http://mw.iptv/vod/78/video_78.mp4?expires=1562330914&md5=4LMrqMnsIj99n8grOu1C3w]
07-04 15:48:35.066 D/CustomHttpDataSource( 4772): open dataSpec.uri=http://mw.iptv/vod/78/video_78.mp4

[REQUIRED] Reproduction steps

Play content protected by Axinom DRM.

[REQUIRED] Link to test content

Sorry, no publicly available link.

[REQUIRED] A full bug report captured from the device

bugreport.txt

[REQUIRED] Version of ExoPlayer being used

2.10.0

[REQUIRED] Device(s) and version(s) of Android being used

Android 6.0.1 STB GIEC MP1113 (chip Amlogic s905x)

tipoc123 avatar Jul 04 '19 13:07 tipoc123

Example playlist (located at http://mw.iptv/vod/78/stream_1.m3u8?expires=1562330914&md5=cQ7YiHghCza6QB8ZZmWQFA):

example_playlist.txt.

Real file extension m3u8

tipoc123 avatar Jul 04 '19 13:07 tipoc123

ExoPlayer is not actually removing any query parts. The load you are seeing is the load for initialization data as specified in the EXT-X-MAP tag:

#EXT-X-MAP:URI="video_78.mp4",BYTERANGE="1128@0"

What's wrong here is that the event listener receives the onLoadStarted for the following media chunk load already, although the initialization data is loaded first. The load for the initialization data doesn't issue any events at all. The most likely fix is to separate the loads for initialization data and media data in a similar way as it's done for DASH.

tonihei avatar Jul 04 '19 14:07 tonihei

Thanks! Now it's working.

tipoc123 avatar Jul 05 '19 14:07 tipoc123

Great! I'll keep the issue open to fix the wrong reporting.

tonihei avatar Jul 05 '19 14:07 tonihei