-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Open
Labels
BugDuplicateNeeds TriageIf there is a suspected stream issue, apply this label to triage if it is something we should fix.If there is a suspected stream issue, apply this label to triage if it is something we should fix.browser: Chrome
Description
What version of Hls.js are you using?
1.5.13
What browser (including version) are you using?
version 144.0.7559.97(Official build) (arm64)
What OS (including version) are you using?
mac
Test stream
Configuration
{
"debug": true,
"enableWorker": true,
"lowLatencyMode": true,
"backBufferLength": 90
}Additional player setup steps
chrome extension : https://chromewebstore.google.com/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlf?hl=ko&utm_source=ext_sidebar
You can check it out on the demo page by installing and activating the extension from the link above.
Checklist
- The issue observed is not already reported by searching on Github under https://github.com/video-dev/hls.js/issues
- The issue occurs in the stable client (latest release) on https://hlsjs.video-dev.org/demo and not just on my page
- The issue occurs in the latest client (main branch) on https://hlsjs-dev.video-dev.org/demo and not just on my page
- The stream has correct Access-Control-Allow-Origin headers (CORS)
- There are no network errors such as 404s in the browser console when trying to play the stream
Steps to reproduce
- Seek the 1005th segment on the demo page and wait 0~1 seconds.
- Seek the 1004th segment.
After the 1004th segment is played, the 1005th segment plays audio but the video is frozen.
Expected behaviour
1005th segment play
What actually happened?
After the 1004th segment is played, the 1005th segment plays audio but the video is frozen.
Console output
{dataType: 'fragment', _byteRange: Array(2), _url: 'https://vod-archive-fmp4-kr-cdn-z01.sooplive.co.kr…E_290974534_3_original.mp4?o=2045788092&n=2051301', baseurl: 'https://vod-archive-fmp4-kr-cdn-z01.sooplive.co.kr…290974534/FRAG_51C4763E_290974534_3_original.m3u8', relurl: 'FRAG_51C4763E_290974534_3_original.mp4?o=2045788092&n=2051301', …}baseurl: "https://vod-archive-fmp4-kr-cdn-z01.sooplive.co.kr/fvod/20260122/534/290974534/FRAG_51C4763E_290974534_3_original.m3u8"bitrateTest: falsecc: 0data: undefineddataType: "fragment"deltaPTS: undefinedduration: 1.9849999999999elementaryStreams: {audio: null, video: null, audiovideo: {…}}endDTS: 1995.243endList: undefinedendPTS: 1995.243gap: undefinedinitSegment: Fragment {_byteRange: Array(2), _url: 'https://vod-archive-fmp4-kr-cdn-z01.sooplive.co.kr…FRAG_51C4763E_290974534_3_original.mp4?o=0&n=1152', baseurl: 'https://vod-archive-fmp4-kr-cdn-z01.sooplive.co.kr…290974534/FRAG_51C4763E_290974534_3_original.m3u8', relurl: 'FRAG_51C4763E_290974534_3_original.mp4?o=0&n=1152', elementaryStreams: {…}, …}keyLoader: nulllevel: 0levelkeys: undefinedloader: nullmaxStartPTS: 1993.258minEndPTS: 1995.243programDateTime: nullrawProgramDateTime: nullrelurl: "FRAG_51C4763E_290974534_3_original.mp4?o=2045788092&n=2051301"sn: 1004start: 1993.258startDTS: 1993.258startPTS: 1993.258stats: LoadStats {aborted: false, loaded: 2051301, retry: 0, total: 2051301, chunkCount: 1, …}tagList: [Array(2)]title: nulltype: "main"urlId: 0_byteRange: (2) [2045788092, 2047839393]_decryptdata: null_url: "https://vod-archive-fmp4-kr-cdn-z01.sooplive.co.kr/fvod/20260122/534/290974534/FRAG_51C4763E_290974534_3_original.mp4?o=2045788092&n=2051301"[[Prototype]]: Object
base-stream-controller.ts:241 [log] > [stream-controller]: media seeking to 1993.838, state: IDLE
base-stream-controller.ts:241 [log] > [audio-stream-controller]: media seeking to 1993.838, state: STOPPED
base-stream-controller.ts:241 [log] > [subtitle-stream-controller]: media seeking to 1993.838, state: IDLE
stream-controller.ts:556 [log] > [stream-controller]: Media seeked to 1993.838Chrome media internals output
### log after seeking
{
"properties": {
"render_id": 652,
"player_id": 0,
"pipeline_state": "kPlaying",
"event": "kPlay",
"seek_target": 1994.539639,
"kRendererName": "RendererImpl",
"kIsAudioDecryptingDemuxerStream": false,
"kAudioDecoderName": "FFmpegAudioDecoder",
"kIsPlatformAudioDecoder": false,
"info": "Effective playback rate changed from 0 to 1",
"debug": "Video rendering in low delay mode.",
"kIsVideoDecryptingDemuxerStream": false,
"kVideoDecoderName": "VideoToolboxVideoDecoder",
"kIsPlatformVideoDecoder": true,
"dimensions": "1920x1080",
"kResolution": "1920x1080",
"video_buffering_state": {
"state": "BUFFERING_HAVE_ENOUGH"
},
"audio_buffering_state": {
"state": "BUFFERING_HAVE_ENOUGH"
},
"pipeline_buffering_state": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
}
},
"events": [
{
"time": 0,
"key": "pipeline_state",
"value": "kSuspending"
},
{
"time": 1.1019999999552965,
"key": "pipeline_state",
"value": "kSuspended"
},
{
"time": 1.175000000745058,
"key": "event",
"value": "kSuspended"
},
{
"time": 18748.58400000073,
"key": "seek_target",
"value": 1996.762524
},
{
"time": 18748.643000001088,
"key": "kRendererName",
"value": "RendererImpl"
},
{
"time": 18748.97599999979,
"key": "pipeline_state",
"value": "kResuming"
},
{
"time": 19106.276000000536,
"key": "kIsAudioDecryptingDemuxerStream",
"value": false
},
{
"time": 19106.279000001028,
"key": "kAudioDecoderName",
"value": "FFmpegAudioDecoder"
},
{
"time": 19106.279000001028,
"key": "kIsPlatformAudioDecoder",
"value": false
},
{
"time": 19106.286000000313,
"key": "info",
"value": "Selected FFmpegAudioDecoder for audio decoding, config: codec: aac, profile: unknown, bytes_per_channel: 2, channel_layout: STEREO, channels: 2, samples_per_second: 48000, sample_format: Signed 16-bit, bytes_per_frame: 4, seek_preroll: 0us, codec_delay: 0, has extra data: true, encryption scheme: Unencrypted, discard decoder delay: false, target_output_channel_layout: STEREO, target_output_sample_format: Unknown sample format"
},
{
"time": 19106.300000000745,
"key": "debug",
"value": "Video rendering in low delay mode."
},
{
"time": 19106.31200000085,
"key": "info",
"value": "Cannot select DecryptingVideoDecoder for video decoding"
},
{
"time": 19112.292000001296,
"key": "kIsVideoDecryptingDemuxerStream",
"value": false
},
{
"time": 19112.29300000146,
"key": "kVideoDecoderName",
"value": "VideoToolboxVideoDecoder"
},
{
"time": 19112.29399999976,
"key": "kIsPlatformVideoDecoder",
"value": true
},
{
"time": 19112.30100000091,
"key": "info",
"value": "Selected VideoToolboxVideoDecoder for video decoding, config: codec: h264, profile: h264 main, level: 42, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}"
},
{
"time": 19112.314000001177,
"key": "pipeline_state",
"value": "kPlaying"
},
{
"time": 19155.634000001475,
"key": "dimensions",
"value": "1920x1080"
},
{
"time": 19155.637000000104,
"key": "kResolution",
"value": "1920x1080"
},
{
"time": 19155.73300000094,
"key": "info",
"value": "Effective playback rate changed from 0 to 1"
},
{
"time": 19155.66800000146,
"key": "video_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 19112.599000001326,
"key": "audio_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 19155.69000000134,
"key": "pipeline_buffering_state",
"value": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 19155.767000000924,
"key": "event",
"value": "kPlay"
},
{
"time": 19925.463000001386,
"key": "seek_target",
"value": 1994.539639
},
{
"time": 19925.537000000477,
"key": "pipeline_state",
"value": "kSeeking"
},
{
"time": 20060.172000000253,
"key": "pipeline_state",
"value": "kPlaying"
},
{
"time": 20092.648000000045,
"key": "video_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 20060.428000001237,
"key": "audio_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 20092.66000000015,
"key": "pipeline_buffering_state",
"value": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
}
}
]
}
## total log
{
"properties": {
"render_id": 575,
"player_id": 2,
"created": "2026-01-26 05:48:31.589103 UTC",
"origin_url": "https://7e3969ad.hls-js-dev.pages.dev/",
"kFrameUrl": "https://7e3969ad.hls-js-dev.pages.dev/demo/?src=https%3A%2F%2Fvod-archive-fmp4-kr-cdn-z01.sooplive.co.kr%2Ffvod%2F20260122%2F534%2F290974534%2FFRAG_51C4763E_290974534_3_original.m3u8&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOnRydWUsInN0b3BPblN0YWxsIjpmYWxzZSwiZHVtcGZNUDQiOmZhbHNlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ==",
"kFrameTitle": "hls.js demo",
"url": "blob:https://7e3969ad.hls-js-dev.pages.dev/ff02cdc6-af3d-49f1-9d00-9eeb6adfc393",
"info": "Effective playback rate changed from 0 to 1",
"kRendererName": "RendererImpl",
"pipeline_state": "kPlaying",
"kVideoTracks": [
{
"alpha mode": "is_opaque",
"codec": "h264",
"coded size": "1920x1080",
"color space": {
"matrix": "BT709",
"primaries": "BT709",
"range": "LIMITED",
"transfer": "BT709"
},
"encryption scheme": "Unencrypted",
"has extra data": false,
"hdr metadata": "unset",
"natural size": "1920x1080",
"orientation": "0°",
"profile": "h264 main",
"visible rect": "0,0 1920x1080"
}
],
"kAudioTracks": [
{
"bytes per channel": 2,
"bytes per frame": 4,
"channel layout": "STEREO",
"channels": 2,
"codec": "aac",
"codec delay": 0,
"discard decoder delay": false,
"encryption scheme": "Unencrypted",
"has extra data": true,
"profile": "unknown",
"sample format": "Signed 16-bit",
"samples per second": 48000,
"seek preroll": "0us"
}
],
"kIsAudioDecryptingDemuxerStream": false,
"kAudioDecoderName": "FFmpegAudioDecoder",
"kIsPlatformAudioDecoder": false,
"debug": "Video rendering in low delay mode.",
"kIsVideoDecryptingDemuxerStream": false,
"kVideoDecoderName": "VideoToolboxVideoDecoder",
"kIsPlatformVideoDecoder": true,
"dimensions": "1920x1080",
"kResolution": "1920x1080",
"duration": 3514.01,
"video_buffering_state": {
"state": "BUFFERING_HAVE_ENOUGH"
},
"audio_buffering_state": {
"state": "BUFFERING_HAVE_ENOUGH"
},
"pipeline_buffering_state": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
},
"event": "kPlay",
"seek_target": 1994.054495
},
"events": [
{
"time": 0,
"key": "created",
"value": "2026-01-26 05:48:31.589103 UTC"
},
{
"time": 0.053999999538064,
"key": "origin_url",
"value": "https://7e3969ad.hls-js-dev.pages.dev/"
},
{
"time": 0.057999998331069946,
"key": "kFrameUrl",
"value": "https://7e3969ad.hls-js-dev.pages.dev/demo/?src=https%3A%2F%2Fvod-archive-fmp4-kr-cdn-z01.sooplive.co.kr%2Ffvod%2F20260122%2F534%2F290974534%2FFRAG_51C4763E_290974534_3_original.m3u8&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOnRydWUsInN0b3BPblN0YWxsIjpmYWxzZSwiZHVtcGZNUDQiOmZhbHNlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ=="
},
{
"time": 0.05899999849498272,
"key": "kFrameTitle",
"value": "hls.js demo"
},
{
"time": 0.08999999985098839,
"key": "url",
"value": "blob:https://7e3969ad.hls-js-dev.pages.dev/ff02cdc6-af3d-49f1-9d00-9eeb6adfc393"
},
{
"time": 0.10099999979138374,
"key": "info",
"value": "ChunkDemuxer"
},
{
"time": 0.10399999842047691,
"key": "kRendererName",
"value": "RendererImpl"
},
{
"time": 0.2769999988377094,
"key": "pipeline_state",
"value": "kStarting"
},
{
"time": 166.11099999956787,
"key": "kVideoTracks",
"value": [
{
"alpha mode": "is_opaque",
"codec": "h264",
"coded size": "1920x1080",
"color space": {
"matrix": "BT709",
"primaries": "BT709",
"range": "LIMITED",
"transfer": "BT709"
},
"encryption scheme": "Unencrypted",
"has extra data": false,
"hdr metadata": "unset",
"natural size": "1920x1080",
"orientation": "0°",
"profile": "h264 main",
"visible rect": "0,0 1920x1080"
}
]
},
{
"time": 166.1279999986291,
"key": "kAudioTracks",
"value": [
{
"bytes per channel": 2,
"bytes per frame": 4,
"channel layout": "STEREO",
"channels": 2,
"codec": "aac",
"codec delay": 0,
"discard decoder delay": false,
"encryption scheme": "Unencrypted",
"has extra data": true,
"profile": "unknown",
"sample format": "Signed 16-bit",
"samples per second": 48000,
"seek preroll": "0us"
}
]
},
{
"time": 168.37099999934435,
"key": "kIsAudioDecryptingDemuxerStream",
"value": false
},
{
"time": 168.37299999967217,
"key": "kAudioDecoderName",
"value": "FFmpegAudioDecoder"
},
{
"time": 168.37299999967217,
"key": "kIsPlatformAudioDecoder",
"value": false
},
{
"time": 168.378999998793,
"key": "info",
"value": "Selected FFmpegAudioDecoder for audio decoding, config: codec: aac, profile: unknown, bytes_per_channel: 2, channel_layout: STEREO, channels: 2, samples_per_second: 48000, sample_format: Signed 16-bit, bytes_per_frame: 4, seek_preroll: 0us, codec_delay: 0, has extra data: true, encryption scheme: Unencrypted, discard decoder delay: false, target_output_channel_layout: STEREO, target_output_sample_format: Unknown sample format"
},
{
"time": 168.3889999985695,
"key": "debug",
"value": "Video rendering in low delay mode."
},
{
"time": 168.4009999986738,
"key": "info",
"value": "Cannot select DecryptingVideoDecoder for video decoding"
},
{
"time": 175.9239999987185,
"key": "kIsVideoDecryptingDemuxerStream",
"value": false
},
{
"time": 175.9359999988228,
"key": "kVideoDecoderName",
"value": "VideoToolboxVideoDecoder"
},
{
"time": 175.9359999988228,
"key": "kIsPlatformVideoDecoder",
"value": true
},
{
"time": 175.9429999999702,
"key": "info",
"value": "Selected VideoToolboxVideoDecoder for video decoding, config: codec: h264, profile: h264 main, level: 42, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}"
},
{
"time": 175.95099999941885,
"key": "pipeline_state",
"value": "kPlaying"
},
{
"time": 192.50999999977648,
"key": "dimensions",
"value": "1920x1080"
},
{
"time": 192.5120000001043,
"key": "kResolution",
"value": "1920x1080"
},
{
"time": 27.196999998763204,
"key": "duration",
"value": 3514.01
},
{
"time": 192.50799999944866,
"key": "video_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 181.46399999968708,
"key": "audio_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 192.54099999926984,
"key": "pipeline_buffering_state",
"value": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 15196.492999998853,
"key": "pipeline_state",
"value": "kSuspending"
},
{
"time": 15196.77199999988,
"key": "pipeline_state",
"value": "kSuspended"
},
{
"time": 15196.794999999925,
"key": "event",
"value": "kSuspended"
},
{
"time": 28284.50799999945,
"key": "seek_target",
"value": 1996.449634
},
{
"time": 28284.533999999985,
"key": "kRendererName",
"value": "RendererImpl"
},
{
"time": 28284.642999999225,
"key": "pipeline_state",
"value": "kResuming"
},
{
"time": 28338.08999999985,
"key": "kIsAudioDecryptingDemuxerStream",
"value": false
},
{
"time": 28338.091000000015,
"key": "kAudioDecoderName",
"value": "FFmpegAudioDecoder"
},
{
"time": 28338.091999998316,
"key": "kIsPlatformAudioDecoder",
"value": false
},
{
"time": 28338.098999999464,
"key": "info",
"value": "Selected FFmpegAudioDecoder for audio decoding, config: codec: aac, profile: unknown, bytes_per_channel: 2, channel_layout: STEREO, channels: 2, samples_per_second: 48000, sample_format: Signed 16-bit, bytes_per_frame: 4, seek_preroll: 0us, codec_delay: 0, has extra data: true, encryption scheme: Unencrypted, discard decoder delay: false, target_output_channel_layout: STEREO, target_output_sample_format: Unknown sample format"
},
{
"time": 28338.107999999076,
"key": "debug",
"value": "Video rendering in low delay mode."
},
{
"time": 28338.120999999344,
"key": "info",
"value": "Cannot select DecryptingVideoDecoder for video decoding"
},
{
"time": 28342.115999998525,
"key": "kIsVideoDecryptingDemuxerStream",
"value": false
},
{
"time": 28342.11699999869,
"key": "kVideoDecoderName",
"value": "VideoToolboxVideoDecoder"
},
{
"time": 28342.117999998853,
"key": "kIsPlatformVideoDecoder",
"value": true
},
{
"time": 28342.123999999836,
"key": "info",
"value": "Selected VideoToolboxVideoDecoder for video decoding, config: codec: h264, profile: h264 main, level: 42, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}"
},
{
"time": 28342.133999999613,
"key": "pipeline_state",
"value": "kPlaying"
},
{
"time": 28385.7509999983,
"key": "dimensions",
"value": "1920x1080"
},
{
"time": 28385.753999998793,
"key": "kResolution",
"value": "1920x1080"
},
{
"time": 28385.780999999493,
"key": "info",
"value": "Effective playback rate changed from 0 to 1"
},
{
"time": 28375.78299999982,
"key": "video_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 28342.449999999255,
"key": "audio_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 28385.756999999285,
"key": "pipeline_buffering_state",
"value": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 28385.803999999538,
"key": "event",
"value": "kPlay"
},
{
"time": 29769.979999998584,
"key": "seek_target",
"value": 1994.054495
},
{
"time": 29770.014999998733,
"key": "pipeline_state",
"value": "kSeeking"
},
{
"time": 29919.898999998346,
"key": "pipeline_state",
"value": "kPlaying"
},
{
"time": 29941.398000000045,
"key": "video_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 29920.099999999627,
"key": "audio_buffering_state",
"value": {
"state": "BUFFERING_HAVE_ENOUGH"
}
},
{
"time": 29941.409999998286,
"key": "pipeline_buffering_state",
"value": {
"for_suspended_start": false,
"state": "BUFFERING_HAVE_ENOUGH"
}
}
]
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
BugDuplicateNeeds TriageIf there is a suspected stream issue, apply this label to triage if it is something we should fix.If there is a suspected stream issue, apply this label to triage if it is something we should fix.browser: Chrome