videojs / videojs-contrib-hls

HLS library for video.js
http://videojs.github.io/videojs-contrib-hls/
Other
2.84k stars 792 forks source link

Cannot get my audio only stream working #1369

Closed earl3s closed 6 years ago

earl3s commented 6 years ago

Description

I am trying to get my audio only HLS stream working in the text player. When I put it in my stream nothing plays and I get a javascript error.

http://jsbin.com/tiwimowumu/edit?html,output

Sources

Here is my stream: https://prod-54-225-5-198.wostreaming.net/entercom-kiswfmaac-cloud.m3u8

Steps to reproduce

  1. Paste the stream into the test player
  2. Hit Load
  3. Hit the play button

Results

Expected

The player plays the stream.

Error output

This is the error in the js console:

videojs-contrib-hls.js:20521 Uncaught TypeError: Cannot read property 'segments' of undefined at videojs-contrib-hls.js:20521 at Array.reduce () at VirtualSourceBuffer.processPendingSegments (videojs-contrib-hls.js:20516) at VirtualSourceBuffer.done (videojs-contrib-hls.js:20306) at Worker.VirtualSourceBuffer.transmuxer.onmessage (videojs-contrib-hls.js:20117) (anonymous) @ videojs-contrib-hls.js:20521 processPendingSegments @ videojs-contrib-hls.js:20516 done @ videojs-contrib-hls.js:20306 VirtualSourceBuffer.transmuxer.onmessage @ videojs-contrib-hls.js:20117

Additional Information

Please include any additional information necessary here. Including the following:

Browsers

Tried this on chrome

Platforms

On Windows and MacOS

gesinger commented 6 years ago

Looks like a combined segment type is being passed back (which we can't process). We'll take a look, and thanks for reporting and for the sample!

earl3s commented 6 years ago

Thank you. Very appreciated.

dotungvp1994 commented 6 years ago

@gesinger: I have same problem with combined segment type? How to fix error?

earl3s commented 6 years ago

@gesinger wondering if you have an update on the bug?

earl3s commented 6 years ago

Hey guys, checking back one more time. This is causing some pretty wide spread problems across many players that use VideoJS. Hoping you might have an update.

gesinger commented 6 years ago

Hey @earl3s , sorry for the delay. We looked at a few of the segments in the stream and noticed that some of them didn't start with "ID3." From the HLS spec:

https://tools.ietf.org/html/draft-pantos-http-live-streaming-23#section-3.4

Each Packed Audio Segment MUST signal the timestamp of its first sample with an ID3 PRIV tag [ID3] at the beginning of the segment. The ID3 PRIV owner identifier MUST be "com.apple.streaming.transportStreamTimestamp".

Let us know if this helps!

earl3s commented 6 years ago

We'll look at this. We had consistent playback problems with those id3 headers at the beginning of each segment. It was causing audio blips in VLC player. This stream also plays back without error in JWPlayer. We will check on this though and get back to you.

Thanks for looking!

ghost commented 6 years ago

This issue was moved by forbesjo to videojs/http-streaming#142.