videojs / http-streaming

HLS, DASH, and future HTTP streaming protocols library for video.js
https://videojs-http-streaming.netlify.app/
Other
2.51k stars 424 forks source link

HLS stream downloaded all *.ts segments before playing video. #274

Open delence opened 6 years ago

delence commented 6 years ago

Description

I am trying to play a HLS stream but player only plays video once all segments have been downloaded. The player just spins I guess because its buffering the video until the entire video has been downloaded. I see this in the network tab of Chrome developer tools where it shows the .m3u8 manifest downloaded, stream selected and *.ts segments being downloaded but video does not play until all segments have been downloaded.

The following JSBin reproduces this streaming issue. http://output.jsbin.com/voxeceq/1

Steps to reproduce

Explain in detail the exact steps necessary to reproduce the issue.

  1. Updated JSBin sandbox with stream source. http://player.ooyala.com/player/ipad/I5bjVoZzE6hxTwvwIUDiduw2l3yEavBS.m3u8
  2. Open JSBin output in new window and change to plan http from https.
  3. Open debug console and watch network traffic.
  4. Click play button.

Results

Expected

I expect video to play the stream and not wait to download all entire video.

Error output

None

Additional Information

The HLS stream plays fine on other video players.

videojs-http-streaming version

videojs-http-streaming 1.4.1

videojs version

video.js 7.2.3

Browsers

Chrome 69

Platforms

Windows 10

Other Plugins

None

Other JavaScript

None

welcome[bot] commented 6 years ago

👋 Thanks for opening your first issue here! 👋

If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can. To help make it easier for us to investigate your issue, please follow the contributing guidelines.

taiki-watanabe commented 5 years ago

If I transcode only first ts file with ffmpeg command, this issue has been improved (whole ts file aren't downloaded before playback. I don't know why, thought.)

ffmpeg -i sample_1_1.ts -codec copy ./tmp/sample_1_1.ts

I hope this will help.

CuongPhi commented 4 years ago

I got the same issue when seeking video hls in load progress bar! Who have a tricks for avoid this ?