hls.js icon indicating copy to clipboard operation
hls.js copied to clipboard

Support for "trick play" thumbnails

Open CaseV7 opened this issue 2 years ago • 2 comments

Is your feature request related to a problem? Please describe.

We use hls.js for VOD playback. We would love to add trick-play support within our player using either #EXT-X-I-FRAME-STREAM-INF or #EXT-X-IMAGE-STREAM-INF playlists.

(We render both, I-Frames for Apple and EXT-X-IMAGE-STREAM-INF for Roku)

Describe the solution you'd like

Ideally we would like to be able to display the thumbnails over our seek-bar in a smaller view that hovers over the bar (like Apple does on tvOS).

A less desirable but still acceptable solution would be for a seek to display the I-frames full screen in the video player itself so users can find the spot they are looking for in a video before they stop seeking.

Additional context

No response

CaseV7 avatar Apr 13 '23 22:04 CaseV7

I don't plan to add support for Roku's EXT-X-IMAGE-STREAM-INF - that is not part of the HLS spec. I am open to discussing how HLS.js could allow access to these tags and the playlists and segment data they carry.

The plan is to add an I-Frame mode of Hls instances that will deal only with #EXT-X-I-FRAME-STREAM-INF variants and segment data. You would be able to spawn an iframe instance from an instance that has loaded an HLS asset with I-Frame variants and then either attach a new media element for thumbnail preview, or transfer the MediaSource (non-destructive)/detach-attach(destructive) for fullscan FF/RW and scrubbing.

For JPEG thumbs Apple has outlines how to deliver #EXT-X-I-FRAME-STREAM-INF variants with mp4 segments carrying jpeg image data. This is also something that we'll look at for v1.7.

robwalch avatar Sep 18 '24 14:09 robwalch

Any update on this?

z4yed avatar Dec 09 '24 16:12 z4yed