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 G Kazaroth over 1 year ago

Sorry, no documentation, but it can still happen. The EPG plugins are very new. It currently only interfaces with DaddyLive and does not exist by itself. The first EPG plugin was a proof of concept to see how well it would work for plugin integration. The next release of Cabernet will incorporate Plugin Management and start having conversation about adding plugins from anywhere. So, if you are interested and its current interfaces work for you, I would recommend writing a issue and we can go over currently how to write one there.

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

Is it just me or did DaddyHD stopped working? All of a sudden I can't access the DaddyHD channels through VLC or Plex. I have no problem with PlutoTV, just with DaddyHD. Last time I used it a few days ago it was workng fine, not sure what changed. I am using cabernet Version: 0.9.10.06 and I can see all the channels on the channel editor with no problem.

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

It is working for me. DaddyLive is having growing issues with others being shutdown. They are getting a load of new users. A couple of days ago, they had to rebuild their US server. Many times, if Cabernet is having issues, it looks like DaddyLive is having a DDOS attack from Cabernet's perspective. It is more than likely just more traffic than they can handle. In general, they have a good service dept and the chat tool on their main page is pretty responsive to complaints, but that being said, it does look like they do have issues quite often right now. I do suspect things will get better. Also, note that the local channels like ABC, CBS, NBC and FOX seem to change locations based on what is available, so the tvguide may not be correct. Hopefully, it is close. I am also aware that they have a ton of channels not listed on their pages. People are just randomly trying different UID or asking the chat for a certain channel number. My understanding is the channels not listed are not maintained and may not exist at all times.

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

Is there a way for me to add more channels to the daddylive channellist and to sort the output m3u to my likes?

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

There is currently no way to add channels to Daddylive. Of course, you can create an M3U file and a M3U plugin instance for the additional channels, if you like. As stated above, "I am also aware that they have a ton of channels not listed on their pages." Future enhancements may include adding channels.

Not sure your m3u question. If this is associated with the M3U plugin, then the way to sort the m3u is to define the channel numbers in the m3u. Most media servers will sort by channel number. The channel number can be added to either the tvg-num or tvg-chno tags in the m3u file. If this is in regard to the m3u file Cabernet generates, it too sets the channel number for both tags, so the media server should sort by channel number. If the media server is having issues, turning on channel number in the client channel settings will tend to fix that.

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

I was thinking about adding a m3u file with the additional Daddylive channels, but I only know the IDs and not the streamlinks. As far as I can tell, your daddylive plugin converts the IDs in „real“ streams which I can’t do with a m3u I add or can I somehow?

By sorting the output m3u I meant in.a different way than alphabetically. Unfortunately tivimate ignores the tvg-num or tvg-chno tags so the playlist always starts with #Vamos.
But that is not really a big deal, it’s just cosmetics.

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

Cabernet has the ability to do more manipulation than standard m3u apps. I forgot that daddylive has 2 things that make m3u not possible. One is the stream auth value changes causing the stream url to not be stable. Second, the server expects specific header data that a generic m3u app will not provide AND the header changes for each channel. So, you are right, the m3u interface will not work with daddylive...

I would still recommend try turning on the channel number in the client epg settings for your channel ordering. Channel numbers can be changed to whatever you need for the order.

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

G Kazaroth wrote:

It is working for me. DaddyLive is having growing issues with others being shutdown. They are getting a load of new users. A couple of days ago, they had to rebuild their US server. Many times, if Cabernet is having issues, it looks like DaddyLive is having a DDOS attack from Cabernet's perspective. It is more than likely just more traffic than they can handle. In general, they have a good service dept and the chat tool on their main page is pretty responsive to complaints, but that being said, it does look like they do have issues quite often right now. I do suspect things will get better. Also, note that the local channels like ABC, CBS, NBC and FOX seem to change locations based on what is available, so the tvguide may not be correct. Hopefully, it is close. I am also aware that they have a ton of channels not listed on their pages. People are just randomly trying different UID or asking the chat for a certain channel number. My understanding is the channels not listed are not maintained and may not exist at all times.

