Project

General

Profile

DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance)

Added by G Kazaroth almost 4 years ago

Cabernet for (Cable Network) version 0.9.12 (4/13/2023)
TVGuide, DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex

Provides a configurable interface from providers to TVHeadend.

  • Direct streaming plugins for DaddyLive, PlutoTV, XUMO
  • EPG supplemented using TVGuide.com data
  • M3U Plugin provides channels for: SamsungTVPlus, Plex, PBS, Stirr, and others
  • From: https://i.mjh.nz/
  • Import your own M3U file

https://github.com/cabernetwork/cabernet/releases
Purpose is to get a service that will take the DaddyLive, PlutoTV or XUMO server stream, clean it and feed it into TVHeadend and other DVRs (Also tested on Emby, JellyFin and Plex). Also it runs on Linux, Windows as a service and Docker. Windows has a installer. Once installed, setup is easy with TVHeadend. Also includes a TVGuide.com plugin to obtain TVGuide data.

1) Setup the automatic IPTV network (recommend new URL is http://[host]:6077/PlutoTV/channels.m3u)

Make sure to set the "Maximum # input streams". PlutoTV is set to a max of 4 and tvheadend uses 2 per tuner during initial screening. Doing a force scan will create the mux and service values. Also, turn View level to Advanced and set the Re-fetch period (mins) to a very large number. TVheadend has a tenancy to cause issues when channels change (Changed Services will not be mapped to channels). The Maximum Timeout is used to wait for a reply during a Forced scan. Recommend keep this low, like 15-20 seconds. Some of the channels may fail, but it is faster than having a high setting and waiting for all channels to scan. Just individually rescan those that failed by setting each mux back to PEND from IDLE.
2) Next you can setup the grabber. I use a URL grabber written in Unix bash and is an extremely small file. It can be found in the github repo at
https://github.com/cabernetwork/cabernet/tree/master/lib/tvheadend/service/Unix called tv_grab_url
Place the grabber file in the same location as the other TVHeadend tv_grab* files, change the permissions to executable and restart TVHeadend. This should allow TVHeadend to pickup the new grabber. While in the grabber list, make sure and disable any OTA grabbers. Stations no longer send this information and will only cause TVHeadend to use a tuner for scanning. Displaying the log window by clicking the three ^ in the bottom right is helpful at this time.

Have the grabber run and populate the EPG data into the EPG Grabber Channels tab. The log should show a quantity of channels were detected.
Pop over to the EPG Grabber tab and disable the OTA grabber cron. Also, update/replace the Internal grabber cron schedule using something like below. The example will pull the TV guide at 6:04am and 5:52pm. Add more if you need. It is recommended to use static cron times.

4 6 * * *
52 17 * * *

3) In the Channel view, select Map all channels.

This will tie the services, EPG and channels together, automatically. After this, re-grab the EPG data. This will populate the EPG tab with shows. For TVH version 4.3, the Number column will auto-populate. For TVH 4.2, you will need to manually add channel numbers.
4) Display the TVGUIDE. This appliance has special features which maps the tvheadend genre, giving colors on tvguides. It also has enhanced guide descriptions and optional additional channel notations if you use many streams. Below is the Kodi tvguide using the pvr.hts plugin.

For Kodi, go to the settings for PVR and turn on the General setting "Use channel numbers from backend".


Replies (960)

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Martin Runneals over 1 year ago

Hi All

I'm using Cabernet with both Jellyfin and Plex I noticed for Pluto every commercial break or end of the show the Video freezes. I need to go back to the guide and restart the channel. I've tried the star trek channels, mission impossible and others. I was watching Pluto fine last year but since then I've had many changes in versions and computers so I can't tell if i just have a setting different. I tried Streamlink and FFmpeg and both do it. I'm not sure which settings need to be changed to fix this.

Here are my current Pluto settings:

[plutotv_default]
label = PlutoTV Instance
enabled = True
player-stream_type = streamlinkproxy
player-enable_url_filter = False
player-play_all_segments = True

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

Turn the player-enable_url_filter back to default (True). This will remove the commercials and allow the stream to continue after the commercials finish.

Just realized, the tool tip on player-enable_url_filter states it only works on internalproxy, so you will need to use that stream type as well.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Martin Runneals over 1 year ago

