GithubHelp home page GithubHelp logo

pvr.hdhomerun's Introduction

License: GPL-2.0-or-later Build and run tests Build Status Build Status

HDHomeRun PVR

HDHomeRun PVR client addon for Kodi

Build instructions

Linux

  1. git clone --branch master https://github.com/xbmc/xbmc.git
  2. git clone --branch Nexus https://github.com/kodi-pvr/pvr.hdhomerun.git
  3. cd pvr.hdhomerun && mkdir build && cd build
  4. cmake -DADDONS_TO_BUILD=pvr.hdhomerun -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
  5. make

Windows

  1. set ROOT=%CD%
  2. git clone --branch master https://github.com/xbmc/xbmc.git
  3. git clone https://github.com/kodi-pvr/pvr.hdhomerun.git
  4. cd pvr.hdhomerun
  5. mkdir build
  6. cd build
  7. cmake -G "Visual Studio 14" -DADDONS_TO_BUILD=pvr.hdhomerun -DCMAKE_BUILD_TYPE=Debug -DADDON_SRC_PREFIX=%ROOT% -DCMAKE_INSTALL_PREFIX=%ROOT%\xbmc\addons -DCMAKE_USER_MAKE_RULES_OVERRIDE=%ROOT%\xbmc\cmake\scripts\windows\CFlagOverrides.cmake -DCMAKE_USER_MAKE_RULES_OVERRIDE_CXX=%ROOT%\xbmc\cmake\scripts\windows\CXXFlagOverrides.cmake -DPACKAGE_ZIP=1 %ROOT%\xbmc\cmake\addons
  8. cmake --build . --config Debug

Useful links

pvr.hdhomerun's People

Contributors

afedchin avatar alanwww1 avatar alwinesch avatar djp952 avatar fernetmenta avatar fuzzard avatar gade01 avatar hudokkow avatar janbar avatar ksooo avatar martijnkaijser avatar milhousevh avatar olafhering avatar phunkyfish avatar rbuehlma avatar rechi avatar txtranslation avatar weblate avatar zcsizmadia avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pvr.hdhomerun's Issues

Support for Multiple HDR Boxes

The reason that each channel shows up for each tuner box, is because the std::set guideNumberSet is in the scope for each tuner.

Moving the declaration to outside the loop, at the top of the function HDHomeRunTuners::Update(int nMode) does cause each channel to show up exactly once. However this is not a complete fix, as then you can only tune channels from the first tuner box found. If all tuners in the box are in use, the attempt to tune the channel fails.

The real fix would seem to be keeping a list of tuners which support each channel found, and then iterating through this list when an attempt is made to tune the channel. These should also be separated based on the channelmap in use for that tuner, to handle the case where a user has both OTA and cable service -- I personally know someone doing this, but I don't think he's using Kodi (yet).

Are you actively working on this problem? I ask because I have forked your code and can fix it, but don't really need to be duplicating efforts.

How to build zip from source?

I've followed the README.md for this but I can't fin the plugin zip. The build/build/zip directory is never created. Is there an expectation of performing an xbmc/kodi build in the source pull for xmbc.git?

[Feature Request] Record TV (DVR feature) save video stream to local disk

I like to make a feature suggestion, that is to add recording functionality into this PVR client addon.

From a user-experince point of view have the ability to "record to disk" inside this native HDHomeRun PVR client addon. In function for this PVR client addon to be able act a DVR (Digital Video Recorder) on its own when used in Kodi. That is, for the PVR client addon itself to save individual video streams to local disk directory/folder. Preferably for the PVR client addon to even save as video files in MPEG-TS (.TS) format just like real DVRs.

This ability to record can also add more features which have dependency on recording, like the ability to "Pause" and "Rewind" Live TV if could add the possibility to continuously record a video streaming from a networked-attatched HDHomeRun tuner to a series of temporary files in a look, again acting just like a read stand-alone DVR box.

