You need to provide a livestream URL in MediaDataSource and indicates isLive: true.
Sample MPEG2-TS over HTTP source:
{
// MPEG2-TS over HTTP
"type": "mpegts",
"isLive": true,
"url": "http://127.0.0.1:8080/live/livestream.ts"
}
Sample HTTP FLV source:
{
// HTTP FLV
"type": "flv",
"isLive": true,
"url": "http://127.0.0.1:8080/live/livestream.flv"
}
Or a WebSocket source:
{
// MPEG2-TS/FLV over WebSocket
"type": "mse",
"isLive": true,
"url": "ws://127.0.0.1:9090/live/livestream.flv"
}
You must configure Access-Control-Allow-Origin header correctly on your stream server.
See cors.md for details.
Due to IO restrictions, mpegts.js can support HTTP MPEG2-TS/FLV live stream on Chrome 43+, FireFox 42+, Edge 15.15048+ and Safari 10.1+ for now.
HTTP MPEG2-TS/FLV live stream relies on stream IO, which has been introduced in fetch and stream spec. Now FetchStreamLoader works well on most of the modern browsers:
FetchStreamLoader works well on Chrome 43+fetch support but stream is missing, moz-chunked-arraybuffer xhr extension is usedfetch + stream is broken on old version of Microsoft Edge, see Fetch API with ReadableStream has bug with data pumping. Got fixed in Creator Update (RS2).FetchStreamLoader works well since Safari 10.1 (macOS 10.12.4)