Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Kodi Community Development

Moderator: TVJunkie198

ddejager
Posts: 72
Joined: Tue May 06, 2014 2:26 pm

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby ddejager » Tue Jan 02, 2018 5:16 pm

The problem below is still occurring. I'm running the latest version of OSMC (debian stretch upgrade), Kodi 17.6 and pvr client 1.2.8 on Raspberry Pi 3. While I've posted the logs on the OSMC forum, there is no response. Also no response from the trouble report I've made to SD. Something additional that I've observed: When I have a defective recording that causes the OSMC blue frown face, I can play the same recording via OSMC using the video tab (or as I reported already) using the HDHomeRun add-on. It also play successfully on a firestick with the PVR Client. ONLY the PVR client on OSMC on raspberry Pi fails to play (with an ffmpeg error in the log). Any ideas how to fix?


Grabbing it now, will let you know what I can find out. I have this particular episode of TV recorded too, that might come in handy depending on how deep I need to go ... I didn't catch that this was an OTA recording before, I haven't used any of those in forever, it's very possible that the packet filter is glitching on something unexpected.

Question that you probably already answered and I forgot ... are all the OTA recordings causing problems from the same channel?
Well, that didn't take long. The file does appear to be corrupt. At offset 0x2310A200 (decimal: 588292608) the MPEG-TS stream goes wonky and a ton of garbage data is present until offset 0x2310C300 (decimal: 588301056). Unfortunately that offset doesn't align properly for an MPEG-TS stream, and I think this may be why it's killing Kodi on some systems. My guess is that ffmpeg (what Kodi uses to decode MPEG-TS streams) can't deal with this glitch.

I'll keep playing around with it, but I doubt there is anything I will be able to do directly to avoid the crash, I'm not fantastic at Linux debugging but I'm 95% sure the crash is happening inside of Kodi as opposed to in my code. I will absolutely confirm that, of course, I don't want to just blame Kodi :)

I would definitely tell SiliconDust about this, and send them this file. Let them know the defect in the recorded stream occurs at offset 0x2310A200, and that while it does appear to recover at offset 0x2310C300, the stream is no longer aligned to 188-byte boundaries after the corruption. The crash is likely a Kodi/ffmpeg concern, but maybe they can help you diagnose why the stream is corrupted and provide a means to avoid creating corrupt streams in the future?

I'll also try cutting out the bad part(s) of the file and see if it passes muster without them. If so, I'll send you back a replacement file that you can use to overwrite your existing one to test if Kodi still crashes without the file corruption. Even if that works, expect a little glitching at the points where I cut data out.
FYI, only some OTA files have this problem...not related to the channel. As I mentioned, sometimes there is a glitch on the radio link to my HDTC tuner, that might be corrupting the file.

What is interesting is that the same file plays without any crashes in all of the following situations:
1) PVR Client in kodi on Firestick
2) HDHomeRun add-on in kodi on Firestick
3) HDHomeRun add-on in OSMC

Does the third case above decode the video differently than PVR client on the same platform?

ddejager
Posts: 72
Joined: Tue May 06, 2014 2:26 pm

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby ddejager » Tue Jan 02, 2018 6:26 pm

Separate issue from prior post: I observed that my guide data was blank again (I suspect this is due to some intermittent failure in my network, not sure). I was in a hurry to watch the news, so I just did a direct tune to the ABC station. When this was done I reset the guide data, and the guide appeared again. I looked through the log and could find nothing indicating a guide data failure. I did notice however, that after I reset the guide data there was an error that started appearing about "unable to resolve timer type". I looked back earlier in the logs and found this same error every few minutes, but then the error went away for a day or more. Is this a problem? I've included the last 100 or so lines from my log (before the error was happening, the guide reset, and when the error was happening.

Code: Select all

