Beiträge von manxie

    Diese Fernbedienung mit USB Empfänger hat ja das Problem, dass “nicht alle Tasten funktionieren”.

    Sie funktionieren schon, werden aber nur als hid-events empfangen. Sie tauchen z.B. nicht bei evtest oder X auf.


    Es gibt ein verwaistes Projekt auf GitHub (hid_mapper), das ich mit Patches auf Stand gebracht habe.

    Es ist jetzt in Form eines arch-linux PKGBUILD bei GitHub verfügbar: https://github.com/fcringle/hid-mapper-pkg .


    Durch diese neue Version funktionieren alle Tasten und können für VDR benutzt werden.

    Auch power und sleep können von VDR ausgewertet werden.


    Code
    $ git clone https://github.com/fcringle/hid-mapper-pkg
    $ cd hid-mapper-pkg/
    $ makepkg -i

    Hoffentlich ist es für nützlich. Ich habe die FB mit Empfänger bei Pollin für 2,50€ (+5,99 Versand - hmmm) gekauft.


    Frank

    I agree with hepi. I have been a happy eepg user for more than a year, watching (among others) the BBC HD channels.


    Code
    :BBC
    BBC One HD;BSkyB:10847:vC23M5O35S1:S28.2E:23000:5400=27:5402=NAR@3;5401=eng@106:5403;5404=eng:0:6941:2:2050:0
    BBC Two HD;BSkyB:10847:vC23M5O35S1:S28.2E:23000:5500=27:5502=NAR@3;5501=eng@106:5503;5504=eng:0:6940:2:2050:0
    BBC One N West;BSkyB:10802:hC56M2O35S0:S28.2E:22000:5700=2:5701=eng@3:5703;5704=eng:0:6441:2:2047:0
    BBC R4 FM;BSkyB:10788:vC56M2O35S0:S28.2E:22000:0:6002=eng@3:0:0:10381:2:2046:0
    BBC Three HD;BSkyB:10847:VC23M5O25P0S1:S28.2E:23000:5600=27:5602=NAR@3;5601=eng@106:5603;5604=eng:0:6951:2:2050:0
    BBC Four HD;BSkyB:11023:HC23M5O25P0S1:S28.2E:23000:5300=27:5302=NAR@3;5301=eng@106:5303;5304=eng:0:8931:2:2061:0
    BBC NEWS HD;BSkyB:11023:hC23M5O35S1:S28.2E:23000:5000=27:0;5001=eng@106:5003;5004=eng:0:8921:2:2061:0
    BBC Parliament;BSkyB:10788:vC56M2O35S0:S28.2E:22000:5100=2:5101=eng@3:5103;5104=eng:0:10307:2:2046:0
    BBC World;BBC:11597:vC56M2O35S0:S19.2E:22000:163=2:92=eng@3:0:0:10050:1:1026:0

    Yes. It is a while since I set it up. Presumably "epgscan set to 0" is EPGScanTimeout...


    Code
    vdr ~ # grep ^EPG /etc/vdr/setup.conf
    EPGBugfixLevel = 3
    EPGLanguages = eng
    EPGLinger = 0
    EPGScanTimeout = 0


    I also have channels.conf sorted by sat position, except for a few channels at the beginning that I watch. And in fact those positions will usually be scanned by my satip tuner. So, 6am vdr wakes up, tunes to BBC R4, and the remaining tuners start scanning for epg data.

    Hier eine kleine Korrektur eines Log-Messages...


    OK, here is a "works for me" patch. The idea is to create devices on demand, after discovery, and assign them a fixed type (sat/ter/cab). I have disabled the logic by which servers are removed and rediscovered. A server can check in but it can't check out.


    I am an old C hacker with limited C++ competence (practically none), so if want to use this, feel free, but check it out carefully.

    This thread appears to be dormant, but the problem still exists. At least for systems with directly connected dvbdevices and mixed satip dvb-s/dvb-t tuners. vdr overcommits the tuners, leading to "invalid status code 404". The system knows the number of tuners, but it doesn't keep track of their capabilities at the right time. The satip plugin returns 'true' from ProvidesSource indiscriminately. If devices were preassigned as dvb-s/dvb-t/dvb-c (on the basis of the number of each type in the server(s)), ProvidesSource could provide accurate information. As I understand it, the devices are initialized after discovery, so rather than creating 'deviceCount' general purpose devices, it should be possible to create a suitable number of each, marked with a 'tunerType' property (S|T|C), which would later be evaluated in ProvidesSource.


    With this strategy the plugin parameters -d and -S would become redundant. The default would be to use every discovered device. The -s parameter can be used, as at present, to restrict certain server devices. The plugin should avoid creating "phantom" devices. If a server announces "DVBT2-2", that means 2 DVB-T2 devices, which may well be able to receive DVB-T also, but it is still only 2 devices, not 4. For cases such as OctopusNet terrestrial/cable cards, which announce "DVBT2-2,DVBC-2" for 2 tuners, the user must specify, in the -s parameter, what is connected to the 2 inputs.

    Zitat

    Thanks for your latest info. I'm now able to reproduce the problem on my system.

    Great!


    I hesitate to wish for another extension while you are still working on this topic, but it is somewhat related. Given a VDR system with SAT>IP server(s) receiving fixed sources, along with a directly connected dvb device with a H-to-H positioner, the current number of disabled sources is insufficient and inconvenient. It is not feasible to store 30 positions in satip.DisabledSources, even if the array size were extended (I assume that there is a limit on setup line length). So, for those with positioners, how about recognizing src=0 in sources.conf as disabling that position from satip, while leaving it available for other devices?

    Zitat

    Could you verify that you'll end up using 2 servers?

    Code
    Jan 15 11:11:45 vdr vdr[5203]: [5203] VDR version 2.1.6 started
    Jan 15 11:11:45 vdr vdr[5203]: [5203] SATIP: Adding server '192.168.38.73|DVBS2-2|OctopusNet #0'
    Jan 15 11:11:45 vdr vdr[5203]: [5203] SATIP: Adding server '192.168.38.73|DVBT2-2|OctopusNet #1'


    For simplicity I have now removed the USB device, so only the Octopus sever is involved. Here is a test with channel 1 tuned, timers set for channel 7 and channel 100 (all satellite).


    The attached trace extracted by

    Code
    fdc@vdr ~ $ journalctl --since=11:10 | grep -v 'CloseFilter\|SetPid\|vdpau\|video\|audio\|codec\|softhddev'


    The exact same test with satip started with '--plugin=satip -d 2 -s 192.168.38.73|DVBS2-2|OctopusNet' succeeds. Channels 7 and 100 are recorded and live TV gets preempted to channel 100.

    Thanks rofafor.


    It still fails, I am afraid. The attached trace has this device configuration:


    new device number 1
    frontend 0/0 provides DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard")
    new device number 4
    SATIP: Creating device CardIndex=3 DeviceNumber=3 [device 0]
    new device number 5
    SATIP: Creating device CardIndex=4 DeviceNumber=4 [device 1]
    new device number 6
    SATIP: Creating device CardIndex=5 DeviceNumber=5 [device 2]
    new device number 7
    SATIP: Creating device CardIndex=6 DeviceNumber=6 [device 3]


    The default channel is Sat-Radio 4. The Test sets live Sat-TV on channel 1 and
    schedules recording of Sat channel 7, Terrestrial channel 501 and Sat channel 100 (which are all on different transponders). I imagine vdr/satip in this situation should leave live TV on the tuned satip device, schedule recordings on the other sat tuner and a terrestrial tuner, and let vdr use the low-priority directly connected frontend for the remaining recording.


    I noticed a couple of minor bugs. When parsing satip.DisabledSources from the setup file, if more then one is disabled, only the first survives. It is subtle, because if you set 2 sources via osd it looks right initially and also after a restart. After the 2nd restart only one is still there. It is due to scribbling over the setup line, that vdr will write back on shutdown. There are a bunch of similar occurrences which may also cause problems (beware casts!). "fgrep -s '(char *)' *"


    In cSatipServer::cSatipServer, when parsing modelM, you need to use "else if (strstr(r, "DVBT"))" etc., otherwise DVBT2 is counted twice (similarly DVBC2).


    A cosmetic fix: s/GetHeaderLenght/GetHeaderLength/g


    I still think it would be preferable, and indeed actually necessary, to let the user specify how many of which type of tuner to use. Something like '--plugin=satip --SatTuners=2 --TerrTuners=2". At the moment, even if the current method can be made to work, I don't see how to reserve a specific number of a specific type (i.e use fewer than are actually available).

    Comparing the two traces in messages 11 and 13, it seems that the wrong decision is made in trace 1 starting at 'Jan 05 11:10:00'. That is when vdr starts to prepare for the recordings that will start a minute later. ProvidesTransponder and ProvidesSource claim to be able to provide 'transponder=210847 source=S' (which is BBC 1 HD via Satellite 28.2) on any of the 4 devices. Unfortunately, that is only going to work for the first two.


    Given that the capabilities of the tuners are known to the plugin, maybe it's just a "small matter of programming" to extend it (hint).

    Well, I am not familiar with the protocol.


    Some info I forgot to provide with the previous trace, namely the timer settings:



    Now I have done the same test, but with disabled DVB-T tuners, where everything works as planned.



    And the good trace is attached.

    fnu


    The requirements are ok.



    Code
    fdc@vdr ~ $ cave owner /usr/lib64/libcurl.so.4
    net-misc/curl-7.39.0::installed
    fdc@vdr ~ $ cave owner /usr/lib64/libpugixml.so.1
    dev-libs/pugixml-1.5::installed


    rofafor


    I will reset the OctopusNet tomorrow and continue testing.

    Zitat

    Any info about the timers?

    I generate 3 timers, for the 3 available sat tuners (2 on Octopus, 1 direct), with this script.



    Channel 1 is BBC 1 HD, 2 is ITV HD and 3 is Das Erste.


    It works as expected with the terrestrials disabled, but chaos ensues with them enabled.


    As in:

    I'm not using radio id.


    Situation before a recording:



    and during the recording:



    Just to clarify the device numbers:

    Code
    new device number 1
    frontend 0/0 provides DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard")


    Code
    initializing plugin: softhddevice (0.6.1rc1-GIT9f134c1): A software and GPU emulated HD device
    new device number 2


    Code
    initializing plugin: play (0.0.14-GIT8035264): A play plugin
    new device number 3


    Code
    initializing plugin: satip (1.0.0): SAT>IP Devices
    ERROR (thread.c,227): Permission denied
    new device number 4
    SATIP: Creating device CardIndex=3 DeviceNumber=3 [device 0]
    SATIP#0 tuner thread started (pid=369, tid=406, prio=high)


    Code
    new device number 5
    SATIP: Creating device CardIndex=4 DeviceNumber=4 [device 1]
    SATIP#1 tuner thread started (pid=369, tid=409, prio=high)


    Code
    new device number 6
    SATIP: Creating device CardIndex=5 DeviceNumber=5 [device 2]
    SATIP#2 tuner thread started (pid=369, tid=412, prio=high)


    Code
    new device number 7
    SATIP: Creating device CardIndex=6 DeviceNumber=6 [device 3]
    SATIP#3 tuner thread started (pid=369, tid=415, prio=high)


    And other random data:

    Code
    Linux version 3.18.1-gentoo (root@vdr) (gcc version 4.8.3 (Gentoo 4.8.3 p1.1, pie-0.5.9) ) #1 SMP Wed Dec 17 16:19:22 CET 2014


    Code
    VDR version 2.1.6 started


    Code
    OctopusNet 1.0.40 BETA

    Many thanks to rofafor for the plugin!


    I have an OctopusNet with two DVB-S/S2 tuners and two DVB-C/T/T2 tuners. The satellite signals come from twin LNBs and the terrestrial signals from a normal DVB-T antenna. And for added complexity there is a single LNB on a rotor feeding a USB tuner.


    I give the OctopusNet high priority, so the rotor is only used when no other sat-tuner is available.


    Unfortunately this configuration fails, in particular when programmed timers kick in. Clearly no more than 3 DVB-S and/or 2 DVB-T simultaneous recordings are possible, but I am seeing effects where even the second DVB-S recording get assigned to a DVB-T tuner, apparently.


    So I have changed "--plugin=satip -d 4" to -d 2 and set satip.DisabledSources=T, thus disabling DVB-T reception. But it would be great to be able to use all of the tuners. I would be pleased to help with debugging and apologise if there is some configuration option that has escaped me.