Canadian TV, Computing and Home Theatre Forums banner

Bottleneck in Network PVR?

1K views 3 replies 4 participants last post by  majortom 
#1 ·
We've always had a single device to do everything in our house. Right now here is the system we have that works great: a single raspberry pi 3 B+ with a Hauppauge 1578 USB tuner, a usb hard drive for recordings and tvheadend server for PVR... It works well but the kids are getting older and we want to have our tvheadend server on a separate device so we can stream from the PVR to another networked TV in the basement.

So I set this system up yesterday for trials:
PVR & Live TV device/server - raspberry pi 2 b+ with hauppauge 1578 tuner and tvheadend server and usb hard drive.
front end - raspberry pi 3 b+ with kodi for the frontend.
- router is TP-Link with 100 Gbps rating

But live TV would keep buffering every 10 seconds... recordings were choppy

So I'm wondering where the bottleneck might be?
- router?
- ethernet ports on the raspberry pi's?
- elsewhere?

I'm hoping someone else has a similar system set up successfully for OTA and can recommend what I need to replace, thanks for reading!
 
See less See more
#2 ·
From the description, it appears that the RP2 could be the issue. It may be unable to handle the TV stream. Could there be power issues affecting the tuner or drive?

In my experience, USB 2.0 drives can be a bottleneck with more than one uncompressed TV stream.

Since it was working well, I would move the PVR and TV tuner back to the RP3, same as the previous config. Since it was working well, I see no reason to change it. Would the RP2 work as the front end? Is a front end even needed?

More viewers will require more tuners. A networked TV tuner such as a HDHomeRun or similar device will accomplish that. It would add two tuners for about the same price as an extra RPx plus single USB tuner.

Expanding the setup may require something a more powerful than a Raspberry Pi device. I've always used a lightweight PC.
 
#4 ·
You aren't doing anything with heavy streams receiving OTA TV signals, here I play with rpi
and satellite signals too, which can be way more bandwidth heavy than any OTA TV signal. eg - OTA TV raw bitrate over the air 19.3 mbps for the mux. A Satellite TV mux of 70-80 mbps is quite common.

The biggest expense your doing resource wise with the device is the playback of HD video.
On the client side (ur frontend), when using hw decoding for mpeg2, should be consuming hardly any cpu resources when playing back a video stream in comparison to sw decoding, so check that on both ends of your setups before making such changes to evaluate the differences in topology. If CPU util is extremely high when playing a simple OTA mpeg2 hdtv signal, you might need to enable hw decoding on the client.
Or is possible the program you are using to playback isn't capable of or isn't set to use the pi's hw decoding. If relying on sw decoding, I wouldn't use a rpi of any generation for the playback side of it. On a pi HD video Playback will only be reliable when using hw decoding, no matter what the source is.

For kicks I would also try flipping the existing pi hardware around. Try the pi3b+ as the server and the older pi2 as the client. Assuming that u have the mpeg decoding license for each device. Either one should be able to handle playback of mpeg2 video with little CPU util once configured for hw decoding. Which pretty much limits you to omxplayer as the video player though. Unless...

Have had some good results when using ffmpeg-mmal
https://aur.archlinux.org/packages/ffmpeg-mmal/
remove any existing pre compiled repo provided ffmpeg first, compile ffmpeg with --mmal enabled, install that, then compile your video playback applications, tvheadend, etc from source so that they are linked to ffmpeg-mmal u just compiled / installed. That should allow hw accel options... Works pretty well for me with mpv as the player at least, and doesn't require the mpeg2 license.

I wouldn't try to use any transcoding on the tvheadend server side either, as the PI won't be very good at it, since would all be in SW.
I don't have a pi4 yet so can't comment on how well it's progressing.

They have come a long way with Intel based fanless Low Power mini-itx MBs that would be way better than a RPi performance wise,
and won't consume a ton of power. I have an older one here (AsRock J3355M based) for the wife's desktop, it's extremely quiet having no CPU fans, and if I remember correctly, draws only around 20 to 30 Watts from the wall when compiling the linux kernel. I can live with that, but can imagine they are even better nowadays.

edit: Threw wife's desktop back on the kill-a-watt, and kicked off compiling linux kernel 5.4.0-rc1
It was consuming 20-25 watts from the wall sitting idle, and 30w while compiling the kernel with 'make -j4'
When I bought the MB, I had meant to buy the AsRock Q1900M, but pulled trigger on this one instead for some reason.
 
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top