18:31:14.438 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: initiated guide discovery 18:31:14.667 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: scheduling next guide discovery to initiate in 3600 seconds 18:33:30.694 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:33:30.982 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:37:59.539 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 18:37:59.620 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 18:38:00.121 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 18:38:00.146 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 18:38:31.153 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:38:31.488 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:43:31.550 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:43:31.894 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:47:59.952 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 18:48:00.033 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 18:48:00.533 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 18:48:00.556 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 18:48:32.064 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:48:32.392 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:53:32.457 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:53:32.794 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:58:00.357 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 18:58:00.453 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 18:58:00.953 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 18:58:00.981 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 18:58:32.988 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:58:33.329 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:59:42.423 T:1926191616 NOTICE: VideoPlayer: Opening: pvr://channels/tv/All channels/pvr.hdhomerundvr_118785.pvr 18:59:42.423 T:1926191616 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED 18:59:42.424 T:1268773632 NOTICE: Creating InputStream 18:59:42.427 T:1268773632 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: OpenLiveStream: streaming channel 29.1 via url http://192.168.88.11:49675/auto/v29.1?ClientID=cd929fac-f5a0-4705-aca1-c26a726e190d&SessionID=3407B2AEB3981209F4D8750C821C606D 18:59:42.945 T:1268773632 NOTICE: Creating Demuxer 18:59:43.024 T:1268773632 NOTICE: Opening stream: 0 source: 256 18:59:43.024 T:1268773632 NOTICE: Creating video codec with codec id: 28 18:59:43.024 T:1268773632 NOTICE: CDVDVideoCodecFFmpeg::Open() Using codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 18:59:43.027 T:1268773632 NOTICE: Creating video thread 18:59:43.028 T:1133507328 NOTICE: running thread: video_thread 18:59:43.028 T:1268773632 NOTICE: Opening stream: 1 source: 256 18:59:43.028 T:1268773632 NOTICE: Finding audio codec for: 86019 18:59:43.030 T:1268773632 NOTICE: Creating audio thread 18:59:43.030 T:1125118720 NOTICE: running thread: CVideoPlayerAudio::Process() 18:59:45.124 T:1268773632 NOTICE: Opening stream: 0 source: 256 18:59:45.124 T:1268773632 NOTICE: Creating video codec with codec id: 28 18:59:45.134 T:1268773632 NOTICE: Opening stream: 1 source: 256 18:59:45.144 T:1125118720 NOTICE: Creating audio stream (codec id: 86019, channels: 6, sample rate: 48000, no pass-through) 18:59:45.696 T:1133507328 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer 19:00:09.621 T:1268773632 WARNING: Previous line repeats 1 times. 19:00:09.622 T:1268773632 NOTICE: Opening stream: 0 source: 256 19:00:09.622 T:1268773632 NOTICE: Opening stream: 1 source: 256 19:00:09.622 T:1268773632 NOTICE: Opening stream: 0 source: 1280 19:03:33.396 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:03:33.807 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:08:00.872 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:08:00.965 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:08:01.465 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:08:01.482 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:08:33.989 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:08:34.324 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:13:34.392 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:13:34.746 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:15:35.769 T:1268773632 NOTICE: Opening stream: 0 source: 256 19:15:35.770 T:1268773632 NOTICE: Opening stream: 1 source: 256 19:15:35.770 T:1268773632 NOTICE: Closing stream player 3 19:15:35.770 T:1268773632 NOTICE: Opening stream: 0 source: 1280 19:18:01.305 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:18:01.370 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:18:01.870 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:18:01.890 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:18:34.898 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:18:35.326 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:23:35.390 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:23:35.770 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:28:01.830 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:28:01.943 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:28:02.443 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:28:02.466 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:28:35.974 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:28:36.327 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:28:52.541 T:1926191616 NOTICE: CVideoPlayer::CloseFile() 19:28:52.541 T:1926191616 NOTICE: VideoPlayer: waiting for threads to exit 19:28:52.562 T:1268773632 NOTICE: CVideoPlayer::OnExit() 19:28:52.563 T:1268773632 NOTICE: Closing stream player 1 19:28:52.563 T:1268773632 NOTICE: Waiting for audio thread to exit 19:28:52.586 T:1125118720 NOTICE: thread end: CVideoPlayerAudio::OnExit() 19:28:52.586 T:1268773632 NOTICE: Closing audio device 19:28:52.631 T:1268773632 NOTICE: Deleting audio codec 19:28:52.631 T:1268773632 NOTICE: Closing stream player 2 19:28:52.631 T:1268773632 NOTICE: waiting for video thread to exit 19:28:52.640 T:1133507328 NOTICE: thread end: video_thread 19:28:52.641 T:1268773632 NOTICE: deleting video codec 19:28:52.651 T:1268773632 NOTICE: Closing stream player 3 19:28:52.814 T:1926191616 NOTICE: VideoPlayer: finished waiting 19:28:53.163 T:1926191616 NOTICE: CVideoPlayer::CloseFile() 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: waiting for threads to exit 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: finished waiting 19:28:53.163 T:1926191616 NOTICE: CVideoPlayer::CloseFile() 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: waiting for threads to exit 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: finished waiting 19:31:14.863 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: initiated guide discovery 19:31:15.183 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: scheduling next guide discovery to initiate in 3600 seconds 19:33:36.713 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:33:37.277 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:38:02.347 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:38:02.487 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:38:02.987 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:38:03.010 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:38:37.517 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:38:37.889 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:43:37.950 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:43:38.321 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:46:19.486 T:1926191616 NOTICE: PVRManager - ResetDatabase - clearing the PVR database 19:46:20.063 T:1926191616 NOTICE: PVRManager - stopping 19:46:22.024 T:1926191616 NOTICE: PVRManager - ResetDatabase - EPG database cleared 19:46:22.026 T:1926191616 NOTICE: PVRManager - ResetDatabase - restarting the PVRManager 19:46:22.729 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:46:22.745 T:1277162240 ERROR: Previous line repeats 45 times. 19:46:22.745 T:1277162240 NOTICE: Start - EPG thread started 19:46:22.941 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:47:35.819 T:1226830592 ERROR: Previous line repeats 45 times. 19:47:35.819 T:1226830592 WARNING: COMXImageFile::GetCodingType progressive images not supported by decoder 19:47:35.918 T:1226830592 WARNING: Previous line repeats 1 times. 19:47:35.918 T:1226830592 NOTICE: LoadJpeg: unable to load http://img.hdhomerun.com/titles/C186080EN4NMZ.jpg 19:48:02.877 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:48:02.964 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:48:03.464 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:48:03.487 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:48:38.495 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:48:38.898 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:52:30.241 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:53:38.964 T:1395548928 ERROR: Previous line repeats 22 times. 19:53:38.965 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:53:39.304 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:57:30.721 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:58:03.358 T:1395548928 ERROR: Previous line repeats 22 times. 19:58:03.359 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:58:03.438 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:58:03.938 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:58:03.961 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:58:39.469 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:58:39.850 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 20:02:31.090 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 20:03:39.916 T:1395548928 ERROR: Previous line repeats 22 times. 20:03:39.917 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 20:03:40.255 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds

