moneytoo / Player

▶ Simple and lightweight, yet polished and powerful Android video player based on ExoPlayer
https://play.google.com/store/apps/details?id=com.brouken.player
The Unlicense
1.55k stars 180 forks source link

[Feature Request] Ordered Chapters Playback Support for MKV Files #604

Open ItsMe-Haris opened 1 month ago

ItsMe-Haris commented 1 month ago

Introduce support for ordered chapters playback in MKV files to provide seamless, uninterrupted viewing experience when chapters reference external files or segments within the same file.

Ordered chapters are used to create an episode playlist or skip certain segments within the same file. mpv-android works with ordered chapter playback but it is not based on ExoPlayer.

Please look into it (if possible). Thanks!

ItsMe-Haris commented 1 month ago

I did a little bit of research on this and chapter marker show up on the timeline in Just Player, that means you are able to parse the (chapter) metadata of mkv file. If you could check if EditionEntry contains EditionFlagOrdered flag then modify ExoPlayer's Timeline to create a dynamic timeline that only plays the timestamps included in the chapter entries. This could allow skipping intros, credits etc with ease.

In some files there maybe first ordered chapter with (timestamps) last part of video before and then second ordered chapter with some part from the middle etc, so the dynamic timeline should be constructed based on this order. This will do ordered chapter playback within the same file but for those with ordered chapters linking different file, this will be tricky.

Let me know your thoughts!