INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2]   Go Down

Author Topic: NEW: Television tuners on clients are allowed to be used for recording  (Read 17212 times)

madbrain

  • Galactic Citizen
  • ****
  • Posts: 308
Re: NEW: Television tuners on clients are allowed to be used for recording
« Reply #50 on: April 01, 2019, 02:34:34 am »

The Server is, of course, the JRiver Media Center Server, which is MC running on a PC (Windows), Mac (OSX), or Linux box, with Media Network turned on. It doesn't even need the DLNA Server function turned on, when you are connecting from another MC installation, and you don't need Media Network turned on in the Desktop PC either. Just set up the Client Options under Media Network in the Desktop. When you do connect from the Desktop PC to the Library on the HTPC, the HTPC is acting as the Server, and the Desktop PC is acting as the Client.

OK, thanks, that clarifies it !

Quote
Yes, it sounds like your Desktop PC is trying to use the local ATSC tuner, which it should only try to do if you have run TV setup on the Desktop, I think. Although my Workstation Client does see my local webcam, so maybe MC sees all devices whether TV setup has been done or not. It has been a long time since I set up tuners!

I think if you go into TV Options on the Desktop, click on the Tuner Profile at the bottom, then click Configure, you should be able to uncheck the local ATSC tuner, which will deactivate it. Then playing TV channels on the Client, when connected to the Server, should work.

I don't recall ever doing the TV setup on my client; only on the HTPC, ie. the box with the physical tuners.
Indeed, I just clicked TV Options on my client, but the list under "tuner profiles" is empty.

When I click "Setup" (under General), nothing happens.
When I click "Manage devices", I see the digital ATSC tuner, analog tuner, and the webcam. There is a Configure button next to each one. I used it on the ATSC tuner and checked "disabled". Indeed, that fixed the problem !

Thank you very much !

One thing I found a little odd is that when I view live TV in the server HTPC (or time-delayed TV, with pause), the bit rate does not show in the "alternate display" text.
But when I view the live channel from the client PC, I do see the real-time bit rate. I guess that's because it's really playing the server's recording.

The fact that bit rate wouldn't show at the source device on the HTPC made it difficult for me to ascertain that I was getting the full original rate without any compression going on. I had originally selected a channel that happened to only have about 5.8 Mbps data rate, KQED-HD 1, according to my client. On the HTPC, it just didn't show the bit rate. After I started recording that channel on the HTPC, I could stop the recording, then play it back, then play that recording, and MC25 showed the bit rate, finally. This is a cosmetic bug, but it took some time to figure out.

I switched to another channel with higher bit rate, KPIX-5, which was at 15 Mbps, and matched it both on the server and client the same way.

Quote
All this is supported in MC now, but you do have to decide where you want recordings stored, and use a mapped drive or URI to point to that location. You could have a diskless MC Server, a diskless MC Client, and a Windows Server for storage of media files. However, it wouldn't be a good idea to have a diskless server, because it is best if MC stores its Library files (not the media files) on a local fast disk, if you want MC to be repsonsive. Best practice is to have at least a local boot drive with MC and its Library on it, and to use an SSD for that local drive.

Thanks ! At the moment, all my devices for recording, playback and storage have at least some amount of local storage, and boot from that local storage. It's certainly a PITA to administer a relatively large number of Windows clients at home, though. I wish I could have something that was more lightweight in terms of administration.

Quote
Windows takes care of waking and sleeping any of those. MC prevents resources it needs from going to sleep while it needs them, but doesn't get involved in putting them to sleep. Just set up the sleep functions on each PC and let Window handle it. You certainly don't need any special script for it, just normal Power Management settings.

Yes, I agree Windows takes care of these very nicely. I run Win10 on two HTPCs, my main desktop, and my husband's more recent laptop. His older laptop is still on Win7, though it is capable of Win10. My work laptop runs Win10, but is administratively locked down with group permissions, such that I cannot install MC on it (not that I don't know how to defeat, but I'm not inclined to do so).