djp952
Posts: 718
Joined: Wed Oct 01, 2008 8:46 pm
Device ID: 131EB7F7;131ED0E0

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby djp952 » Tue Jan 02, 2018 9:08 pm

Oh no....that's no good. Thanks for trying anyway.

What would it take to make your addon a std inclusion from Kodi during an install using the downloaded file from Kodi like other PVR addons?
There are a few (very minor) technical roadblocks, but the biggest roadblock is me. I'm just not willing to take it that far. It's my pet project and my free time ebbs and flows, supporting so many users would be daunting.

I also have continued reservations about how I expose SiliconDust's EPG data. The backend isn't really designed to populate a grid guide like Kodi uses, and I think that's for a reason, potentially a legal one due to copyrights/patents on electronic grid guides. The way the guide data is used here really pushes the limits of SiliconDust's terms of service if not outright violates them, and while I did ask them back in v1.2 or whenever I made the change to go "full guide data" and didn't receive any type of "no" at the time, I think a significant change in scope like this would require SiliconDust's formal buy-in first. At best their backend needs to potentially support thousands of new people slamming it in a non-optimal way to populate a UI they didn't design, and at worst it may put them in a legal bind. I'd hate to be the guy that caused SD to have to lock down their guide data because it was being abused :(

I hope you understand. But hey -- this thing is as open source as it gets, there is nothing stopping anybody else from forking it or taking the better bits and pieces out and doing what they want! Honestly, the only thing that isn't 100% FOSS here is the need for a proprietary SDK from Apple to do the OSX build, which if one were to include it in Kodi is taken care of (I assume along with implicit iOS and tvOS support too)!!

I've always hoped SiliconDust would take it, to be honest with you -- it's the most logical choice for continued long-term support and to get the backend tweaks that would smooth out the wonky bits. Having them own it AND contribute it to Kodi would be like the ultimate win-win for us!

djp952
Posts: 718
Joined: Wed Oct 01, 2008 8:46 pm
Device ID: 131EB7F7;131ED0E0

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby djp952 » Tue Jan 02, 2018 9:15 pm

The problem below is still occurring. I'm running the latest version of OSMC (debian stretch upgrade), Kodi 17.6 and pvr client 1.2.8 on Raspberry Pi 3. While I've posted the logs on the OSMC forum, there is no response. Also no response from the trouble report I've made to SD. Something additional that I've observed: When I have a defective recording that causes the OSMC blue frown face, I can play the same recording via OSMC using the video tab (or as I reported already) using the HDHomeRun add-on. It also play successfully on a firestick with the PVR Client. ONLY the PVR client on OSMC on raspberry Pi fails to play (with an ffmpeg error in the log). Any ideas how to fix?


Well, that didn't take long. The file does appear to be corrupt. At offset 0x2310A200 (decimal: 588292608) the MPEG-TS stream goes wonky and a ton of garbage data is present until offset 0x2310C300 (decimal: 588301056). Unfortunately that offset doesn't align properly for an MPEG-TS stream, and I think this may be why it's killing Kodi on some systems. My guess is that ffmpeg (what Kodi uses to decode MPEG-TS streams) can't deal with this glitch.

I'll keep playing around with it, but I doubt there is anything I will be able to do directly to avoid the crash, I'm not fantastic at Linux debugging but I'm 95% sure the crash is happening inside of Kodi as opposed to in my code. I will absolutely confirm that, of course, I don't want to just blame Kodi :)

