Replies: 36 comments 46 replies
-
|
For those of you who use Channels DVR m3u into SagetV ... I found out that using curl tuning is much faster along with consumer RAW in OPENDCT. streaming_executable=curl -s http://192.168.50.66:8089/devices/ANY/channels/%c%/stream.mpg?format=ts |
Beta Was this translation helpful? Give feedback.
-
|
nyplayer, so from what you mentioned on the old forums on 10/16/21: Replace this:
With this:
I have everything working with Channels DVR and TVE. Really liking it so far. |
Beta Was this translation helpful? Give feedback.
-
|
@LoisGNS :The links at the top of this thread to the old forum work. I tried the dawzee link and it didn't work and I don't know where it is in the old forum. I felt further discussion of OpenDCT and its configuration shouldn't be in the thread about PrismCast. There is a relationship but they are different and it could make the PrismCast thread more confusing than needed.
My apologies, I simply don't like writing up documentation . Also, there a lot I can't explain - I have a "Monkey See, Monkey Do" way of learning. That stated, it doesn't mean I won't do what I can to help you get this working. This thread can/may become some of that documentation. I also apologize if I over explain or tell you things you already know (one reason I don't like writing up documentation). Yes, at least Windows 10. It removes any issues of an unsupported OS from causing problems. (FWIW - when I was first playing with OpenDCT and Channels on Windows 7- I got things working but they were sometimes less than desired -especially with PlutoTV. Once I found out that W7 wasn't supported by Channels anymore and did some testing with Channels on W10, it all started working as expected.) I run Sage, OpenDCT, and Channels all on the same machine but they don't have to be, they can all be on a different machines (they would be referenced by ip address and port - 192.168.3.3:8089 example only )
Both of these are blank in my OpenDCT config file. Basically, they are a way of telling OpenDCT to ignore some incoming (specifically UPnP) Network traffic. I will go as far as stating these are for certain specialized setups.
The first config line is referring to physical Interface on the local machine/device. When I see eth(n), (eth or ethernet) it is referring to a port on a switch. In this case I suspect it could be referring to a machine with more than 1 Network card (NIC). The second would allow ignoring specific ip addresses for UPnP input. Somtimes the UPnP automagic configuration just doesn't work very well and becomes a pain. EX - 2 Sage servers setups, one for production and one for test. Each setup also has it's own cable card tuner (DCT -> Digital Cable Tuner) to work with. Both of these systems are visible to each other on the network. I may be wrong about these but that is how I view there use.
|
Beta Was this translation helpful? Give feedback.
-
|
On my test server (Windows 10) I installed OpendCT. The installation directions were clear enough, but can't seem to configure it, even to make use my ancient HDHR device. While Sage is recognizing it (as 127.0.0.1: 9000), when I try to preview the channels (lineup copied from the non-openDCT version of the same tuner), I select a knowkn-working channel. Signal strength is shown as 100%, but the preview never starts "loading Preview. Please wait..." And I've waited quite a while in case it's just slow. With the same tuner not attached to OpenDCT, it previews the same channel no problem I thought I might have found & fixed the problem when I noticed that Sage thought the OpenDCT version of the tuner was QAM and cable, when it is in fact ATSC. I didn't find a way to change that in the interface, but changed it in sage.properties & when I restarted SageServer & Sage, it now displayed as ATSC, and in the interface I was able to correct cable to antenna. But that didn't fix the problem; the behavior stayed the same. So maybe something needs to be adjusted in the openDCT properties - but what? Also, since I really don't need OpenDCT to deal with the HDHR, but was testing it because that was the only thing it recognized, I'm looking for anything else I can point it at - and how to do so. I'm not ready to try Channels yet, since once I do the 30-day clock will start ticking before I have to pay them, so I was hoping to get other components working first. Is there any other readily available source I could point it at? I do have PlayOn, for example, and maybe there are some free streams out in the wilderness it could look at? |
Beta Was this translation helpful? Give feedback.
-
|
@Ugadata , Definitely glad not to have to use Docker, since I don’t understand it.
Sage sees them as at 127.0.0.1 via OpenDCT. I am pretty sure they are the ancient “Dual” model, HDHR-US. I’ve had them a few years and am pretty sure I got them from someone on the Sage forums as part of a bundle for little or no $ beyond shipping cost. It also sees the same tuners without the 127, which I believe is the “native” Sage support, since I’ve used the HDHR tuners with this server before. The Native ones show the expected channel previews, the same tuners newly detected by OpenDCT as 127… tell me the channel is strong but fail to preview it (the preview window just stalls out). Network Tuner discovery had already been on, so I didn’t need to change sage.properties. My HDHRs are old enough that I’m not sure they have web pages. (If they did, where would I find them?) My OpenDCT config file is similar to yours – different tuner-ids and last_channel, of course, but the rest matches. There is no line for streaming_executable. Is it only used when connecting to Channels? You mention a generic pipe. What is that & when is it used? My Sage setup display, showing my HDHRs both as regular Sage tuners and as OpenDCT (i.e. on 127.0.9.1:9000.)
I did shut down both Sage and OpenDCT servers before editing either of the config files. I had to remove and re-add it before Sage was able to see it as ATSC rather than QAM. Nonetheless, the preview still fails for both of the OpenDCT-referenced tuners even though it claims to see a 100% signal, and succeeds for the two native ones (same physical device). For that reason I wonder if either the device is too old for OpenDCT to handle or whether some additional configuration is needed to enable Sage to see the preview. I even tried removing one of the native Tuners from Sage in case having two versions of the same tuner was confusing things. Nope, the OpenDCT-recognized version still won't display a preview. This makes me wonder if there’s anything else I can do to test OpenDCT before trying to set up Channels; that is, something I might already have (maybe connected with PlayOn) or be able to find/create. |
Beta Was this translation helpful? Give feedback.
-
@LoisGNS - Referencing the above command; It should work with ANY source you have in Channels. Admittedly, I don't completely understand the entire command line but I understand enough to modify some of it. It presumes you have a copy of CURL on your machine (in this case, since I don't see a reference to "C:<any folder>", I presume they modified the Environment Variable - PATH command.). Based on the IP OpenDCT and Channels are running on the same machine. The "ANY" reference is to your sources in Channels. The "ANY" can be replaced by the individual source in Channels which can be found in Channels under Sources > Manage > Manage Lineup. At the top of that page is the source reference in betwwee the ( ). FWIW: I generally put FFMPEG or CURL directly off the C: drive (C:\ffmpeg or C:\curl) - less typing in the command line.
Note: this line will only work with my PlutoTV source (it won't work with my DirecTV or HDHR Flex4K source in Channels).
|
Beta Was this translation helpful? Give feedback.
-
|
@KryptoNyte-Sage https://forums.sagetv.com/forums/showthread.php?p=597001&postcount=1." Of course, I can't find that thread directly, but found this one (which I did find): https://forums.sagetv.com/forums/showthread_t_62774.html?t=62774, which might be relevant. But looking at the threads, it's hard to sort out what actually would work. Thanks for any guidance! |
Beta Was this translation helpful? Give feedback.
-
|
I will try to write something up over this coming weekend (I'm running on Win 10). Other than Prismcast, what other tuners do you plan to setup for Channels DVR? What streaming service are you wanting to integrate (YoutubeTV, DirecTV Stream, etc.). |
Beta Was this translation helpful? Give feedback.
-
|
In the meantime, I'll mention that I've managed to avoid docker stuff, at least for now. I have Prismcast installed on native Windows (with node.js). I see all the great activity on FAST, just not real interested as the 200+ channels that I already have with other sources are more than I can actually make sense out of in the guide as it is. |
Beta Was this translation helpful? Give feedback.
-
|
Lois, are you actually running Channels DVR at this point? Are you setup in Channels DVR to receive all the native Xfinity TVE channels already (this is not all Xfinity channels you subscribe to, but the ones currently available via TVE)? I only use the more exotic options (Prismcast and the likes) for stuff that I subscribe to, but don't get with native Channels DVR TVE. TVE still provides things like closed captions which are vitally important to some folks, where the more exotic options don't. In the Prismcast intro thread over in the Channels DVR forum, did you search the entire thread for Xfinity? Have you considered abandoning Xfinity for something that seems to be more universally adaptable these days, like YoutubeTV? I don't want to sound like a saleperson for s specific process or service, but I have found that aligning my paid services with what the developers are interested in at this time seems to yield the best results. |
Beta Was this translation helpful? Give feedback.
-
@LoisGNS You can name them anything you want. I would suggest adding more than one, something like: generic.pipe.device_names_csv=ch1,ch2,ch3, etc (I like to keep it short, makes for better viewing in Sage when looking at the tuner scheduling) I suspect you will need more than one tuner regardless if you reference them all as 'channels' or individually. |
Beta Was this translation helpful? Give feedback.
-
|
example of data in opendct.properties file (the .241 IP address is the server running ChannelsDVR and all sources), stop OpenDCT before making these changes: generic.pipe.device_names_csv=SpectrumTVE1,SpectrumTVE2,SpectrumTVE3,SpectrumTVE4,SpectrumTVE5,SpectrumTVE6,YoutubeTVE1,YoutubeTVE2,YoutubeTVE3,YoutubeTVE4,YoutubeTVE5,YoutubeTVE6,Philo1,Philo2,Philo3,Philo4,Philo5,Philo6,FireTV,PrismCast1,PrismCast2,PrismCast3,PrismCast4,Roku1,Roku2,Roku3,Roku4,ADB1,ADB2,ADB3,ADB4 Once you have made these changes, restart OpenDCT (console or service) and run for, say 3 minutes, then stop it again. It will add the lines below to the properties file, where you can modify with your specific parameters. The only thing that I changed here was adding the streaming executable path, your last channel number might be blank the first time around. sagetv.device.1590952977.consumer=opendct.consumer.DynamicConsumerImpl <EDIT: Maybe someone can jog my memory here, I thought I had installed a plugin to use xmltv based on the stuff below, but I can't recall any more.> Example of xmltv.properties file contents: Example xmltv_CDVRyoutubetv.properties file contents (the only thing I modified was the configurations, provider.name, provider ID,and path to xmltv.files): Additional notes:
|
Beta Was this translation helpful? Give feedback.
-
|
Lois, I added some bold/italic text to update my post hoping to address some of your questions, but ultimately, I would try and leave the other variables alone until you get it up and running and can then play with the rest if you wish. Try to think of it this way, OpenDCT is for adding individual TUNERS to Sage, but XML is to fetch EPG for SOURCES (a source can have multiple tuners in this regard). For each tuner you add in SageTV, you will assign the XML EPG source for. The plugin to use XMLTV must be the stuff from the first post in this thread, I can't remember any more. |
Beta Was this translation helpful? Give feedback.
-
|
Got partially there but hit a snag trying to set up epg data:
So I picked the first one listed to configure - it also has the fewest channels. It seems stuck on a screen that says "please wait while the channel lineup is downloaded for ..." How long is that supposed to take? Clearly I've done something wrong! I confirmed that I can watch a video by checking a file copied to one of the importedvideo folders. It plays just fine. Here are some lines from my opendct.properties that may be relevant:
The device_id shown by Channels for this source is "TVE-Comcast_SSO, and the ip address is correct. (The opendct plugin put in all the extra slashes where they wouldn't otherwise be). Here's the applicable xmltv file: I used your examples and plugged in the xml info Channels gave me. This happens to be one of the properties file Sage isn't listing, but the others all follow the same model. Ideas? |
Beta Was this translation helpful? Give feedback.
-
|
I assume you have already installed the XMLTV plugin from the first post in this thread. When adding a tuner to Sage:
Other potential things to investigate:
|
Beta Was this translation helpful? Give feedback.
-
|
Here are the file contents of prismcast.bat in the node.js directory per the post above (exact copy-paste): @echo off rem Ensure this Node.js and npm are first in the PATH setlocal enabledelayedexpansion rem Figure out the Node.js version. rem Print message. popd rem If we're in the Node.js directory, change to the user's home dir. @echo on prismcast |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the detailed description. Hope to try this out soon. Sent from my iPhoneOn May 16, 2026, at 9:47 AM, KryptoNyte-Sage ***@***.***> wrote:
PrismCast is a background app (or service) that runs to automate launching of a Chrome window (customized with a capture plugin), logging into you paid streaming service, and capturing [and encoding] media from the Chrome session saving it as a file on your computer. It appears to be running in native Windows (but in a Node.js container, so you'll need to install Node.js for Windows), Mac OS, and Docker. It integrates with the Channels DVR software (at this time, you must be running Channels DVR to get it to work) and the setup for this integration is described here (scroll down for description and instructions):
https://github.com/hjdhjd/prismcast
PrismCast then becomes a source (tuner) in Channels DVR. More specifically, it becomes one source with potentially many tuners if your streaming service and the computer it runs on can capture multiple streams simultaneously (I had 8 or 9 programs 'recording' at the same time on a Core i5-11400, but in practical use I would say 4 or 5 would be the max).
Once we got this up and running with Channels DVR, we then access the PrismCast 'source' and share it with SageTV using the instructions in this thread (with OpenDCT and the XMLTV plugin). It's a round-a-bout way of bringing streaming services (and EPG guide data) into SageTV.
Because the Chrome capture window(s) is also doing encoding, it will need some processor horsepower, especially if you were recording 3 or 4 channels simultaneously, and running live Comskip on those recordings. I had this running with Sage a few months ago but stopped using it because the encoding my server was doing was giving stuttering video results. Now Lois seems to be having trouble getting it to work at all and is asking the developer about it in the Channels DVR forums.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
|
Out of curiosity, since I'm not getting jittery video out of Prismcast on my Ryzen 5500 (Windows 11), I looked for comparisons. This source: https://www.cpubenchmark.net/compare/4807vs4233/AMD-Ryzen-5-5500-vs-Intel-i5-11400 says the Ryzen 5500 is only about 16% faster than your processor. I wonder if something else could be at work? Memory? I have 16GB; you didn't say how much you have installed. Provider in use? (I'm on Xfinity, I think you said you're on Youtube TV), OS? Hard to believe Win11 would be any faster than Win10 in this respect. GPU? Mine is NVidea GForce 960 4gb - so fairly old in the current scheme of things. All that said, for some unknown reason, I'm having trouble with many Channels recordings today. A few days ago I did several simultaneous Prismcast recordings & they came out fine; today, they are barely tuning. I did move channel numbers around a few days ago; wonder if that messed anything up. May take more fiddling overall. |
Beta Was this translation helpful? Give feedback.
-
|
Lois, Let's back up a bit. Download and install VLC on a PC if you don't already have it. Launch a VLC window and pull-down MEDIA > NETWORK STREAM and enter the following URL (modifying it for your server IP &, port, exact PrismCast tuner name in Channels DVR, and a valid PrismCast channel instead of 12005 in my example): When you launch this stream in VLC, does it load and start playing? Does the PrismCast browser window on the server launch the stream [visibly]? |
Beta Was this translation helpful? Give feedback.
-
|
So the latest test confirms that the streaming executable (verbatim + channel number) from OpenDCT streams from Channels DVR correctly, and your OpenDCT streaming executable is basically identical to mine (from earlier posts). I can't explain why your timing out when loading channels, so I would keep deleting the new tuner in SageTV and re-adding until you get the channel setup from Channels DVR correctly. Beyond that, I don't know what else to test, except to start checking the SageTV logs to see if there is some other underlying problem. Anyone else have any ideas? |
Beta Was this translation helpful? Give feedback.
-
|
When you added the XMLTV plugin to the server, did you follow the directions in the readme file?
I recall when I copied the files from the ZIP file into my SageTV directory, I didn't do it all at once, I copied them in by directory. |
Beta Was this translation helpful? Give feedback.
-
|
Some lessons learned. I don't know if these will be applicable to others, but it's what I needed to do to get Channels to talk properly to my main Sage server, which is on a different computer than my Channels server: OpenDCT has to be running on the Channels server - probably also on the Sage server. If it's stopped or otherwise not running on the Channels server, the tuner loads up ok and the epg loads up ok (still haven't made it work on the Sage server on the Channels box, but that wasn't the ultimate goal anyway and won't be unless I decide at some future point to consolidate both servers to the same box; I suspect there may be a problem on the Sage installation on the Channels box that might be fixed by a complete uninstall/reinstall). So far, I have only set up TVE, and have remapped the channels I'm going to use to start at 300 instead of 6000 because I want to keep to 3 digits. I will probably set up the Prismcast channels to start at 400, and the FastChannels I want to send to Sage to start at 500. I will gradually enable Prismcast and FastChannels, and set up multiple instances of each of the channels channels to enable multiple simultaneous streams. |
Beta Was this translation helpful? Give feedback.
-
|
Is there a particular reason why the ffmpeg command in streaming-executable is set to ts (as opposed, for example, to mkv, mpg, libx264, etc.? I find they all work equally well when used with VLC. Is one format more efficient than another? |
Beta Was this translation helpful? Give feedback.
-
|
I finally figured out why the Prismcast epg wasn't loading properly. In my xmltv.properties file I had "MCU-PrismCast" where I should have had "MCU-Prismcast." Had no idea it was case-sensitive. I'm still having a problem where Prismcast doesn't start properly on boot, despite trying various things, including trying to set it as a service, putting the prismcast.cmd into my Startup folder, etc., etc. If I don't start it manually when I boot the server, it doesn't start, at least not fully. I've moved to trying to attach Sage to my FastChannels sources, which work fine in Channels. In Sage, howver, while I can get the EPGs loaded, the streaming doesn't work. That is, I tune to a channel and get "no signal." Here is the m3u from Channels: http://192.168.2.160:8089/devices/M3U-FastChannelsForSage/channels.m3u?format=ts&codec=copy And here is what I have in OpenDCT: sagetv.device.2083684703.streaming_executable=C:/ffmpeg/bin/ffmpeg.exe -i http://192.168.2.160:8089/devices/M3U-FastChannelsForSage/channels/%c%/stream.mpg?format=ts -c copy -f mpegts - The m3u from Channels works ok in VLC, so the problem is just with Sage. What might I be doing wrong here? |
Beta Was this translation helpful? Give feedback.
-
|
Thanks. I'll give that a try.
…On May 27, 2026 12:57:05 PM EDT, Ugadata ***@***.***> wrote:
My FFMPEG command line looks a bit different:
c\:\\\\ffmpeg\\bin\\ffmpeg.exe -i "http\://127.0.0.1\:8089/devices/TVE-DTV/channels/%c%/stream.mpg?format\=hls" -c copy -f mpegts -
**_Modified with your settings:_**
c\:\\\\ffmpeg\\bin\\ffmpeg.exe -i "http\://192.168.2.160\:8089/devices/M3U-FastChannelsForSage/channels/%c%/stream.mpg?format\=hls" -c copy -f mpegts -
The "slashes" need special handling, hence the extra slashes. Also the format coming from Channels is changed from TS to HLS.
--
Reply to this email directly or view it on GitHub:
#51 (reply in thread)
You are receiving this because you were mentioned.
Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
Lois, regarding starting PrismCast when the computer boots up, did you follow my instructions from this post, and the post right below that one? |
Beta Was this translation helpful? Give feedback.
-
|
FWIW - I have Sage Server, OpenDCT, and Channels all on the same machine. I am still not using Prismcast, but I have had it working and Prismcast is on a separate machine from Sage, OpenDCT and Channels. \ramble\ |
Beta Was this translation helpful? Give feedback.
-
|
Changing the topic slightly, so started a new post: One other thing I've been considering is trying to point Sage to the location where Channels records on my W11 box as an import directory. Currently, Channels records to an existing Sage Import folder on my Windows 8.1 box, and secondarily to a larger drive on the W11 box. But I'd rather use the W11 box for main Channels storage. However, I can't get Sage to recognize the location to assign it to an import folder. I've tried:
I asked Perplexity.ai about this and it suggested a permissions issue: that if I had the Sage server run under the local account, it might more easily see the shared drive & folder. But I'm hesitant to try that because I have a recollection of it needing the system account for something - possibly USBUirt - to work correctly. Anyway, as noted, tearing hair out. |
Beta Was this translation helpful? Give feedback.













Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Some of these were already posted in another thread but sometimes they don't work.
OpenDCT: An open source digital cable tuner
https://forums.sagetv.com/forums/showthread_t_62774.html?t=62774
CHANNELS DVR with Generic Pipe Capture (PLUTO TV as well)
https://forums.sagetv.com/forums/showthread_t_66804.html?t=66804
NOTE: a copy of FFMPEG or CURL will be needed to get content from Channels thru OpenDCT into Sage.
Updated XMLTV Plugin with compile steps
https://forums.sagetv.com/forums/showthread_t_66899.html?t=66899
To use Channels DVR with SageTV you need at least OpenDCT and a Channels Server. This is presuming that you already have a supported TV provider. Support for Channels DVR is somewhat thin for anyone Outside the USA.
For Channels TV Everywhere (TVE) you can get by with Schedules Direct for guide data.
I seem to remember Philo TV worked OK with Schedules Direct for guide data as well (but it was only during a trial period for testing - YMMV)
Pluto TV will need the XMLTV plugin setup in order to work.
Beta Was this translation helpful? Give feedback.
All reactions