Commercial Skip broken in Kodi 18?
#1
I recently updated my Chromebox to Kodi 18 RC2/LE 8.90.009 from stable Kodi 17.6/LE 8.2.5. It looks like .edl support no longer works for commercial skipping. I have another machine still on stable Kodi 17.6 and commercial skip still works (these two machines share the same back end, video files, and edl files). I'm on the latest stable server.wmc 1255 and the pvr.wmc is 2.4.3.2. Is there anything that needs to be done for edl/commercial skip support in Kodi 18?

EDIT:  I found this thread, perhaps pvr.wmc needs a small mod to get it working again?  https://forum.kodi.tv/showthread.php?tid=324893
Reply
#2
I'm trying to get in and do some debugging... The article above definitely has something to do with it. Here is the difference in the Kodi logs between 17 and 18...

Kodi 17
VideoPlayer: Opening: smb://USERNAME:PASSWORD@wmcserver/Public Recorded TV/The Neighborhood/The Neighborhood-S01E11-Welcome to the Fundraiser.wtv

Kodi 18
VideoPlayer::OpenFile: pvr://recordings/tv/active/The Neighborhood (2)/s01e11%20Welcome%20to%20the%20Fundraiser, TV, 20181218_040003, 10977524099972652.pvr

So it makes sense how Kodi used to be able to look in the same directory by just changing the wtv to edl. They totally changed the mothod to play a PVR recording.

Next I think i need to enable debug in Kodi to see the edl loading and processing. I tried sniffing the Kodi to ServerWMC traffic and didn't see anything obvious like a GetRecordingEdl. I'll update when i get a chance to do some more.
Reply
#3
Here is the output of the Kodi log from 17 and 18 for the same recording...

Kodi 17:
18:28:47.550 T:7328   DEBUG: CEdl::ReadEditDecisionLists - Checking for edit decision lists (EDL) on local drive or remote share for: smb://xbmc:********@wmcserver/Public Recorded TV/The Neighborhood/The Neighborhood-S01E11-Welcome to the Fundraiser.wtv
18:28:47.557 T:7328   DEBUG: CEdl::AddCut - Pushing new cut to back [00:00:04.970 - 00:00:31.000], 3
18:28:47.557 T:7328   DEBUG: CEdl::AddCut - Pushing new cut to back [00:02:58.800 - 00:04:48.240], 3
18:28:47.557 T:7328   DEBUG: CEdl::AddCut - Pushing new cut to back [00:10:00.850 - 00:13:45.170], 3
18:28:47.557 T:7328   DEBUG: CEdl::AddCut - Pushing new cut to back [00:26:44.850 - 00:29:17.490], 3
18:28:47.557 T:7328   DEBUG: CEdl::ReadEdl - Read 4 cuts and 0 scene markers in EDL file: smb://xbmc:***********@wmcserver/Public Recorded TV/The Neighborhood/The Neighborhood-S01E11-Welcome to the Fundraiser.edl
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:00:04.970
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:00:31.000
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:02:58.800
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:04:48.240
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:10:00.850
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:13:45.170
18:28:47.557 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:26:44.850
18:28:47.558 T:7328   DEBUG: CEdl::AddSceneMarker - Inserting new scene marker: 00:29:17.490

Kodi 18:
18:34:20.235 T:8396   DEBUG: CEdl::ReadEditDecisionLists - Checking for edit decision list (EDL) for PVR recording: pvr://recordings/tv/active/The Neighborhood (2)/s01e11%20Welcome%20to%20the%20Fundraiser, TV, 20181218_040003, 10977524099972652.pvr
18:34:20.235 T:8396   DEBUG: CEdl::ReadPvr - Reading Edl for recording: s01e11 Welcome to the Fundraiser

It looks like there is a method in client.cpp of the pvr add-on:
PVR_ERROR GetRecordingEdl(const PVR_RECORDING&, PVR_EDL_ENTRY, int*) { return PVR_ERROR_NOT_IMPLEMENTED; };

I don't know if this is the answer or not... this code was added in 2012 and it is in the "Unused API functions" section. Maybe this was the correct method to use but since it had the full path it also checked?
Kodi expert, please explain what the correct method is to support this...
Reply
#4
Does the problem still persist in RC4?
Reply
#5
Yes, I downloaded RC4 and tested with that yesterday.
Reply
#6
pvr.wmc needs to implement PVR addon API function "GetRecordingEdl" if it handles recording stream open/close/read/seek/... itself (which it currently does).

Alternatively, the addon could leave recording stream open/close/read/seek/... and edl handling to Kodi. In this case, it must implement the PVR addon API function "GetRecordingStreamProperties" where it has to provide the smb URL of the recording with the  property "streamurl". OTOH, functions "*RecordedStream" are all obsolete for the addon, then. I'm not aware of any downsite of this (new to Leia and much simpler) approach. Ofc, Kodi must understand the data format of the recording stream and must be able to access the smb share holding the recording.
Reply
#7
It sounds like the GetRecordingStreamProperties approach is preferred if possible. It would need to be tested to ensure the old "*RecordedStream" methods are not required. I can't tell for sure but it doesn't look like anything is customized. Kodi handles wtv files as the playing works just fine (including edl) when played from the files menu.

I don't have any sort of development environment, so we're at the will of @krustyreturns or @scarecrow420.

For reference: Filmon PVR has implemented via the GetRecordingStreamProperties method: https://github.com/kodi-pvr/pvr.filmon/b...a.cpp#L361.
Hopefully we can use a similar method of calling Pvr2Wmc::GetRecordings and looking through the resulting set for a match. As long as the samba URL is included we wouldn't need to modify the backend.

Hope I'm being helpful!
Reply
#8
You should open an issue for pvr.wmc at github.com/kodi-pvr/pvr.wmc/issues
Reply
#9
Sorry for late post.   I don't use edl so I know nothing about it.  Looking it over briefly this morning, I would rather not implement GetRecordingStreamProperties because it looks to be a major departure for pvr.wmc that I would rather not get into.  However if @sbthomas  would like to give it a go I could try to help him set up a build environment  (but I don't blame him, it is always a pain - at least for me). 

Assuming he doesn't want to Smile, I need:
  1) someone to get me a sample edl file
  2) I assume .edl files always have the same name as the .wtv recording and are in the same directory, is that correct?  If not, explain how the recording is paired to the edl.
  3) I will need someone to test pvr.wmc (in windows) if/when I get it built.

And also, I  don't know where things are with kodi18.  If I can implement it and push up the changes, I can't guarantee the kodi team will accept it.  Just fyi.
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#10
(2019-01-12, 19:01)krustyreturns Wrote: And also, I  don't know where things are with kodi18.
As far as I know, things for edl were already broken before/during Kodi Krypton, and it never got on top of the bug reports pile.
So basically, if you two/three can fix things, be our guest. Smile
Reply
#11
Cool, thanks for letting us know.
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#12
I have a version of this built, but no way to test it.  Looking for volunteers...
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#13
I'm in to test.
Reply
#14
I can test as well.
Reply
#15
Thanks. You can download it below.  If you install it correctly, you should see pvr.wmc version 2.4.4 in kodi.  This build only works on windows clients.  I assumed the edl file has the same name, and is in the same directory, as the wtv file.

https://drive.google.com/drive/folders/0...sp=sharing
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply

Logout Mark Read Team Forum Stats Members Help
Commercial Skip broken in Kodi 18?0