I would definitely tell SiliconDust about this, and send them this file. Let them know the defect in the recorded stream occurs at offset 0x2310A200, and that while it does appear to recover at offset 0x2310C300, the stream is no longer aligned to 188-byte boundaries after the corruption. The crash is likely a Kodi/ffmpeg concern, but maybe they can help you diagnose why the stream is corrupted and provide a means to avoid creating corrupt streams in the future?

I'll also try cutting out the bad part(s) of the file and see if it passes muster without them. If so, I'll send you back a replacement file that you can use to overwrite your existing one to test if Kodi still crashes without the file corruption. Even if that works, expect a little glitching at the points where I cut data out.
FYI, only some OTA files have this problem...not related to the channel. As I mentioned, sometimes there is a glitch on the radio link to my HDTC tuner, that might be corrupting the file.

What is interesting is that the same file plays without any crashes in all of the following situations:
1) PVR Client in kodi on Firestick
2) HDHomeRun add-on in kodi on Firestick
3) HDHomeRun add-on in OSMC

Does the third case above decode the video differently than PVR client on the same platform?
Dude, I still got nuthin' on this one. My best idea without demuxing it internally would be to try to realign the MPEG-TS packets, but then we're forcing Kodi to seek to a packet boundary, which really didn't work out well for everyone else (the client did that for a few iterations - seemed like such a good idea at the time!). We could go a little out of the box and look for and remove bad data packets, but then you can't seek at all, which makes Recorded TV really annoying, if it would work at all.

Is there any type of tool that maybe could be run as a service/daemon to scan and fix your files? ffmpeg can probably do that on it's own from the command line tools, but setting it up might be a bit out of scope.

Was there any additional response from the OSMC folks? Anything we do in the PVR client is a Band-Aid at best and could mess things up elsewhere. I learned my lesson about trying to force Kodi's hand and monkeying with what it asks for -- Kodi knows best!

djp952
Posts: 718
Joined: Wed Oct 01, 2008 8:46 pm
Device ID: 131EB7F7;131ED0E0

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby djp952 » Tue Jan 02, 2018 9:28 pm

Separate issue from prior post: I observed that my guide data was blank again (I suspect this is due to some intermittent failure in my network, not sure). I was in a hurry to watch the news, so I just did a direct tune to the ABC station. When this was done I reset the guide data, and the guide appeared again. I looked through the log and could find nothing indicating a guide data failure. I did notice however, that after I reset the guide data there was an error that started appearing about "unable to resolve timer type". I looked back earlier in the logs and found this same error every few minutes, but then the error went away for a day or more. Is this a problem? I've included the last 100 or so lines from my log (before the error was happening, the guide reset, and when the error was happening.