Thanks that fixed it mostly . When it comes back after the commercials it sometimes loops about a minute of the program but I can live with it.

Has anyone found an epg XML source for the UK channels?

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

The deja vu event is caused by the client requesting a full reset of the stream, when the stream stops for a few seconds. This is because the developers of the clients believe streams are OTA streams which, basically, continuously send data. Online streams are not that way. You can see the channel drop and reconnect on the home page under the tuner status. To prevent this, you can try to enable a keep alive setting. FYI, this is not the ATSC keep alive standard, because nobody implements this, correctly. However, I have implemented something that mostly works. To enable this, you can go to the plugin level setting tab and find the "Send ATSC Keep-Alive". Turning this to true may fix the deja vu. If recording, I like it off, since it does add packets to the recording, but for live streams, try it with the keep alive true.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Vic K over 1 year ago

looks like daddy live changed its website a bit. channel upate not grabbing channels.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

It has been down since 7/9. They have been claiming it's coming up soon, so was waiting for an answer. There is a new url provided one hour ago to access the channels. Will take a look and see if its all the same.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

0.1.9 Daddylive
Many of you have been hoping for a new release of Daddylive plugin. It is now available. I have completed minimal testing and it still has missing EPG data, but is working. Due to the changes to the website, I recommend the following steps...
- Before upgrading, change the number of EPG days down to the minimum of 2 days.
- Delete the Daddylive Instance from the database
- Run the upgrade to 0.1.9
- Restart the service
- Once the channels are listed in the channel editor, go through and disable all channels you do not want
- Reset and rerun the Daddylive EPG
- Import the Daddylive updates to your DVR/mediaserver
- Check everything out. If it is working you can slowly increase the EPG days from 2

All of this info is also listed in the release notes for the plugin. Expect further releases of the plugin to include more EPG data.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Vic K over 1 year ago

works great.

On new daddylive website list they have 688 channels. when i scan with v1.9 plugin i get 680. I know its no big deal but my favorite channel History USA is missing. It is 312 on daddylive url.

update: Nevermind seems like daddylive issue as both Disney and History both point to 312. and in cabernet we have only 1 entry for 312 as Disney

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

Yes, there are a number of errors in the list. Considering the magnitude of the changes and speed that they got back up, I am surprised the number of mistakes are not more. ACC Network and Nick Music is another one. I suspect these will get cleaned up in the next few weeks.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

Updates to Daddylive and Cabernet.
- Added more EPG to channels. Mostly just linked the east coast since it looks like daddylive uses mostly east.
- Added notice logging when Daddylive finds duplicate channel UIDs from provider
- Daddylive will now sort on edited channel name and not the original channel name, so you can now index and set channel numbers using start channels using the edited name. EX: NY ABC, NY CBS, NY FOX will be moved together. It updates either when the channels are refreshed or when the starting number is changed.
- Thumbnails were not refreshing when it starts with no thumbnail and then has one provided from the provider. It now updates the channel data to include the new thumbnail.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Vic K over 1 year ago

the 24/7 channel list on daddylive has fixed history usa channel to 322. but the plugin still doesnt pick it up. I have deleted all data folder and rescanned. Am I missing something?

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

I just took a look at the 24/7 page and both disney and history are 312, not 322. Cabernet log shows both are tied to the same uid. If you go over to the H tab, then the history usa is 322, but not on the main 24/7 page. It is still not fixed.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Vic K over 1 year ago

not sure which url your using but here is the one im using and history is 322 https://d.daddylivehd.sx/24-7-channels.php

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

Checked discord. Looks like a mess. On 7/21, d.daddylive.sx went down and was instructed on the site and discord to migrate to daddylivehd.com. It seems that some people has issues getting to that website, so on 7/23 around 7pm, they brought back d.daddylivehd.sx. According to chat and discord, we should migrate back to d.daddylive.sx. 0.1.10 should point to that website. Will make some updates and push out a new version.

I reverted back to 0.1.10 and the history channel did show up correctly.

Update 7/25: Now both .com and .sx sites have updated to correct history channel

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Andy Marc over 1 year ago