Compating to other PVR client addons for Kodi, all such a function is normally located and dependent in an external PVR backend instead of the PVR client addon itself, but this addon is kind-of special and somewhat unique in that it connects to the (network-attached) TV-tuner directly, streaming directly from, so it does not go through a third-party PVR backend at all which can bring such recording functionality. And in addition it would be very nice to have the ability for the video files to be saved locally directlly on an Android device instead of on the PVR backend.

Use ip address instead of device discovery

I am using a hdhomerun tuner over OpenVPN and using the direct link from the device's web interface, plays the video stream without problems. But because of the VPN, the application is not able to discover the tuner by itself.
Using a static ip address in the settings menu, would solve this problem and use it in the creation of the url or as the first argument
for function hdhomerun_discover_find_devices_custom_v2 , instead of 0, would solve at least this kind of issues.

Kodi 20

This is the other PVR client I use besides simple client
I'm also running the Kodi 20 Alpha 3
And I'm wondering what it'll be compatible

EPG refactor

Hi,

Just opening this Issue to see if you would be interested in a branch ive started.
https://github.com/fuzzard/pvr.hdhomerun/tree/xmltv

Currently the SiliconDust EPG Api has a general limit of 4 hours. There are workarounds to extend this to ~12hrs, and obvisouly SD's DVR service provides a longer time window. There are also many providers of EPG data with longer windows of time. I am wanting to factor out the EPG update to allow the implementation of other EPG guide data.
Im from australia, so i was looking at freepg.tv for my purposes, but i realise icetv is a much used EPG guide, as well as just importing from a local xmltv formatted file that is provided by the user.

Just looking to see if you think this out of scope for your wishes with the addon? Or if you may be interested in a pull request when i get it further along?

Channel numbers

Hi, in the kodi skin my channel numbers are not used, instead kodi numbers my channels starting from one even with use channel numbers from backend checked. For example my first channel I get 1 4.1 wwl and so on. In the new estuary skin it does that in the channels section but on the right side where shows eit data it shows the correct channel numbers. Would it be possible to fix this? Add-on is the best for PVR in US. Thanks.

Kodi Logical Channel Number and HDHomeRun Lineup mismatch

Currently when using the this pvr addon, the channel numbers are being assigned by logical order and not the channel numbers presented by HDHomeRun in lineup.html or lineup.json.

I wondering if there's a way to get Kodi to use the channel numbers presented in the HDHomeRun’s lineup.html or lineup.json.

How to install?

I don't see a zip file, and nothing like this in Kodi addons. Please list the steps to get it installed for us newbies. Thanks!

does not compile on android

master does not compile on android, several source files fail to compile due to

/hdhomerun_os_posix.h:33:23: fatal error: sys/timeb.h: No such file or directory
 #include <sys/timeb.h>

@koying due you have an idea for a fix?

Addon isn't working on Android.

@zcsizmadia, one of our team members tested your addon with Android using today's Kodi master and something is wrong:

the Addon doesn't work for Android. It keeps saying no pvr add-on enabled. I make sure it's enabled but afterwards it disabled again

Fail to build with Kodi 18

Debian unstable gcc 8.2.0 amd64 jsoncpp 1.7.4 and 1.84

Kodi packages come from https://www.deb-multimedia.org