Code: Select all

18:31:14.438 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: initiated guide discovery 18:31:14.667 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: scheduling next guide discovery to initiate in 3600 seconds 18:33:30.694 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:33:30.982 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:37:59.539 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 18:37:59.620 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 18:38:00.121 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 18:38:00.146 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 18:38:31.153 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:38:31.488 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:43:31.550 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:43:31.894 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:47:59.952 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 18:48:00.033 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 18:48:00.533 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 18:48:00.556 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 18:48:32.064 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:48:32.392 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:53:32.457 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:53:32.794 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:58:00.357 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 18:58:00.453 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 18:58:00.953 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 18:58:00.981 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 18:58:32.988 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 18:58:33.329 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 18:59:42.423 T:1926191616 NOTICE: VideoPlayer: Opening: pvr://channels/tv/All channels/pvr.hdhomerundvr_118785.pvr 18:59:42.423 T:1926191616 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED 18:59:42.424 T:1268773632 NOTICE: Creating InputStream 18:59:42.427 T:1268773632 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: OpenLiveStream: streaming channel 29.1 via url http://192.168.88.11:49675/auto/v29.1?ClientID=cd929fac-f5a0-4705-aca1-c26a726e190d&SessionID=3407B2AEB3981209F4D8750C821C606D 18:59:42.945 T:1268773632 NOTICE: Creating Demuxer 18:59:43.024 T:1268773632 NOTICE: Opening stream: 0 source: 256 18:59:43.024 T:1268773632 NOTICE: Creating video codec with codec id: 28 18:59:43.024 T:1268773632 NOTICE: CDVDVideoCodecFFmpeg::Open() Using codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 18:59:43.027 T:1268773632 NOTICE: Creating video thread 18:59:43.028 T:1133507328 NOTICE: running thread: video_thread 18:59:43.028 T:1268773632 NOTICE: Opening stream: 1 source: 256 18:59:43.028 T:1268773632 NOTICE: Finding audio codec for: 86019 18:59:43.030 T:1268773632 NOTICE: Creating audio thread 18:59:43.030 T:1125118720 NOTICE: running thread: CVideoPlayerAudio::Process() 18:59:45.124 T:1268773632 NOTICE: Opening stream: 0 source: 256 18:59:45.124 T:1268773632 NOTICE: Creating video codec with codec id: 28 18:59:45.134 T:1268773632 NOTICE: Opening stream: 1 source: 256 18:59:45.144 T:1125118720 NOTICE: Creating audio stream (codec id: 86019, channels: 6, sample rate: 48000, no pass-through) 18:59:45.696 T:1133507328 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer 19:00:09.621 T:1268773632 WARNING: Previous line repeats 1 times. 19:00:09.622 T:1268773632 NOTICE: Opening stream: 0 source: 256 19:00:09.622 T:1268773632 NOTICE: Opening stream: 1 source: 256 19:00:09.622 T:1268773632 NOTICE: Opening stream: 0 source: 1280 19:03:33.396 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:03:33.807 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:08:00.872 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:08:00.965 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:08:01.465 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:08:01.482 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:08:33.989 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:08:34.324 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:13:34.392 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:13:34.746 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:15:35.769 T:1268773632 NOTICE: Opening stream: 0 source: 256 19:15:35.770 T:1268773632 NOTICE: Opening stream: 1 source: 256 19:15:35.770 T:1268773632 NOTICE: Closing stream player 3 19:15:35.770 T:1268773632 NOTICE: Opening stream: 0 source: 1280 19:18:01.305 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:18:01.370 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:18:01.870 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:18:01.890 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:18:34.898 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:18:35.326 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:23:35.390 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:23:35.770 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:28:01.830 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:28:01.943 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:28:02.443 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:28:02.466 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:28:35.974 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:28:36.327 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:28:52.541 T:1926191616 NOTICE: CVideoPlayer::CloseFile() 19:28:52.541 T:1926191616 NOTICE: VideoPlayer: waiting for threads to exit 19:28:52.562 T:1268773632 NOTICE: CVideoPlayer::OnExit() 19:28:52.563 T:1268773632 NOTICE: Closing stream player 1 19:28:52.563 T:1268773632 NOTICE: Waiting for audio thread to exit 19:28:52.586 T:1125118720 NOTICE: thread end: CVideoPlayerAudio::OnExit() 19:28:52.586 T:1268773632 NOTICE: Closing audio device 19:28:52.631 T:1268773632 NOTICE: Deleting audio codec 19:28:52.631 T:1268773632 NOTICE: Closing stream player 2 19:28:52.631 T:1268773632 NOTICE: waiting for video thread to exit 19:28:52.640 T:1133507328 NOTICE: thread end: video_thread 19:28:52.641 T:1268773632 NOTICE: deleting video codec 19:28:52.651 T:1268773632 NOTICE: Closing stream player 3 19:28:52.814 T:1926191616 NOTICE: VideoPlayer: finished waiting 19:28:53.163 T:1926191616 NOTICE: CVideoPlayer::CloseFile() 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: waiting for threads to exit 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: finished waiting 19:28:53.163 T:1926191616 NOTICE: CVideoPlayer::CloseFile() 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: waiting for threads to exit 19:28:53.163 T:1926191616 NOTICE: VideoPlayer: finished waiting 19:31:14.863 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: initiated guide discovery 19:31:15.183 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_guide_task: scheduling next guide discovery to initiate in 3600 seconds 19:33:36.713 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:33:37.277 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:38:02.347 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:38:02.487 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:38:02.987 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:38:03.010 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:38:37.517 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:38:37.889 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:43:37.950 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:43:38.321 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:46:19.486 T:1926191616 NOTICE: PVRManager - ResetDatabase - clearing the PVR database 19:46:20.063 T:1926191616 NOTICE: PVRManager - stopping 19:46:22.024 T:1926191616 NOTICE: PVRManager - ResetDatabase - EPG database cleared 19:46:22.026 T:1926191616 NOTICE: PVRManager - ResetDatabase - restarting the PVRManager 19:46:22.729 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:46:22.745 T:1277162240 ERROR: Previous line repeats 45 times. 19:46:22.745 T:1277162240 NOTICE: Start - EPG thread started 19:46:22.941 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:47:35.819 T:1226830592 ERROR: Previous line repeats 45 times. 19:47:35.819 T:1226830592 WARNING: COMXImageFile::GetCodingType progressive images not supported by decoder 19:47:35.918 T:1226830592 WARNING: Previous line repeats 1 times. 19:47:35.918 T:1226830592 NOTICE: LoadJpeg: unable to load http://img.hdhomerun.com/titles/C186080EN4NMZ.jpg 19:48:02.877 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:48:02.964 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:48:03.464 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:48:03.487 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:48:38.495 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:48:38.898 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:52:30.241 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:53:38.964 T:1395548928 ERROR: Previous line repeats 22 times. 19:53:38.965 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:53:39.304 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 19:57:30.721 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 19:58:03.358 T:1395548928 ERROR: Previous line repeats 22 times. 19:58:03.359 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: initiated local tuner device lineup discovery 19:58:03.438 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_lineups_task: scheduling next lineup discovery to initiate in 600 seconds 19:58:03.938 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: initiated local storage device recording discovery 19:58:03.961 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_recordings_task: scheduling next recording discovery to initiate in 600 seconds 19:58:39.469 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 19:58:39.850 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds 20:02:31.090 T:1315959552 ERROR: CPVRTimerType::CreateFromAttributes unable to resolve timer type (0x1, 0xa, 1918149475) 20:03:39.916 T:1395548928 ERROR: Previous line repeats 22 times. 20:03:39.917 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: initiated local network device discovery 20:03:40.255 T:1395548928 NOTICE: AddOnLog: HDHomeRun DVR PVR Client: discover_devices_task: scheduling next device discovery to initiate in 300 seconds
The "unable to resolve timer type" is a limitation since I can't support date/time timers. There is no way (currently?) that you can tell the backend to record a specific channel at a specific date/time, everything is based on the Series -- the RECORD engine figures out what to record and when. Kodi gets upset about this and logs that message every time a Timer/Timer Rule is transferred over.

