{"action":"created","issue":{"url":"https://api.github.com/repos/video-dev/hls.js/issues/1607","repository_url":"https://api.github.com/repos/video-dev/hls.js","labels_url":"https://api.github.com/repos/video-dev/hls.js/issues/1607/labels{/name}","comments_url":"https://api.github.com/repos/video-dev/hls.js/issues/1607/comments","events_url":"https://api.github.com/repos/video-dev/hls.js/issues/1607/events","html_url":"https://github.com/video-dev/hls.js/issues/1607","id":304958769,"number":1607,"title":"repeated request for init segment of live fmp4 playlist","user":{"login":"kevinGodell","id":6091746,"avatar_url":"https://avatars1.githubusercontent.com/u/6091746?v=4","gravatar_id":"","url":"https://api.github.com/users/kevinGodell","html_url":"https://github.com/kevinGodell","followers_url":"https://api.github.com/users/kevinGodell/followers","following_url":"https://api.github.com/users/kevinGodell/following{/other_user}","gists_url":"https://api.github.com/users/kevinGodell/gists{/gist_id}","starred_url":"https://api.github.com/users/kevinGodell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kevinGodell/subscriptions","organizations_url":"https://api.github.com/users/kevinGodell/orgs","repos_url":"https://api.github.com/users/kevinGodell/repos","events_url":"https://api.github.com/users/kevinGodell/events{/privacy}","received_events_url":"https://api.github.com/users/kevinGodell/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-03-13T22:29:17Z","updated_at":"2018-03-16T07:53:56Z","closed_at":null,"author_association":"NONE","body":"\r\nI am currently [testing an implementation](https://github.com/kevinGodell/ffmpeg-streamer) of hls.js player v0.8.9 that I installed as the npm module. The player is able to read my m3u8 playlist and playback the video, but it seems to unnecessarily request the **init segment** each time that it reads the m3u8 playlist and subsequently requests the next media segment.\r\n\r\nlive fmp4 m3u8 playlist (verified good with mac's mediastreamvalidator tool)\r\n```\r\n#EXTM3U\r\n#EXT-X-VERSION:7\r\n#EXT-X-TARGETDURATION:6\r\n#EXT-X-MEDIA-SEQUENCE:66\r\n#EXT-X-MAP:URI=\"init-test.mp4\"\r\n#EXTINF:6.321000,\r\ntest66.m4s\r\n#EXTINF:6.171000,\r\ntest67.m4s\r\n#EXTINF:6.329000,\r\ntest68.m4s\r\n```\r\nserver logs showing the GET requests when **using hls.js** to play live stream\r\n```\r\nGET /hls/init-test.mp4 200 0.565 ms - -\r\nGET /hls/test70.m4s 200 0.193 ms - -\r\nGET /hls/test.m3u8 200 0.157 ms - -\r\nGET /hls/init-test.mp4 200 0.149 ms - -\r\nGET /hls/test71.m4s 200 0.149 ms - -\r\nGET /hls/test.m3u8 200 0.130 ms - -\r\nGET /hls/init-test.mp4 200 0.115 ms - -\r\nGET /hls/test72.m4s 200 0.117 ms - -\r\n```\r\nserver logs showing the GET requests when playing the m3u8 **natively in safari browser**\r\n```\r\nGET /hls/test.m3u8 200 0.163 ms - -\r\nGET /hls/test21.m4s 200 0.182 ms - -\r\nGET /hls/test.m3u8 200 0.131 ms - -\r\nGET /hls/test22.m4s 200 0.167 ms - -\r\nGET /hls/test.m3u8 200 0.144 ms - -\r\nGET /hls/test23.m4s 200 0.120 ms - -\r\nGET /hls/test.m3u8 200 0.141 ms - -\r\nGET /hls/test24.m4s 200 0.120 ms - -\r\nGET /hls/test.m3u8 200 0.139 ms - -\r\nGET /hls/test25.m4s 200 0.376 ms - -\r\n```\r\nThe native safari hls player only requests the init segment the first time and requests the playlist and media segments after that.\r\n\r\nThis is not really a big deal as it does not prevent playback, but just wastes a little bit of bandwidth. \r\n\r\nThanks for reading."},"comment":{"url":"https://api.github.com/repos/video-dev/hls.js/issues/comments/373632233","html_url":"https://github.com/video-dev/hls.js/issues/1607#issuecomment-373632233","issue_url":"https://api.github.com/repos/video-dev/hls.js/issues/1607","id":373632233,"user":{"login":"kevinGodell","id":6091746,"avatar_url":"https://avatars1.githubusercontent.com/u/6091746?v=4","gravatar_id":"","url":"https://api.github.com/users/kevinGodell","html_url":"https://github.com/kevinGodell","followers_url":"https://api.github.com/users/kevinGodell/followers","following_url":"https://api.github.com/users/kevinGodell/following{/other_user}","gists_url":"https://api.github.com/users/kevinGodell/gists{/gist_id}","starred_url":"https://api.github.com/users/kevinGodell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kevinGodell/subscriptions","organizations_url":"https://api.github.com/users/kevinGodell/orgs","repos_url":"https://api.github.com/users/kevinGodell/repos","events_url":"https://api.github.com/users/kevinGodell/events{/privacy}","received_events_url":"https://api.github.com/users/kevinGodell/received_events","type":"User","site_admin":false},"created_at":"2018-03-16T07:53:56Z","updated_at":"2018-03-16T07:53:56Z","author_association":"NONE","body":"@mangui I followed your instructions and tried out hls.js using npm run dev. Unfortunately, it stops loading **all** segments after the first few that it reads from playlist. It does continue to request the playlist, but never makes any requests for more segments.\r\n\r\nI setup a way for you to try out a *live* and *vod* **fmp4** hls playlist. The vod fmp4 playlist is [here](https://kevingodell.github.io/streams/index.html). Testing with a live playlist is a little trickier, but I made a bundled nodejs app for that.\r\n\r\nIf you would like to try it, the app can be downloaded on the [releases](https://github.com/kevinGodell/ffmpeg-streamer/releases/tag/v0.0.9) page. Just launch the executable and go to your **modern** browser to `http://localhost:8181` to view the main page where you can enter a video feed and use it to stream to the browser. If ffmpeg is not found on your system, the app will prompt you to install it. The app will be pre-populated with all the settings needed, so you can just press the check button at bottom to launch the video page. \r\n\r\nOn the video page, you can find a link to the live fmp4 m3u8 playlist(http://localhost:8181/hls/test.m3u8) that you can use as the source for your newer version of hls.js.\r\n\r\nThanks!"}}
{"actor":{"display_login":"kevinGodell"}}