/usr/lib/ccache/c++  -DADDON_GLOBAL_VERSION_MAIN_USED -DADDON_INSTANCE_VERSION_PVR_USED -DBUILD_KODI_ADDON -Dpvr_hdhomerun_EXPORTS -I/usr/include/kodi -I/usr/include/p8-platform -I/usr/include/jsoncpp -I/usr/include/libhdhomerun  -g -O2 -fdebug-prefix-map=/src/kodi-pvr-hdhomerun-3.4.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++11 -O3 -DNDEBUG -fPIC   -D_LINUX -DTARGET_POSIX -DTARGET_LINUX -D_GNU_SOURCE -DHAVE_LINUX_MEMFD=1 -DHAVE_MKOSTEMP=1 -DHAVE_SSE=1 -DHAVE_SSE2=1 -DHAVE_SSE3=1 -DHAVE_SSSE3=1 -DHAVE_SSE4_1=1 -o CMakeFiles/pvr.hdhomerun.dir/src/HDHomeRunTuners.cpp.o -c /src/kodi-pvr-hdhomerun-3.4.3/src/HDHomeRunTuners.cpp
In file included from /usr/include/c++/8/bits/shared_ptr.h:52,
                 from /usr/include/c++/8/memory:81,
                 from /src/kodi-pvr-hdhomerun-3.4.3/src/HDHomeRunTuners.cpp:30:
/usr/include/c++/8/bits/shared_ptr_base.h: In static member function 'static const std::type_info& std::_Sp_make_shared_tag::_S_ti()':
/usr/include/c++/8/bits/shared_ptr_base.h:511:49: error: '__tag' was not declared in this scope
       return reinterpret_cast<const type_info&>(__tag);
                                                 ^~~~~
/usr/include/c++/8/bits/shared_ptr_base.h:511:49: note: suggested alternative: '__pad'
       return reinterpret_cast<const type_info&>(__tag);
                                                 ^~~~~
                                                 __pad
make[2]: *** [CMakeFiles/pvr.hdhomerun.dir/build.make:79: CMakeFiles/pvr.hdhomerun.dir/src/HDHomeRunTuners.cpp.o] Error 1````

head build with kodi 18.0rc5.2-Leia fails if system jsoncpp is installed, and v > 1.8.3

Building head,

	commit a9d730977ec2d529262cd19d81f0230e1def136b
	Author: Attila Jakosa <[email protected]>
	Date:   Sun Nov 4 07:24:57 2018 +0000

	    [lang] automatic syntax corrections for the en_GB language file

	commit d434788f31daf560a30f8d485b944ec53a089d31
	Author: Rechi <[email protected]>
	Date:   Fri Oct 26 12:57:35 2018 +0200

on linux, with just-upgraded,

	18.0rc4-Leia -> 18.0rc5.2-Leia

and

	rpm -qa | grep -i jsoncpp
		jsoncpp-devel-1.8.4-lp150.50.2.x86_64
		libjsoncpp19-1.8.4-lp150.50.2.x86_64

make fails

	make V=1 addon-package
		Scanning dependencies of target addon-package
		Scanning dependencies of target pvr.hdhomerun
		[ 25%] Building CXX object CMakeFiles/pvr.hdhomerun.dir/src/client.cpp.o
		[ 50%] Building CXX object CMakeFiles/pvr.hdhomerun.dir/src/HDHomeRunTuners.cpp.o
		In file included from /usr/include/c++/8/bits/shared_ptr.h:52,
		                 from /usr/include/c++/8/memory:81,
		                 from /home/dev/kodi-top/pvr.hdhomerun/src/HDHomeRunTuners.cpp:30:
		/usr/include/c++/8/bits/shared_ptr_base.h: In static member function ‘static const std::type_info& std::_Sp_make_shared_tag::_S_ti()’:
		/usr/include/c++/8/bits/shared_ptr_base.h:513:49: error: ‘__tag’ was not declared in this scope
		       return reinterpret_cast<const type_info&>(__tag);
		                                                 ^~~~~
		/usr/include/c++/8/bits/shared_ptr_base.h:513:49: note: suggested alternative: ‘__pad’
		       return reinterpret_cast<const type_info&>(__tag);
		                                                 ^~~~~
		                                                 __pad
		/home/dev/kodi-top/pvr.hdhomerun/src/HDHomeRunTuners.cpp: In member function ‘bool HDHomeRunTuners::Update(int)’:
		/home/dev/kodi-top/pvr.hdhomerun/src/HDHomeRunTuners.cpp:73:45: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<HDHomeRunTuners::Tuner>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
		   if (nMode & UpdateDiscover || nTunerCount < m_Tuners.size())
		                                 ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
		gmake[6]: *** [CMakeFiles/pvr.hdhomerun.dir/build.make:76: CMakeFiles/pvr.hdhomerun.dir/src/HDHomeRunTuners.cpp.o] Error 1
		gmake[5]: *** [CMakeFiles/Makefile2:73: CMakeFiles/pvr.hdhomerun.dir/all] Error 2
		gmake[4]: *** [Makefile:152: all] Error 2
		make[3]: *** [CMakeFiles/addon-package.dir/build.make:57: CMakeFiles/addon-package] Error 2
		make[2]: *** [CMakeFiles/Makefile2:110: CMakeFiles/addon-package.dir/all] Error 2
		make[1]: *** [CMakeFiles/Makefile2:117: CMakeFiles/addon-package.dir/rule] Error 2
		make: *** [Makefile:199: addon-package] Error 2