BUT - Did you see the new Advanced Option in 1.2.8 for you -- "Enable verbose data transfer logs". I added this in 1.2.8 to help diagnose this. Turning it on is going to really blow up your Kodi logs, but what it does is log every time Kodi asks for data and what the client responds with. My hope is that we can pinpoint either Kodi no longer asking or the PVR client no longer responding. One of the two cases has to be the culprit. Given the lack of errors, which were also enhanced in 1.2.8, my money is on Kodi no longer asking ...

ddejager
Posts: 72
Joined: Tue May 06, 2014 2:26 pm

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby ddejager » Wed Jan 03, 2018 5:18 pm

Dude, I still got nuthin' on this one. My best idea without demuxing it internally would be to try to realign the MPEG-TS packets, but then we're forcing Kodi to seek to a packet boundary, which really didn't work out well for everyone else (the client did that for a few iterations - seemed like such a good idea at the time!). We could go a little out of the box and look for and remove bad data packets, but then you can't seek at all, which makes Recorded TV really annoying, if it would work at all.

Is there any type of tool that maybe could be run as a service/daemon to scan and fix your files? ffmpeg can probably do that on it's own from the command line tools, but setting it up might be a bit out of scope.

Was there any additional response from the OSMC folks? Anything we do in the PVR client is a Band-Aid at best and could mess things up elsewhere. I learned my lesson about trying to force Kodi's hand and monkeying with what it asks for -- Kodi knows best!
Thanks. No further response from the OSMC folks, but I'll push again now that they have been able to get out their latest release. I agree that there is something different about how OSMC is failing to recover from the ffmpeg error that comes through the PVR Client. In all other cases and other platforms (firestick, the recovery mechanism works.

