Skip Intro
#16
(2022-05-20, 21:58)emveepee Wrote: @enen92 how are you considering implementing this?  I have briefly been playing with this for NextPVR recordings (server side) and it seems to work as expected, but I would think most people would want PVR_EDL_TYPE_COMBREAK anyway, the TV series intro's are often too sort, 15-30 seconds to reach for the remount.  Are you suggesting a new type with a skip intro OSD?

Martin
I am still not sure 100% sure.
My idea at a basic level is just to extend MPlayer EDL (which by now is pretty much Kodi specific since it includes more edit types than what MPlayer used to support) with a new (or more than one) types/ids. The one or more IDs is my main doubt currently.

Generically, intro/outros/recaps are all the same if we try to categorize them into an edit type. They are "skippable sections" (sections than can be skipped automatically if the user chooses to set Kodi to do so) or (by default) sections which the user may skip upon a button prompt. The only difference between them is a label.

So my idea is to have a new EditType linked to a string/label. Just like commbreaks, this new type must add a scene marker at the begin and end of the section.
Then we need to add a few infolabels/bools (Player.InEdit, Player.CurrentEditType, etc).
Then we can relegate the button to skins just like shown here:
https://forum.kodi.tv/showthread.php?tid...pid3084062

Hitting the button would execute Next (iirc the built-in correctly) which will skip to the next scene marker (== end of the skippable section).
Not a big deal to implement but I preferred to fix old edl/edit types that were previously broken (mute and cut).
Cheers
Reply
#17
Thanks for know I will leave it as combreak.   My experience with cut is users don't like seeing the shortened timeline plus it makes skipping by time much harder.  Playback is the same anyway.

Martin
Reply
#18
@enen92 one thing I have noted during testing on PVR recordings is because padding you need to factor in credits (outro) before and after the intro and an intro after credits.

Martin
Reply
#19
That's not a Kodi problem. If you flag an intro/outro in period X-Y Kodi should present a button at time X and skip to time Y if clicked. Offsets or where those markers are placed are not the Kodi responsibility but rather of the tool/backend/whatever that has set them.
Reply
#20
I was pointing out that it could be be confusing and you can't assume only one or the order.   I have read discussion elsewhere that a credit might be considered as program end, which could cause a major problem.

Martin
Reply
#21
@enen92 @emveepee  

Has there been any update on the edl situation. A jellyfin developer has made an intro detector plugin using audio fingerprinting and some of the users to also convinced him to output edl files compatible for kodi. I hope a standard is developed for intro and outro edl files so that in the future they can be shared like subtitle files are

https://github.com/ConfusedPolarBear/intro-skipper
Reply
#22
@DNKK I gave up on my project for NextPVR because I could not get any users interested in generating the audio fingerprints.  The netcore addon I was using https://github.com/AddictedCS/soundfingerprinting works very well on all Windows, Mac and Linux but creating the samples can be time consuming and so it really becomes a community project.

Since I was creating the addon for PVR use, here are some observations.

- it is not just Intro's but Credits at the end of shows since many times they appear in the pre-padding area and can be more annoying then the Intro especially for skipping.
- "Intro" is misleading since I found with some newer Star Trek they can be 20 minutes into the show.
- some shows have long and short intros (The Simpsons was an example)
- unlike scene named releases there can be no general edl for PVR just as there are no subtitle files.
- Intros and Credits are quite often linked to commercial so I found merging edl files was beter.
- In addition here in Canada there are often common generic intros ("The following contains described video...") that were nice to skip out too.  Not sure how this works out internationally

Martin
Reply
#23
I recently found out that emby also introduced an introskip function. They announced here https://emby.media/community/index.php?/...ntro-skip/
It might be interesting to into compatibility, although emby isn't open source anymore.
Reply
#24
Thanks , will take a look , I have a lifetime sub to plex so its not a big problem. Sorry for late reply been away.
Reply
#25
So for anyone looking for a way to just skip intros without having anything additional implemented, I found a "work around" of sorts. It's a manual process but the best I was able to come up with myself, and as someone who's library doesn't drastically change often.

Emby implemented the skip intro function, and the way it works is by sacnning each video within a show's season folder and trying to match up identical audio segments, if it finds one, then it stores the start and stop time of that audio segment in it's Chapters3.db. The file paths and file info is stored in Media3.db

After letting emby run through your library, you can join the tables within those databases (ID for Media3.db and ItemID for Chapter3.db) to come out with file path, file name, intro start, intro stop.

Now we have the start and stop points, in microseconds, for each video file. The last part is to get this working in Kodi, which can be done utilizing Edit Decision Lists, edl files (https://kodi.wiki/view/Edit_decision_list). These are simple text files consisting of the start and stop time for the intro (technically referred to as a commercial) and the number 3 after it. They have other uses such as adding chapter segments too if you want to go all out.

Now we have to write a little script to iterate through our joined table, creating the .edl files in the same path and named the same as the video file.

Kodi will automatically recognize the .edl file and read the start and stop times of the intro when you start playing your show (again it's meant for commercials), and will skip that time frame for you. It still allows you to rewind to that skipped segment if you want to.

This is all free, aside from a time investment. One thing I've found though, is the detection isn't always 100% accurate so I ran a quick comparison of intro lengths per episode to exclude and manually review outliers.

Again, it's cumbersome, but worked pretty well for my purposes overall.
Reply
#26
Would love to see this feature in kodi.
Reply
#27
I would love to see this feature implemented as well, I did some leg work for it. Should be integrated into the Up Next plugin as it monitors playback already and I assume binge watchers are using it.

Here is the leg work, basic simple integration
Up Next version: 1.1.8+matrix.1, File: monitor.py

Line 103
-if total_time - play_time > notification_time:
+if total_time - play_time > notification_time and play_time > 120: # do not continue under 120 seconds, should be user defined same as time from end to display up next dialog

Add code after line 105

+if play_time < 120:
+    self.playback_manager.player.seekTime(240)
+    continue

Obviously we don't want static values here, just an example, use settings to determine less than play_time value for skip intro and amount of time to skip.
Should be routed to something similar to self.playback_manager.launch_up_next() with a new XML GUI showing a skip instead of a Play Next

Integration should be quite simple. Noted a condition where if you seek to less than the trigger point it'll result in an endless play loop.

Cheers.
Reply
#28
Are there any updates to this?

The Jellyfin intro-skipper plugin allows the creation of EDL files, could these be used with a Kodi add-on to show a skip-intro button the same way Up Next does? Would absolutely love this feature.
Reply
#29
(2023-05-19, 09:30)jkerrigan Wrote: Are there any updates to this?
No.

https://github.com/xbmc/notrobro
Reply

Logout Mark Read Team Forum Stats Members Help
Skip Intro0