Commercial Detection for In-Process Recordings (Catch-up to live broadcast - especially useful for live sports/events)

@chDVRuser Thanks for the feedback. I corrected the default comskip.ini settings.

@racameron Thanks for providing the API calls. I agree this is a better option for more advanced users who understand how to setup everything to do this.

2 Likes

I can make these options default for in-progress recordings.

But I don't understand how this helps, because comskip still won't run automatically on those and you still don't get the results until the recording is completed.

Those options are only good when comskip is started a few minutes after the recording starts. They are useless if comskip only runs after recording is finished. Plus Comskip is more accurate when it is run after the recordings are finished.

Okay I made it so it will actually update the commercial makers in real time as the recording is being detected. You will still have to run it manually, but if this works out maybe we can make that happen automatically when you start watching.

Will be available with v2022.09.13.2222 in a few minutes

In this mode, the log will say "Running live commercial detection" instead of "Running commercial detection"

1 Like

Sounds great, Aman!

I've found with other software that the timeline (with commercials marked) changes dynamically as the recording progresses, re-marking/re-sizing the commercial blocks as comskip gets more and more information. By the time the recording is done, the marked commercial blocks are darn near as good as a regular [non-live] recording.

I love starting a football game about an hour to hour and a half late and basically catching up by the end, skipping commercials all the way. Thanks for looking into this implementation.

1 Like

I added a new setting that will kick off live comskip if you start watching a recording that is still in-progress.

7 Likes

Excellent!!!

Put that space heater on 19!

2 Likes

Ok this is awesome. But... what if i start watching something like a football game an hour after the recording started. When I catch up the 1hour mark, can the comskip live rerun?

2 Likes

It continuously runs. No need to re-run it. Comskip knows that it is a live broadcast, so it will keep scanning the recording until it ends. (That's what the live_tv = 1 setting does; it keeps scanning the recording, and once the recording ceases to change, Comskip exits.)

3 Likes

How does this work for TVE recordings using your own heuristics? Does it use Comskip for the live in-progress viewing, but replace the commercial markers with your own; or do the Comskip identified markers persist?

(@tmm1 As an aside, both the work that has been done on bringing this feature to a best-in-class UX, as well as your team's own heuristics for near flawless detection with select streaming channels, deserves great appreciation and thanks. Coupled with the work you all continually put back into the community via the myriad open projects you use and improve, makes Channels an example of for-profit companies actively working to do good through open-source. Thank you.)

4 Likes

I believe I have the same question as @racameron. I was wondering how this effects what has been called Smart Detection. Also, I will surely need to reread through this thread, but is there an idea on how this will effect the processor usage on the server. Also, is Comskip run (again) after the conclusion of processing.

2 Likes

It will most likely be the same as when the Comskip process normally runs ... after all, it's the same program.

However, this brings up another question: how does this affect the commercial detection of other regularly recorded programs? Does this fall into the queue? Are completed recordings that end during a live detection run when the recording ends, or are they placed into the queue to run after the in-progress run ends?

(All of these questions and whatabouts make it clear why this feature is not so prevalent ...)

Detecting commercials while recording Jeopardy! S39E02 2022-09-13-1859.mpg.
Watching Jeopardy! - Season 39, Episode 2 from Edwin's Fire TV at 12s
1 Like

I do not see any commercial markers.... Got markers after show ended. Prime time if a new release comes out cannot test.

1 Like

This is fantastic. Thank you for taking the time to add this feature. I’m looking forward to testing it!

2 Likes

I will add live updates to Smart Detection next.

2 Likes

One thing I would like to see when watching a long show with Live Comskip is the ability to process the other recordings as they finish one by one. I was watching AGT it was running detection even though It had no markers ... but the smaller 1/2 hr shows were still waiting to be detected. They sat waiting for 2 hours to be processed. Live detection takes minimal CPU.

1 Like

Sort of side question: If I used the API to set live_tv to 1, how do I remove that change? The DELETE verb doesn't seem to work. I'd like to go back to default instead of changing it to 0.

1 Like

Use the same process you used to add it: PUT /api/comskip/ini/live_tv/0.

3 Likes