I still cannot get cabernet to show the DaddyLive channels on the m3u file. Everything is enabled for DaddyLive, channels show up in the Channel Editor but whenever I open the m3u file this is all the file has:

#EXTM3U
#EXTINF:-1 channelID='612fea0e970e6f00083be56b' tvg-num='0' tvg-chno='0' tvg-name='TV Land Drama' tvg-id='612fea0e970e6f00083be56b' tvg-logo='https://images.pluto.tv/channels/612fea0e970e6f00083be56b/colorLogoPNG.png' group-title='PlutoTV|Entertainment',TV Land Drama
http://172.18.0.2:5004/PlutoTV/watch/612fea0e970e6f00083be56b

On Stream Providers I have enabled DaddyLive, DaddyLive Instance, M3u, Pluto TV and Pluto TV Instance.

On Channel Editor > DaddyLive I have:
Total Unique Channels = 306
Total Enabled Unique Channels = 306

On Channel Editor > PLuto TV I have (Only TV Land enabled):
Total Unique Channels = 373
Total Enabled Unique Channels = 1

I changed DaddyLive Starting Channel Number to 300 to see if what you wrote on the previous post would help but still cant get DaddyLive to show up on the m3u.

What changed in the last week or 2 that made DaddyLive not show up like it did just 2 weeks ago?

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

New tvguide plugin 0.1.7 required update if you are using it on cabernet 0.9.10.06.

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

still not working, working on plugin...

Issue is, I have too many changes going on right now. If you could just replace the file at
cabernet/plugins_ext/provider_epg_tvguide/lib/translations.py
with the one in GitHub, it will work. Version 0.1.5 is compatible with 0.9.10.06, but 0.1.6 is not. Using 0.1.5 and replacing the translation.py file will make it work again.

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

Cant get EPG to work. have latest version of epg. running in ubuntu