ddejager
Posts: 72
Joined: Tue May 06, 2014 2:26 pm

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby ddejager » Wed Jan 03, 2018 5:24 pm

The "unable to resolve timer type" is a limitation since I can't support date/time timers. There is no way (currently?) that you can tell the backend to record a specific channel at a specific date/time, everything is based on the Series -- the RECORD engine figures out what to record and when. Kodi gets upset about this and logs that message every time a Timer/Timer Rule is transferred over.

BUT - Did you see the new Advanced Option in 1.2.8 for you -- "Enable verbose data transfer logs". I added this in 1.2.8 to help diagnose this. Turning it on is going to really blow up your Kodi logs, but what it does is log every time Kodi asks for data and what the client responds with. My hope is that we can pinpoint either Kodi no longer asking or the PVR client no longer responding. One of the two cases has to be the culprit. Given the lack of errors, which were also enhanced in 1.2.8, my money is on Kodi no longer asking ...
Yes, I did see the new option. I had not turned it on when I noticed that the guide data was missing. I'll turn it on and see what it tells us, but I agree with you that it seems that when Kodi gets an error asking for data, it somehow stops asking.

Not sure why there should be any timers that are date/time based. All my recording requests are made based on Series. Perhaps I don't understand your comment. Note that this error was not happening for a while and after I reloaded the guide data it started again. (I wonder if it stopped happening at the same time the guide data disappeared?

djp952
Posts: 718
Joined: Wed Oct 01, 2008 8:46 pm
Device ID: 131EB7F7;131ED0E0

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby djp952 » Wed Jan 03, 2018 9:11 pm

Not sure why there should be any timers that are date/time based. All my recording requests are made based on Series. Perhaps I don't understand your comment. Note that this error was not happening for a while and after I reloaded the guide data it started again. (I wonder if it stopped happening at the same time the guide data disappeared?
Sorry for the unclear response on that, it's the lack of a date/time timer type in the PVR Client that Kodi is complaining about, it's not the timer/recording rule itself. When a timer is sent over, it goes through some steps on it's end to see where and how it can be displayed/edited and that's where the message comes from.

It's Kodi's way of telling you that the PVR Client has an unexpected limitation. A false-positive, if you will :D

pb_cymru
Posts: 51
Joined: Tue Dec 13, 2016 2:37 am
Device ID: 123144C7; 12319BB4

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby pb_cymru » Thu Jan 04, 2018 2:40 am