The only two real computers I have that aren't running Windows in the house are my file server with Ubuntu 18.04, and an older PC (which used to be my HTPC, until a recent upgrade to Ryzen) transplanted to a new case that is running ArcaOS (ie. OS/2). Unfortunately, neither of those operating systems handle power management well. I won't speak of OS/2 since MC doesn't run on it, but Ubuntu seems only capable to manually go to sleep when I press the power button, or issue the "systemctl suspend" command from a shell.
The Ubuntu file server never seems to go to sleep on its own. I have been meaning to write a script to fix that, since it has a quite significant power draw, about 110W while the 5 x 10TB disks are spinning, and still 85W when they are not spinning. The heuristics are complicated, though. I basically have to collect stats from the NIC and/or various services, and  figure out when it is idle long enough, and safe to suspend.  I think the proper logic is built into Windows. Unfortunately, Windows, at least the client versions of Windows I have licenses for - doesn't have anything like ZFS. I'm running RAIDZ2 with ZFS on Linux.

Quote
Whenever you are watching Live TV, or using Time Shifting, MC needs access to a disk drive, as MC saves temporary JTV files even when watching live, in case you want to rewind the program, and probably for some buffering.

That makes sense, buffering has to happen somewhere. Using the local disk is certainly one approach. Maybe starting buffering with JTV files on a RAM disk would make some sense, either on the client or server side, if either one has enough RAM, to speed up the live playback, especially when channel surfing.

Quote
Okay, so now you are pushing it a bit. I won't respond to all that, but much is doable if you understand how MC works. Probably not the recording locally to Mum's tablet, without any TV setup done on that tablet. I haven't played with this new functionality enough to work that out, but I think not. She can record the program to the Server, then copy it to her tablet before she leaves!

She has an iPad 2 which no longer has an updated OS, so I guess she is SOL on that one. A Windows tablet would work, I suppose.

Yes, copying to tablet before leaving is an option, but it isn't necessarily as intuitive, especially if one started watching a program from live TV, then decided they liked it and hit "record" to get the whole show. Of course, one does keep leave the tablet up and running until the show finishes. If recording at the server, the MC server with the tuner must stay up also. That part should already work, but mixing mom's library with her son's might be less than ideal. I have not actually tried this. In practice, she was watching more shows on Youtube that were pre-recorded rather than live during her last trip while I was at the office, not OTA channels with MC. I taught her enough to use the Dish DVR with the old Sony RM-AV2500 IR remote - enough that she managed to start the the projector, receiver, and dish box, and even control the X10 lights in the completely dark HT room. She also managed to watch a bunch of 4K blu-rays on the Sony UHD player. Not too bad for a 72 year old ! I won't say it wasn't laborious to teach her, and she took notes, but she figured it out and never called me at work because she was stuck. I don't think I could get to that same level of usability with Media Center just yet, especially the TV part, compared the Dish DVR UI. At the moment, I'm still paying $40/month for Dish still and mostly watching HD locals from satellite at reduced bit rate, even though I can also get from my 5 OTA tuners on the HTPC at higher bit rates. I'm really looking forward to the day when the remaining bugs I have it are resolved.

Speaking of bugs, here is another one that is more than cosmetic : I had a case earlier where my HD OTA channels were showing just a very small rectangle in the lower right corner of the screen. This was with MC25 maximized, and the desktop on my HTPC running at 3840x2160 (UHD). Tuner was local. It happened after doing a bunch of channel surfing. I haven't come up with a reproducible scenario yet. It wasn't just today, but happened in the past once also. The only way to fix it was to exit both Media Center and Media Service. This had the effect of stopping all the recordings that were ongoing. When I ran into this, the "Stop" button in MC25 did not have any affect, also. OTA video content just kept player. Certainly a strange one.

Logged

madbrain

  • Galactic Citizen
  • ****
  • Posts: 308
Re: NEW: Television tuners on clients are allowed to be used for recording
« Reply #51 on: April 01, 2019, 02:43:19 am »

