Sat>IP support

I mainly tested 4 channels
Sky News SD 1-2 seconds
BBC News HD 2-3 seconds
BBC One HD 7-8 seconds
CNN HD freezing issue

Just tested on Apple TV 4K stable. Will keep trying.

At least with rtsp:// and satip:// Channels spawns an ffmpeg instance, I was going to have a play with the various options there to see if it sees the same latency/delay.

UPDATE:
I think the delay is coming from ffmpeg - if I run a basic test using the channels ffmpeg binary, it's around 7-8 seconds with BBC One HD before I see the "frame" in the log, i.e it's playing.

Testing with the same link in VLC, it starts playing within around 3-4 seconds - which is more or less the same as what I see when using TVHeadend -> Channels.

There are a variety of warnings/errors spat out from ffmpeg, although this was just a basic test (I'm not yet using the exact arguments that channels launches ffmpeg with, so it's not a like for like).

I need to do some research to see what these mean. Perhaps TVHeadend/VLC is more tolerant, or simply ignores, the errors or perceived 'dirty' stream?

[h264 @ 0x69b2f40] co located POCs unavailable
[h264 @ 0x7025fc0] reference picture missing during reorder
[h264 @ 0x7025fc0] Missing reference picture, default is 65724
[h264 @ 0x69b2f40] reference picture missing during reorder
    Last message repeated 1 times
[h264 @ 0x69b2f40] Missing reference picture, default is 65740
    Last message repeated 1 times
[h264 @ 0x695ad40] Missing reference picture, default is 65743
[h264 @ 0x7025fc0] mmco: unref short failure
[h264 @ 0x69b2f40] Reference 2 >= 2
[h264 @ 0x69b2f40] error while decoding MB 76 18, bytestream 4749
[h264 @ 0x69b2f40] concealing 5973 DC, 5973 AC, 5973 MV errors in B frame
[h264 @ 0x695ad40] co located POCs unavailable
[h264 @ 0x695ad40] concealing 7909 DC, 7909 AC, 7909 MV errors in B frame
[h264 @ 0x7028cc0] co located POCs unavailable
[h264 @ 0x7028cc0] concealing 7112 DC, 7112 AC, 7112 MV errors in B frame
[h264 @ 0x6a15cc0] co located POCs unavailable
[ac3 @ 0x6977800] exponent -2 is out-of-range
[ac3 @ 0x6977800] error decoding the audio block
Error while decoding stream #0:0: Error number -16976906 occurred
[h264 @ 0x7025fc0] error while decoding MB 36 16, bytestream -16
[h264 @ 0x7025fc0] concealing 6253 DC, 6253 AC, 6253 MV errors in B frame
[h264 @ 0x69b2f40] Reference 3 >= 2
[h264 @ 0x69b2f40] error while decoding MB 118 6, bytestream 1549
[h264 @ 0x69b2f40] concealing 7371 DC, 7371 AC, 7371 MV errors in B frame
[h264 @ 0x695ad40] concealing 7676 DC, 7676 AC, 7676 MV errors in B frame
[h264 @ 0x7025fc0] reference picture missing during reorder
    Last message repeated 1 times
[h264 @ 0x7025fc0] Missing reference picture, default is 66028
    Last message repeated 1 times
[h264 @ 0x7025fc0] Reference 2 >= 2
[h264 @ 0x7025fc0] error while decoding MB 49 0, bytestream 21350
[h264 @ 0x7025fc0] Cannot use next picture in error concealment
[h264 @ 0x7025fc0] concealing 8160 DC, 8160 AC, 8160 MV errors in P frame
1 Like

Seems similar to telly. Loads 1-2 seconds in VLC, avg 5-6 seconds on telly through ffmpeg

Oh that's a good way to test, didn't think of that - although, with Telly, you don't actually need to use ffmpeg for Sat>IP - or I didn't.

I've gone back to TVheadend first for now, and exporting the m3u to Channels, I built a hugely stripped down version of TVheadend, which (I'm not entirely sure why) has more or less removed the 'bursts' of uncorrected errors that I had been seeing recently (along with fiddling with CPU frequency scaling).