Hi All,
Need some assistance.
I have setup cabernet using docker-compose
Here is my docker-compose file for the cabernet component of my stack
##########CABERNET#########
cabernet:
container_name: cabernet
image: ghcr.io/cabernetwork/cabernet:latest
network_mode: host
environment:
- TZ=Australia/Brisbane
- PUID=1000
- PGID=1000
ports:
- "5004:5004" # Port used to stream
- "6077:6077" # Web Interface Port
restart: unless-stopped
volumes:
- /media/nas/dockerfiles/dockerconfig/cabernet:/app/data
- /media/nas/dockerfiles/dockerconfig/cabernet/.cabernet/key.txt:/root/.cabernet/key.txt

I can confirm that the config files are all there.
Cabernet runs and launches using the browser.
I have installed the pluto plugin in cabernet and restarted the docker container
My Config.ini file for cabernet is as follows

[loggers]
keys = root

[logger_root]
level = DEBUG
handlers = loghandler

[handlers]
keys = loghandler, filehandler

[formatters]
keys = extend,simple

[handler_filehandler]
enabled = False
level = INFO
formatter = extend
class = lib.common.log_handlers.MPRotatingFileHandler
args = (os.getenv('LOGS_DIR','data/logs')+'/cabernet.log', 'a', 10000000, 10)

[handler_loghandler]
enabled = True
level = DEBUG
class = StreamHandler
formatter = extend
args = (sys.stdout,)

[formatter_extend]
format = s-(levelname)s:%(module)s %(message)s

[formatter_simple]
format = s:(module)s %(message)s

[main]
uuid = 0F65CB6C-3038-11EE-9C0D-A01D48C75C55
maintenance_mode = False

[hdhomerun]
hdhr_id = 10597BF0

[plutotv]
hdhr_id = 105AC45F
label = PlutoTV Instance
player-tuner_count = 4
enabled = True

[web]
local_ip = 192.168.xxx.xxx

The issue is my playlist is empty.
There are no channels in the channel editor
and when i go stream providers the enabled checkbox for pluto is unchecked. When i check it and restart the container it reverts back to unchecked.
Any idea what i'm doing wrong??

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth over 1 year ago

Two things I noticed.
  • The biggest is you missed the step in the Installation on how to add an instance. See "Edit the data/config.ini and add the following lines" in the Readme.
  • Second is we recommend mounting the entire cabernet folder due to the conflict between Cabernet installing plugins and doing upgrades and docker wanting to maintain the files. See docker-compose.yml

Cabernet is a different type of app in that the plugin is considered a class with static variables, while a plugin instance is the class object needed to run the plugin. You can instantiate multiple plugin objects/instances, but that does not make a lot of sense unless you are talking about the M3U plugin. In your case, you have yet to create a class object or instance, so there is nothing for the plugin to do.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Andy Marc over 1 year ago

G Kazaroth wrote:

Two things I noticed.
  • The biggest is you missed the step in the Installation on how to add an instance. See "Edit the data/config.ini and add the following lines" in the Readme.
  • Second is we recommend mounting the entire cabernet folder due to the conflict between Cabernet installing plugins and doing upgrades and docker wanting to maintain the files. See docker-compose.yml

Cabernet is a different type of app in that the plugin is considered a class with static variables, while a plugin instance is the class object needed to run the plugin. You can instantiate multiple plugin objects/instances, but that does not make a lot of sense unless you are talking about the M3U plugin. In your case, you have yet to create a class object or instance, so there is nothing for the plugin to do.

Thanks for replying.
I did try mapping the /app but when i do the folders are empty.
I had to do it like this to get all the folders to show in my docker folder

cabernet:
container_name: cabernet
image: ghcr.io/cabernetwork/cabernet:latest
network_mode: host
environment:
- TZ=Australia/Brisbane
- PUID=1000
- PGID=1000
ports:
- "5004:5004" # Port used to stream
- "6077:6077" # Web Interface Port
restart: unless-stopped
volumes:
- /media/nas/dockerfiles/dockerconfig/cabernet/data:/app/data
- /media/nas/dockerfiles/dockerconfig/cabernet/plugins_ext:/app/plugins_ext
- /media/nas/dockerfiles/dockerconfig/cabernet/plugins:/app/plugins

So now.. onto the config.ini.
Is there any guide on what can and cannot be put in there?
I looked on the github and found a post which was helpful.
Here is my config.ini
[loggers]
keys = root