Your husband can watch a TV channel on his laptop, utilizing one of the five tuners downstairs.  I assume the laptop does not have a tuner, if it does, but he can not use it, it should be disabled.  MC on a client first looks for a local tuner for playing a TV channel live (including time-shifted playback).  If it does not find a tuner locally, it will ask the server to serve the channel.

Your husband can also schedule recordings from his laptop, but recordings will happen on the server.  The recorded shows reside on the server and can be streamed to any client.

AFAIK, no, his laptop doesn't have a tuner. But if it did, it wouldn't be too practical for a laptop to hook up coax :) Great to know that this works - I will install MC25 on it, I'm sure he will love this.

Edit: his older laptop running Win7, an HP dv7-2173cl, does have a built-in tuner, to which we never hooked up a coax, and for which no setup has ever been done.

I think it's a little odd when one is connected to a remote library that MC looks for a local tuner first, and not for a remote tuner first. In my case, MC was getting the list of channels from the HTPC server, on which I had run TV setup. But then, it was trying to reuse that list with the local tuner, on which I had never run the TV setup. Even if I had run local setup, and had a coax actually hooked up to it, it could be connected to an antenna pointed to a completely different place than the antenna connected to the HTPC. You would have to at least compare the local and remote channel list IMO, and decide which one to use. If a channel happens to be both in server and local clists, then you have a decision to make as to which one to prioritize in the software. But if a channel is only on the server's list, as was my case, since I had never run TV setup on my client, then the server's tuner should be used.

I think I might have run into this issue on the second HTPC upstairs as well in the past. That upstairs HTPC also has a Hauppauge card, and no coax hooked up. I think I tried to use one the tuners from downstairs before, and gave up because MC couldn't get the channels somehow. Not sure if it was the same "can't lock" problem. My husband uses the Hauppauge card in that second HTPC for video capture also, not for tuning TV channels. Yes, we have 4 Hauppauge cards in 3 different desktops in the house, but only one computer has coax hooked up ...
Logged

madbrain

  • Galactic Citizen
  • ****
  • Posts: 308
Re: NEW: Television tuners on clients are allowed to be used for recording
« Reply #52 on: April 01, 2019, 03:28:21 am »

Your HTPC is the server, and your desktop PC is the client.

The client has been able to use its local tuner for live viewing for years, provided the local tuners are properly set up.

Well, "provided the local tuners are properly setup" is a pretty big condition, especially if you aren't aware this is required.
3 out of the 4 desktops in the house have a grand total of 4 Hauppauge cards in them. Only one desktop has a coax cable hooked up to the card's tuner inputs.

The other 2 desktops each use the Hauppauge cards for capture only. They only have things connected to the s-video or composite inputs of the card. Nothing on the coax antenna / cable  / FM inputs

Quote
In your case, the single ATSC tuner on the client has not been properly set up (no antenna hookup), and MC does not know it.  That explains the behavior your described

Well, I think that's a matter of semantics, how well you document the requirement, and what you do in a failure case like this.

I settled on Hauppauge PCI and now PCIe devices for capturing composite/s-video after trying many USB devices that had all kinds of issues - would run on one machine with one controller, and fail on another one. This was extremely annoying after doing motherboard upgrades when USB chipsets change. There was no rhyme to what would work or not with the USB capture devices. So, the ATSC tuners are there coincidentally. AFAIK, Hauppauge doesn't make PCIe cards for capture only. The ATSC tuners are bundled with video capture capability. In any case, if you intentionally never intend to use the tuner, arguably, not having setup your tuner is not a mistake on the part of the user. If I go to one of these machines without coax, but with a Hauppauge card, and start Hauppauge WinTV, the program doesn't show me a list of channels to choose from, because I never setup the local tuner.  For that matter, if I start MC25 and load the local library, and click "Television" it shows an empty channel list. That is all fine. The issue is when one MC connects to a remote server, which has tuners, and a list of TV channels, and then tries to re-use that remote channel list with the local tuner, even though TV setup was never run locally. MC should know the local channel list is empty because setup was never run, and thus it should not even try to use the local tuner, IMO.
Even if you want to make the argument that MC should try the local tuner in that case, should things really end with "unable to lock" error message after I double-click a channel in MC ? Maybe MC could inform the user that the local tuner is having issues, and perhaps offer to disable the local tuner, especially if the TV setup was never run on it ?  Or offer to use the remote tuner ?