Came across something on the MythTV site, that seems to offer some hope/area for further investigation:

https://code.mythtv.org/trac/ticket/13121#comment:47

"inefficient/slow due to buffering all received input data"

"Next step is that the SatIP implementation will be restructured along the lines of how the HDHomeRun support is implemented. This is a comparable device, with four independent tuners and use of UDP packets for the video streaming. The HDHomeRun works OK with only a 1Mbyte UDP input buffer (instead of 8Mbyte) and it does not do extra buffering at the input. The current SatIP implementation is largely inspired by how it is done for Ceton and IPTV."

1 Like

That’s good info. I notice when I go to “show stats” SAT-IP channels show a buffer corresponding to the length it takes to tune where the HD Home Run channels have little or no buffer.

I had a go at TVheadend but just found it too complicated for me. I would ideally like as little layers as possible. I can live with the slightly longer buffer times with telly but hopefully in the future remove the need for telly and using a custom direct m3u.

For me using telly I needed ffmpeg enabled to get it working using direct URL’s from my Digibit R1.

A post was split to a new topic: SAT IP Help

Did you manage to progress with the Digibit? I had it working on the Kathrein 418 but can’t get it working on Channels with the Digibit. I can only get rtsp working and not http. Despite all working in VLC

Unfortunately no. Tried again last week and same issues as before. I will stick with Telly for a while longer and revisit it again.

Its strange because at one point I had it working, and now I cannot re-trace the steps. Not sure if I used the Digibit supplied M3U rather than my own now!

What I cannot get working even over RTSP is more than one stream at once. It's a shame because the Kathrein I was using works perfectly but with my specific sat setup I cannot get all the channels, the Digibit finds all the channels using a single cable.

I have no experience of either of these boxes, but saw something similar when I was setting up my MEG-8000 years ago.

On the Sat>IP server, under the LNB setup, it was set to Quattro - as I don't have a Quattro LNB, it only only showed some channels in a narrow band.

If you only have 1 feed, and there are LNB options on your Sat>IP server, if your box has something like 'One user per RF' this would be the option to enable.

UPDATE: Had a quick look at the manual, bored, ha, just in case:

  1. Connect RF1 input to a single-cable multi-switch or single-cable LNB.
    ......
  2. Set OneCable in the web interface for LNB Settings; see “Operating the Web Interface”

.... oh, ignore me, I see you already have that...should have checked previous posts in this thread, I see the screenshot. Although you do say in that post 'At the moment I'm using the Quattro setup', but the screenshot shows OneCable - if you have 1 cable only, this is the option I think :slight_smile:

Thanks. Actually I've got it set to Quad with one single-cable. I think on the Digibit if you've got one LNB thats the advice. It finds all the channels. This did not work on the Kathrein 418, with same settings it didn't serve all the channels.

My current issue is getting it to work over HTTP (only works over RTSP from Channels whereas it works over satip, http or rtsp from VLC).

seems turning off automatic LNB selection improved the concurrent channels...

My rather basic understanding of how my box works, is that if you set either Quad or Quattro you MUST have 4 cables. Perhaps your box that only finds some channels, operates the same as mine, but the other doesn't.

If you only have 1 cable, or even 2-3 for my box, you have to set 'One user per RF' - and connect them to specific ports - OneCable is the equivalent on your box I think.

When either Quad or Quattro are set 4 cables are required, with Quattro the LNB has hardware filters, when you set Quad the filtering is done in software instead - to achieve:

  • Low Band – Horizontal Polarization
  • High Band – Horizontal Polarization
  • Low Band – Vertical Polarization
  • High Band – Vertical Polarization

So, potentially, if you have 1 cable and set Quad, it will only receive part (25%) of the signal - because it is applying a software filter, to receive 1 of the above 4.

Although this actually isn't my issue today (the issue is being able to serve Channels using http rather than rtsp to speed up channel selection...)... I can get all the channels on Freesat using Quad/single cable on the Digibit R1. On the Kathrein I did only get a subset of channels. On the R1, if I select Unicable (guess equivalent of OneCable) I don't get anything (and its plugged into port 1 as per the instructions).