2023-03-17 11:19:12,742-WARNING:main #########################################
2023-03-17 11:19:12,743-WARNING:main MIT License, Copyright (C) 2021 ROCKY4546
Traceback (most recent call last):
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/plugins/plugin_handler.py", line 64, in collect_plugins
importlib.resources.read_text(_plugins_pkg, folder)
File "/usr/lib/python3.10/importlib/resources.py", line 103, in read_text
with open_text(package, resource, encoding, errors) as fp:
File "/usr/lib/python3.10/importlib/resources.py", line 82, in open_text
open_binary(package, resource), encoding=encoding, errors=errors
File "/usr/lib/python3.10/importlib/resources.py", line 46, in open_binary
return reader.open_resource(resource)
File "/usr/lib/python3.10/importlib/abc.py", line 433, in open_resource
return self.files().joinpath(resource).open('rb')
File "/usr/lib/python3.10/pathlib.py", line 1119, in open
return self._accessor.open(self, mode, buffering, encoding, errors,
IsADirectoryError: [Errno 21] Is a directory: '/home/vortex91/Downloads/cabernet-0.9.10.06/plugins_ext/provider_epg_tvguide'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/vortex91/Downloads/cabernet-0.9.10.06/tvh_main.py", line 23, in <module>
main.main(script_dir)
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/main.py", line 135, in main
plugins = init_plugins(config_obj)
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/main.py", line 189, in init_plugins
plugins = plugin_handler.PluginHandler(_config_obj)
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/plugins/plugin_handler.py", line 44, in init
self.collect_plugins(self.config_obj.data['paths']['external_plugins_pkg'])
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/plugins/plugin_handler.py", line 67, in collect_plugins
plugin = Plugin(self.config_obj, self.plugin_defn, '.'.join([_plugins_pkg, folder]))
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/plugins/plugin.py", line 63, in init
self.load_plugin_manifest(_plugin_defn)
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/plugins/plugin.py", line 149, in load_plugin_manifest
self.import_manifest()
File "/home/vortex91/Downloads/cabernet-0.9.10.06/lib/plugins/plugin.py", line 159, in import_manifest
self.namespace = settings['name']
KeyError: 'name'

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

I believe you are using 0.1.7 which the release clearly states "NOT COMPATIBLE WITH Cabernet 0.9.10.06 and earlier." and since you are using 0.9.10.06, that would be why you are having issues. As stated above, you need to use 0.1.5 and then copy the latest version of translations.py.

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

sorry i re-read and setup as stated and all working now.

Is there documenation on how to setup my own m3u via proxy or streamlink?

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

No problem. Thanks for understanding what I am trying to do. Working on major changes and then the EPG provider changes the API that basically breaks all the apps out there. Nice that Cabernet can easily handle the change. Try not to abuse the EPG provider... (Like doing a delete instance on the EPG plugin, or increasing the refresh rate of the guide.)

As for setup using the M3U plugin, it is very simple. You can go to https://i.mjh.nz/ and try the plutotv US files
  1. Add the M3U instance to the config.ini and restart app
  2. Goto Settings and enter the M3U URL (compressed or not) and the xml URL for the EPG.
  3. Enable the instance and restart the app
Other things:
  • I recommend setting the Group Name. It will cause TVH to group the channels under that tag.
    The rest can be defaults.

As for the Stream_type
m3u8redirect: sends the URL to the client and it is the clients job to connect to the provider directly.
Streamlink and ffmpeg proxy: are similar, but use different apps to connect to the provider.
Internal proxy: directly manages the stream from the provider that can lead to more capabilities.

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

Interesting. More clear now. I did not see anywhere that the latest epg plugin does not work with the latest cabernet. A little confusing but will try what you recommend as I am not getting any epg for daddylive.

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

I see it now but it says works and doesn't work:

provider_epg_tvguide 0.1.7 Latest

updated provider interface. works with Cabernet 0.9.10.06

NOT COMPATIBLE WITH Cabernet 0.9.10.06 and earlier.

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

Looking at changing from urllib to requests. The use of urllib is causing a DDOS issue with daddylive and is closing connections every time. By moving to requests, the connection can be kept alive. For now, recommend using streamlink with daddylive.

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

Not sure if this is known issue or not but due to daddy being unstable i have come across a bug where the tuners show as being used even though there are not active streams. Then when daddy comes back up tuner status in GUI shows as 10 streams being used but none are used so i have to restart the service to get it to work.

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

G Kazaroth wrote:

Cabernet has the ability to do more manipulation than standard m3u apps. I forgot that daddylive has 2 things that make m3u not possible. One is the stream auth value changes causing the stream url to not be stable. Second, the server expects specific header data that a generic m3u app will not provide AND the header changes for each channel. So, you are right, the m3u interface will not work with daddylive...

I would still recommend try turning on the channel number in the client epg settings for your channel ordering. Channel numbers can be changed to whatever you need for the order.

Is there a way to add new channel in sqldb or else where for daddylive?

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

The cause of the 10 streams allocated is caused by the client when the provider is not responding. In this case, no streaming traffic is happening, so a stream timeout is required to release the tuner. For internalproxy, it is set to 120 seconds. For steamlink, it is set to 59 seconds. Some clients reset the channel or go to a different channel, if data is not received in a short time. This causes the tuners to stack up. Many clients can be configured to change their responses to no data, but that is the reason. So, if you had waited with no channels active, the tuners would have timed out. Also, you can tell that the tuner is stagnate because the home page will list the tuner status as Starting or NoReply, which means no data has been received for a while.

As for the database, I use DB Browser for SQLite to edit the databases. It probably would not work in the long run unless you turned off the daddylive channel updates in the scheduler. Everytime the scheduler runs, it verifies no old channels need to be removed. Once you have the channel scheduler for daddylive cleared, then you can edit the database files all you like. The only piece that will be difficult to know is the Referer. You can guess it and see if it works. I believe you get a 503 type error, if the referer is incorrect.

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

Clients im using are Jellyfin and Tivimate. Sometimes daddy channel goes down for extended time and this even caused cabernet to crash. I can provide log if you like.

SQL worked for me to add channels. I took sample channel and edited with updated channel id in all fields and it works as expected.

As far as disabling scheduler is that somewhere in GUI or config? or the sql db? and if sql db do you know which value needs to be changed?

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

First try to run the channel update and confirm the new channels disappear. If they do, then I would recommend deleting from the gui. Do not delete the top level task... just the triggers. If you delete the task, it will recreate the triggers on startup.

(701-725/960)