[logger_root]
level = DEBUG
handlers = loghandler

[handlers]
keys = loghandler, filehandler

[formatters]
keys = extend,simple

[handler_filehandler]
enabled = False
level = INFO
formatter = extend
class = lib.common.log_handlers.MPRotatingFileHandler
args = (os.getenv('LOGS_DIR','data/logs')+'/cabernet.log', 'a', 10000000, 10)

[handler_loghandler]
enabled = True
level = WARNING
class = StreamHandler
formatter = extend
args = (sys.stdout,)

[formatter_extend]
format = s-(levelname)s:%(module)s %(message)s

[formatter_simple]
format = s:(module)s %(message)s

[main]
uuid = D4F0F08C-3204-11EE-B9F2-A01D48C75C55
maintenance_mode = False

[tvguide]
enabled = True

[tvguide_default]
label = TVGuide Instance
enabled = True

[hdhomerun]
hdhr_id = 105D13F2

[daddylive]
hdhr_id = 10568DA3
enabled = True
epg-plugin = None

[daddylive_default]
label = DaddyLive Instance
enabled = True
channel-import_groups = False
player-enable_url_filter = False
channel-start_ch_num = 2000

[tvguide_daddylive]
label = TVGuide DaddyLive
enabled = True

[plutotv]
hdhr_id = 105059A4
enabled = True
epg-plugin = ALL

[plutotv_default]
enabled = True
label = plutotv_default
epg-plugin = ALL
channel-thumbnail = colorLogoPNG
epg-enabled = True
channel-start_ch_num = 1000

[tvguide_plutotv]
label = TVGuide PlutoTV
enabled = True

Anything i'm missing/doing wrong?

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Kevin Robinson over 1 year ago

Martin Runneals wrote:

Has anyone found an epg XML source for the UK channels?

I came across this American guy: http://iptvtalk.net/showthread.php?33526-EPG-for-US-and-UK-Channels

He publishes a compressed UK guide. I use this line in tv_grab_file:

wget -qO - https://raw.githubusercontent.com/acidjesuz/EPG/master/UK_guide.xml.gz | gzip -d

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Vic K about 1 year ago

Am I the only one getting "bad data" for daddy? or is everyone down?

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Bob Jones about 1 year ago

I have to be missing something, I have setup Cabernet running as a service in windows. I can get the channels for daddylive in Jellyfin but using <IP>:6077/xmltv.xml is only returning the below data with no guide data. I've been trying to figure it out for a couple days and I'm not sure where to go at this point. It doesn't seem like the tvguide plugin is connected right? I do have it enabled and I enabled the instance but that's all I've done on the config side of things there. If anyone can point me in the right direction I'd appreciate it.

<tv source-info-url="https://github.com/cabernetwork/cabernet" source-info-name="cabernet" generator-info-name="cabernet" generator-info-url="https://github.com/cabernetwork/cabernet">
<channel id="360">
<display-name>DLHD25 5 USA</display-name>
<display-name>5 USA</display-name>
<display-name>360</display-name>
<display-name>DLHD25 360</display-name>
</channel>
.......Rest of channel data
</tv>

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by G Kazaroth about 1 year ago

EPG plugin should be installed. Then in Daddylive plugin settings, change "EPG Plugin to Use" to ALL. The EPG plugin will auto enable once the app is rebooted a few times. Then, it will provide EPG data to daddylive plugin.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Bob Jones about 1 year ago

I made sure the tvguide plugin was installed. Changed the EPG plugin on daddylive to all and accepted the for personal use prompt. Rebooted the app several times. I do see 'Refresh Daddylive EPG' task now, and I ran that. It still hasn't changed the XML data. Thinking maybe I did something else if it's supposed to be that simple so if nothing has changed overnight I'll remove cabernet and reinstall and try that. I appreciate the reply.

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by john tocher about 1 year ago

afaik there is no 5 USA epg daddylive. Are you not getting any epg at all?

RE: DaddyLive, PlutoTV, XUMO, M3U/XMLTV, SamsungTV, Plex, TVGuide interfaces (appliance) - Added by Bob Jones about 1 year ago

Yeah that’s correct, I have no guide data for any channel. I was just posting an example from the top, bad choice of example. It was to imply that all the data for every channel was the same.

(851-875/960)