1 and 2 feel like network or RECORD engine performance concerns. Where is the RECORD engine located and how is the Mac connecting to it (Wifi, 100Mb/s, 1000Mb/s)? What kind of hardware are you on. NOTE: I am in no way a Mac person, but these details may help. Getting the Kodi logs would probably reveal more evidence, of course.
RECORD engine is on the same mac (Mac Mini late 2012 i7 16GB RAM) which is wired via Gigabit ethernet. I've changed the DVR stream read operation minimum size setting to 8 which has helped - some channels are fine, others buffer a bit before loading properly (there's one channel that is particularly bad BBC News channel 107 in the UK - interestingly the HDHomeRun mac app also takes a while to start displaying video with this channel - audio starts immediately). Fixed the FF/REW issue - I'd inadvertently clicked the stream direct from tuner option so switching that off has given me back time shift ability.

Other than that it seems to be working well - thank you!

spencer777
Posts: 499
Joined: Sat Dec 05, 2015 10:02 am

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby spencer777 » Fri Jan 05, 2018 10:59 am

Sorry if its in here somewhere. How do I pull up the guide? Using a Fire tv. Using Pseudo tv its the select button.

Ken.F
Posts: 1972
Joined: Fri Apr 05, 2013 9:20 am
Device ID: 1041A706, 1043EB32, 104BAD9E, 13168DC5, 1322A7AC
Location: West Rockhill, PA

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby Ken.F » Sat Jan 06, 2018 6:18 am

Sorry if its in here somewhere. How do I pull up the guide? Using a Fire tv. Using Pseudo tv its the select button.
Go to TV then click on the big button that says "Guide".

Image

spencer777
Posts: 499
Joined: Sat Dec 05, 2015 10:02 am

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby spencer777 » Sat Jan 06, 2018 7:05 am

Sorry if its in here somewhere. How do I pull up the guide? Using a Fire tv. Using Pseudo tv its the select button.
Go to TV then click on the big button that says "Guide".

Image
I already have it set up to default to the Guide when I open Kodi. I want to how to open the guide when I'm already watching tv?

Edit: I tried the default skin and I see its hitting back and enter. Have to decide if I want to keep that skin

Thanks
Last edited by spencer777 on Sat Jan 06, 2018 7:20 am, edited 1 time in total.

Ken.F
Posts: 1972
Joined: Fri Apr 05, 2013 9:20 am
Device ID: 1041A706, 1043EB32, 104BAD9E, 13168DC5, 1322A7AC
Location: West Rockhill, PA

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby Ken.F » Sat Jan 06, 2018 7:09 am

If you start playing live TV from the guide just hit the back button.

tloughr
Posts: 36
Joined: Mon Sep 12, 2011 7:05 pm

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby tloughr » Sat Jan 06, 2018 7:52 am

If you start playing live TV from the guide just hit the back button.
From the keyboard just hit "e". If you don't have letter keys on your remote you might be able to map a button to this function.

Ken.F
Posts: 1972
Joined: Fri Apr 05, 2013 9:20 am
Device ID: 1041A706, 1043EB32, 104BAD9E, 13168DC5, 1322A7AC
Location: West Rockhill, PA

Re: Unofficial Kodi PVR Client for HDHomeRun DVR subscribers

Postby Ken.F » Sun Jan 07, 2018 12:38 pm

I have the "Allow passthrough" enabled in the "Audio and Subtitles" settings in the Kodi player. However when I stream Live TV from the RECORD engine through the PVR client (i.e. timeshifting is enabled and working), my receiver registers the audio output as "Stereo". If I go into the PVR client and tick the "Stream Live TV channels directly from tuner device(s)" option (i.e. timeshifitng is disabled), then my receiver registers the audio output as "Dolby Digital 5.1".
I was mucking around in Kodi's audio settings last night and I accidentally got DD 5.1 working on live TV through the record engine. My system is a RPi2 running LibreELEC so I don't know if the same settings are available in Kodi on your Win10 NUC but it might be worth checking out.

In Settings> System Settings> Audio:
Number of channels: 2.0.
Output configuration: Best Match
Allow passthrough: On
Dolby Digital (AC3) capable receiver: On
-Enable Dolby Digital (AC3) transcoding: On

Edit: I forgot to mention this is without disabling the reporting of real-time MPEG-TS streams in the PVR add-on settings.
Last edited by Ken.F on Sun Jan 07, 2018 12:54 pm, edited 1 time in total.


Return to “Kodi Community Development”

Who is online

Users browsing this forum: No registered users and 1 guest