Quote
.  MC will always try to use a local tuner for live viewing (i.e. you double-clicking on a given channel, or clicking "Watch" button after selecting a channel).  MC will ask the server to serve a channel only if it can not find a suitable tuner on the client.  You need to hook up an antenna to that tuner if you want to use it.  Otherwise you can just completely rely on the 5 tuners on the server, but let MC on the client machine ignore the single tuner that does not have an antenna.  The way to do that is to run "Manage Devices" on the client and select the tuner, and click "Configure...".  You then select "Disabled" from the drop down "Tuner Type" list

That did work, thanks, but I would never have figured this out on my own.

Quote
Since you have a tuner on the client, why not use it? 

Because I couldn't purchase a single hardware card from Hauppauge that did capture only. It had both features in one package. There is no way at the OS/driver level to disable only the tuner hardware, but keep only the capture part active. If there was, I would certainly have done so.
My counter-arguments are :
- MC doesn't try to use a local tuner if connected to a local library. Same as Hauppauge WinTV
- if one has a local tuner and wanted to use it, it would be fairly obvious for a user to know that they have to run setup on it. Whereas having to explicitly disable a tuner that one never wanted to use in the first place is far more complicated and rather non-obvious, and apparently has caused me to be unable to share my tuners over my local network for years ...

Quote
The channels scanned on the server are "ATSC" channels and they should be playable from any computer that has an ATSC tuner.  The second reason for using the local tuner is to reduce network load - when you do have a tuner locally, why bother going to the server with all that network load.

Don't assume that is always what's intended. Surely it is possible for MC to detect that the local ATSC tuner has never been setup by the user in MC, and never use the tuner until it is setup. Never having setup the tuner should be a sufficient hint that the user does not want to use that tuner. Offer the option to set it up, if it has not been setup yet.

There might also be a software way to detect that nothing is actually hooked up to the local tuner automatically, so that MC can skip it and go straight to server.

The assumptions that one wants to :
a) save tuners
b) save network bandwidth

Are of course completely untrue in my case. My MC server has 5 tuners. And I have at least 10 Gb/s of full-duplex bandwidth on each of the MC server and MC client end. And my network is setup such that I have ample bandwidth, even on wireless, to stream at least one HD channel, and probably far more. No iperf result has come up under 100 Mbps on wireless. The only thing that comes in (well!) below that is the powerline AV1200, which is use only for some very low-bandwidth devices, or for WOL, since wireless WOL doesn't actually work with any of my wireless NICs (WOL option not even available in wireless NIC drivers).

I suspect many others have local networks that have ample bandwidth for ATSC streams. I have been on gigabit LAN at home since 2004, or 15 years ago. I only recently switching to 10 Gigabit LAN at home - upgrade started in December and mostly done as of last week. Wireless N is capable of 1 ATSC stream at least, and often multiple streams. That's been ratified as a spec since 2009, 10 years ago. Wireless AC is from 2013 and can provide real world bandwidth of 400 Mbps or more, enough for >20 ATSC streams.

Quote
Since you have many tuners on the server, you probably do not care about "conserving" tuners (some people do care about it, even with more tuners than you have).  Like I said above, you can hook up an antenna to the tuner on the client, or disable the tuner.

Right, I do not care about conserving tuners on the server at all. Hooking up an antenna on the client is not a good option. That involves having to run coax to multiple places, probably >300 ft, and multiple signal splitter or amps.
We had the discussion about disabling the tuner above, multiple times. I think MC can do much better in this case.
Logged

madbrain

  • Galactic Citizen
  • ****
  • Posts: 308
Re: NEW: Television tuners on clients are allowed to be used for recording
« Reply #53 on: April 01, 2019, 11:28:21 am »

