Giter Site home page Giter Site logo

Comments (8)

9000h avatar 9000h commented on July 25, 2024

Hi,
now you have a second Ethernet link so it could be also network related.
CU
9000h

from vdr-plugin-satip.

pp0815 avatar pp0815 commented on July 25, 2024

I don't think so. Wireshark shows no errors at all, and the switch (D-Link DGS-1210-24) is not the problem.

from vdr-plugin-satip.

pp0815 avatar pp0815 commented on July 25, 2024

It would be great to get a quirk for "always use a new frontend regardless of the transponder". I looked for this in the code to fix it, but it's too complex for me, sorry.

I think it's a problem in the firmware (1). The quirk would be a very helpful workaround, because selfsat's current behavior sucks.


(1) See also https://tvheadend.org/boards/4/topics/18253

from vdr-plugin-satip.

Karl-opec avatar Karl-opec commented on July 25, 2024

This might also be related. The megasat 8000 satip3 server seams to be based on the same design.

tvheadend/tvheadend#882 (comment)

from vdr-plugin-satip.

rofafor avatar rofafor commented on July 25, 2024

@pp0815, you could add a simple return Receiving(); line before the if Receiving()) block found at https://github.com/rofafor/vdr-plugin-satip/blob/master/device.c#L285. That should do trick, but it has been a long time when I touched that part of the code and therefore might have overlooked something...

from vdr-plugin-satip.

pp0815 avatar pp0815 commented on July 25, 2024

@rofafor, thank you for your quick response.

# diff -u1 device.c device.c.patched 
--- device.c    2018-11-15 07:35:08.075341875 +0100
+++ device.c.patched    2018-11-15 07:34:45.343235069 +0100
@@ -284,2 +284,3 @@
      if (priorityP > IDLEPRIORITY) {
+        return Receiving(); 
         if (Receiving()) {

Sorry, no 2nd stream, even from another transponder. And sometimes (?!) no stream at all.

from vdr-plugin-satip.

pp0815 avatar pp0815 commented on July 25, 2024
# diff -c1 device.c.orig device.c
*** device.c.orig       2019-02-26 13:21:44.200104336 +0100
--- device.c    2019-02-26 12:50:52.402295958 +0100
***************
*** 285,286 ****
--- 285,287 ----
          if (Receiving()) {
+            return false;
             if (IsTunedToTransponder(channelP)) {

This is working as expected. :-)

from vdr-plugin-satip.

pp0815 avatar pp0815 commented on July 25, 2024

Better:

bool cSatipDevice::ProvidesChannel(const cChannel *channelP, int priorityP, bool *needsDetachReceiversP) const
{
  bool result = false;
  bool hasPriority = (priorityP == IDLEPRIORITY) || (priorityP > this->Priority());
  bool needsDetachReceivers = false;

  debug9("%s (%d, %d, %d) [device %u]", __PRETTY_FUNCTION__, channelP ? channelP->Number() : -1, priorityP, !!needsDetachReceiversP, deviceIndexM);

  if (channelP && ProvidesTransponder(channelP)) {
     result = hasPriority;
     if (priorityP > IDLEPRIORITY && Receiving()) {
        if (IsTunedToTransponder(channelP)) { // receiving
            result = false; // same transponder, different channels
            if (!(channelP->Vpid() && !HasPid(channelP->Vpid())
                || channelP->Apid(0) && !HasPid(channelP->Apid(0))
                || channelP->Dpid(0) && !HasPid(channelP->Dpid(0)))) result = true; // same channel
        }
        else { // not receiving, new transponder
            result = true; needsDetachReceivers = true; }
     }
  }
  if (needsDetachReceiversP)
     *needsDetachReceiversP = needsDetachReceivers;
  return result;
}

from vdr-plugin-satip.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.