This is a new problem; builds were working not that long ago.

It's reproducible on all my boxes.

At this point, I have just a suspicion - as yet, unverified - that this is related to jsoncpp 1.8.4 (related to @fuzzard 's PR here: #75 ?)

Drm channel playback not working

I'm using a hdhr prime with cox and a tuning adapter. I am using a TiVo stream 4k and can view all of the DRM channels using the hdhomerun app only after allowing location access to the app which seems to be the trick.
I did not see a location access permission switch the kodi app in Android settings so I'm guessing this is part of the problem.

This kodi pvr client is sooooo much better than the hdhomerun app especially when using a steaming stick remote control. I'm not sure if this is a bug or DRM is just not currently supported by the plugin.

PVR: HDHomeRum

Kodi 19
PVR HDHomeRun
add on couldn't be loaded. An unknownd erro has occurred

UpdateAddons: Failed to create add-on PVR HDHomeRun Client, status = 5

Fire TV - 2nd Gen (2015) | AFTS | Android Level 22 (Android 5.1) | Fire OS 5

channels

Is there any way to separate channel numbers from channel names to avoid skin issues.

signal strength and signal to noise quality

hdhomerun_config FFFFFFFF get /tuner0/status returns the info needed
ch=8vsb:647000000 lock=8vsb ss=100 snq=98 seq=100 bps=14647456 pps=1391

Anyway to get ss and snq into the gui?

hdhomerun library update, source and handling thereof?

It's about which source of the hdhomerun library we use for the add-on.

We are currently using https://github.com/Silicondust/libhdhomerun. The changes are only saved there as commits and never as releases. In addition, the source always lags behind their website there.

Normally I would not care much, only when I look at Ubuntu packages as a comparison (https://packages.ubuntu.com/hirsute/libhdhomerun4), I see the latest with https://download.silicondust.com/hdhomerun/libhdhomerun_20210624.tgz. On github they have 20201023 and increase to new as request opened here Silicondust/libhdhomerun#30, but not was come in.

Only when I see the Ubuntu as the source source version is in front of the addon do I ask myself the question. Otherwise they are always lagging behind with versions on Ubuntu (related to other libraries).

Should we use:

Try to keep the addons up to date as far as possible so that they don't die. Even if there are no more direct maintainers for some addons, maybe someone will come again hopefully 😅.

Does not seem to work

Code:
18:38:45 89.346893 T:1754264480 ERROR: Unable to load /usr/lib/kodi/addons/pvr.hdhomerun/pvr.hdhomerun.so, reason: /usr/lib/kodi/addons/pvr.hdhomerun/pvr.hdhomerun.so: undefined symbol: IsRealTimeStream

This add-on doesn't support API 4.2.0. Open an issue on https://github.com/kodi-pvr/pvr.hdhomerun - if there's no sign of an update soon I'll be forced to drop it from the build (as I recently did with pvr.vuplus). No point building broken and unsupported add-ons.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.