I suspect many others have local networks that have ample bandwidth for ATSC streams. I have been on gigabit LAN at home since 2004, or 15 years ago. I only recently switching to 10 Gigabit LAN at home - upgrade started in December and mostly done as of last week. Wireless N is capable of 1 ATSC stream at least, and often multiple streams. That's been ratified as a spec since 2009, 10 years ago. Wireless AC is from 2013 and can provide real world bandwidth of 400 Mbps or more, enough for >20 ATSC streams.

To add to the question of "why not use a local tuner" :

If one is sharing their MC library and OTA TV tuners over a slower WAN (ie. Internet / VPN) rather than LAN, then one would likely want to conserve bandwidth indeed. I have not tried this myself yet

However, in that particular case, if the client has a local tuner, it's very unlikely that you would be able to actually use it, since the client might be located in a completely different geographic area than the server. Even if the local tuner is actually setup with an antenna hooked up, that local tuner is much less likely to be able to access the same OTA channels as the server's tuners. Therefore, I think there are not many situations in which you actually want to use the local tuner when connected to a remote library.

Those situations would be mainly :
1) if the local tuner was ever setup by the user in MC, ie. has a non-empty channel list
2) only for channels that exist both in the local tuner's channel list, and the remote server's channel list
At that point, I agree that it makes sense to use it.
But for channels only on the server's tuners channel list, only the server's tuner should be used.
And for channels only on the local tuner's channel list, only the local tuner should be used.

As a sidenote, any single tuner might have a different channel list, whether on the client or server. MC asks me to provide the zip code and area for every single one of the 5 tuners on my HTPC during TV setup. I find that mildly annoying, given that all 5 tuners have coax coming from the same OTA amplifier, and all have the same channels on each one of them. But I understand other users might have 5 different OTA antennas pointed in different places, and thus for those, asking 5 times make sense. It's not always possible to have a single antenna, and merging multiple antenna signals into a single common coax can be problematic for the signal. Perhaps there could be an option in MC somehow to tell it that all the tuners have the same layout, to avoid being prompted so many times. Maybe some sort of question along the lines of "do you have multiple TV antennas connected to this machine's tuners, or just one ?" in the TV setup wizard, perhaps, if the machine has more than one tuner.
What does all this have to do with the remote connection ? Well, if one does have, say, 5 remote tuners and 1 local tuner, each with a different OTA antenna and different channel list, then MC on the client would have to select the correct one of the 6 tuners that actually features the particular channel when double-clicking on that channel. My setup is fortunately not that complex that it requires this level of granularity, but other users setups might.
Logged

Yaobing

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10949
  • Dogs of the world unite!
Re: NEW: Television tuners on clients are allowed to be used for recording
« Reply #54 on: April 01, 2019, 01:34:32 pm »

Thank you for your inputs.

The current implementation was the result of users' request.  For the future perhaps when a client has never been used for TV in the past, we can pop up a question and ask the user whether the local tuner should be used.
Logged
Yaobing Deng, JRiver Media Center

madbrain

  • Galactic Citizen
  • ****
  • Posts: 308
Re: NEW: Television tuners on clients are allowed to be used for recording
« Reply #55 on: April 01, 2019, 01:51:36 pm »

Thank you for your inputs.

The current implementation was the result of users' request.  For the future perhaps when a client has never been used for TV in the past, we can pop up a question and ask the user whether the local tuner should be used.

Thanks. I can certainly understand users have different needs. Such a question would work fine if initial tuner setup was never done.

Julien
Logged

Osho

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1213

I haven't read the whole thread. But, Thank You! I have been waiting for this for *years*.

I assume this requires both server and client to use MC25?

Osho
Logged

Yaobing

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10949
  • Dogs of the world unite!

I haven't read the whole thread. But, Thank You! I have been waiting for this for *years*.

I assume this requires both server and client to use MC25?

Osho

Yes
Logged
Yaobing Deng, JRiver Media Center
Pages: 1 [2]   Go Up