Quad:
Select "Quad" if a Quad LNB, Single LNB, Twin LNB, Monoblock LNB, Octo LNB or Universal multiswitch is connected to your SAT>IP Server.

  • Quattro:
    Select "Quattro" if a Quattro LNB is connected to your SAT>IP Server directly. You need to connect all the 4 satellite inputs on the SAT>IP Server according to the marking on the rear panel.*
    Unicable:
    Select "Unicable" if a Unicable LNB or Unicable multiswitch is connected to your SAT>IP Server. Additionally, you need to select the user band you want to use and enter a respective user band frequency. Please connect the satellite cable to the rear panel input marked with Unicable.*
    Unicable II/dCSS:
    Select "Unicable II/dCSS" if a Unicable II or dCSS LNB or multiswitch is connected to your SAT>IP Server. Additionally, you need to select the user band you want to use and enter a respective user band frequency. Please connect the satellite cable to the rear panel input marked with Unicable.

I shall have to defer to the others on HTTP, I prefer my streaming to be over RTSP/UDP.

On the Digitbit, Quad would be the right setting based on your last post. 1 cable, is basically a Single LNB. A Quad LNB, is basically 4 x Single LNBs. Quattro and Unicable are specialised LNBs.

On the Kathrein, I suspect 'One Cable' would resolve your problem.

Thanks. I'll check out the One Cable option on the Kathrein as I cannot recall it now.

Just done a bit more research, your Kathrein EXIP 418 box is pretty similar to my Megasat 3 - it has 8 tuners as far as I can tell, the Digibit R1 has 4 tuners.

To record from 8 Mux at once, i.e 8 tuners with only 4 cables, you need 4 cables with either a Quad or Quattro LNB. This allows the box to receive:

  • Low Band – Horizontal Polarization
  • High Band – Horizontal Polarization
  • Low Band – Vertical Polarization
  • High Band – Vertical Polarization

With the above 4 feeds, it can allow 8 mux to be recorded/tuned at once with the 8 tuners and only 4 cables (because it can cover all of the frequency needed). It can do this via a Quattro LNB, which has dedicated ports for each of the above 4, or with a Quad LNB - with a Quad LNB, it applies filters to the 4 feeds, to mimic a Quattro LNB... thereby allowing 8 tuners, with only 4 cables.

I suspect the Digitbit R1 doesn't do any of this more complex 'multiplexing' - if you give it 4 cables, it will tune 1 per cable, or per LNB.

This is strange, because on the Kathrein, I used Quad, one single cable and was able to utilise all 8 tuners. Obviously not getting all the channels as I explained previously. Just tested the Digibit, have tested three streams at same time and it works (VLC + Channels)

On the other topic (trying http or satip) I'm getting an error if I use satip:// in the M3U file. Channels or the Digibit seem to be duplicating the request i.e. satip://satip:// !

ffmpeg: rtsp-101: satip://satip://192.168.0.5/?src=1&freq=10847&pol=v&ro=0.25&msys=dvbs2&mtype=8psk&plts=off&sr=23000&fec=34&pids=0,1,16,17,260,5400,5401,5402,5403: Invalid argument

M3U file is:

#EXTINF: -1 tvg-id="BBC1LDH" tvg-chno="101", BBC One HD
satip://192.168.0.5/?src=1&freq=10847&pol=v&ro=0.25&msys=dvbs2&mtype=8psk&plts=off&sr=23000&fec=34&pids=0,1,16,17,260,5400,5401,5402,5403

However, when I replace the dish, I'll get a Quad LNB installed.

Yes, because all those 8 channels you could record, would have come via 1 of the 4 bands above.

The 2 boxes work differently and treat the 'Quad' setting completely differently. The R1 treats it as 4 x single LNBs, the Kathrein mimics a Quattro LNB, when you set Quad, so requires 4 cables in this mode. Would be my hunch, anyway.

Ah got it ! Yes it would make sense!