Jump to content

Media Server won't release the hardware?


jirim100

Recommended Posts

At 2023-01-28 22:08 I catch this problem with version 3.2.3.1:

 

 

Two recording "Primo Levi" and "Abraham Lincoln" on different DVB-C frequencies. But only one start. The free second tuner "TT-Connect CT2 4650 DVB C" was not used. Why? MS won't release the hardware? I did rescan the hardware in MS, I check status both tuners in device manager but all seems ok.

 

I revert to version 3.2.0.1, but still only one recording start. 

Then I disconnect/connect both USB devices "TT-Connect CT2 4650 CI" and I did again "Scan hardware" in MS -> I noticed MS detect one of the device "TT-Connect CT2 4650 CI"  as "Professional DVB Digital TV C/T" tuner and this is probably the root of the problem. "Professional DVB Digital TV C/T" is device "DVBSky T330".  

 

In Device Manager both of the tuners "TT-Connect CT2 4650 CI"  works ok.

 

How to solve this problem with wrong detection of the tuner? Should I manually edit svchardware.xml?

 

In Device Manager has both devices "TT-connect CT2-4650 CI" the same VID and PID values, but only one of them was detected by the MS correctly.

 

image.png.3feb69d3af171e55dcf194fb85f49b71.png

 

support.zip

Edited by Griga
Title corrected
Link to comment

Maybe the second "cosmetic" problem:


Due to problems with detection one of these "TT-Connect CT2 4650 CI" devices I disabled in settings of MS two first tuners:

image.png.8f9cdae76064e6a848d2efec011b5012.png

 

but in the web interface is disabled only the first one:

image.thumb.png.4dfb12eac51fe5adb9e69b01bfd5dc2b.png

 

Link to comment

Svchardware after wrong detection (first two devices are wrong detected):

Spoiler
<?xml version="1.0" encoding="UTF-8"?>
<settings>
  <section name="@device:pnp:\\?\usb#vid_0b48&amp;pid_3015#20151107#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{f31bcf3b-9623-4937-8228-bd895ba00b00}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Professional DVB Digital TV DVB-T2 (13)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">0</entry>
    <entry name="InstID">Professional DVB Digital TV DVB-T2 12</entry>
    <entry name="DeviceNr">13</entry>
    <entry name="Vendor">32</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">255</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0b48&amp;pid_3015#20151107#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{f31bcf3b-9623-4937-8228-bd895ba00b60}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Professional DVB Digital TV DVB-C (14)</entry>
    <entry name="TunerType">0</entry>
    <entry name="Status">0</entry>
    <entry name="InstID">Professional DVB Digital TV DVB-C 13</entry>
    <entry name="DeviceNr">13</entry>
    <entry name="Vendor">32</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">2</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0b48&amp;pid_3015#6&amp;33ddd45&amp;0&amp;7#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{f31bcf3b-9623-4937-8228-bd895ba00b62}">
    <entry name="HasCI">1</entry>
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">TT-connect CT2_4650 DVB-C Tuner (2)</entry>
    <entry name="TunerType">0</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">TT-connect CT2_4650 DVB-C Tuner 1</entry>
    <entry name="DeviceNr">1</entry>
    <entry name="Vendor">32</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">2</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\dd_dvb#ven_dd01&amp;dev_000a&amp;subsys_0050dd01&amp;rev_00&amp;tuner#5&amp;530e5ab&amp;0&amp;2#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{8b884e63-fbca-11de-b16f-000000004d56}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Digital Devices DVB-T2 Tuner 4 (12)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Digital Devices DVB-T2 Tuner 4 11</entry>
    <entry name="DeviceNr">12</entry>
    <entry name="Vendor">19</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">64</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\dd_dvb#ven_dd01&amp;dev_000a&amp;subsys_0050dd01&amp;rev_00&amp;tuner#5&amp;530e5ab&amp;0&amp;2#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{8b884e61-fbca-11de-b16f-000000004d56}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Digital Devices DVB-T2 Tuner 2 (11)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Digital Devices DVB-T2 Tuner 2 10</entry>
    <entry name="DeviceNr">11</entry>
    <entry name="Vendor">19</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">64</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\dd_dvb#ven_dd01&amp;dev_000a&amp;subsys_0050dd01&amp;rev_00&amp;tuner#5&amp;530e5ab&amp;0&amp;2#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{8b884e62-fbca-11de-b16f-000000004d56}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Digital Devices DVB-T2 Tuner 3 (10)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Digital Devices DVB-T2 Tuner 3 9</entry>
    <entry name="DeviceNr">10</entry>
    <entry name="Vendor">19</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">64</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\dd_dvb#ven_dd01&amp;dev_000a&amp;subsys_0050dd01&amp;rev_00&amp;tuner#5&amp;530e5ab&amp;0&amp;2#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{8b884e60-fbca-11de-b16f-000000004d56}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Digital Devices DVB-T2 Tuner 1 (9)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Digital Devices DVB-T2 Tuner 1 8</entry>
    <entry name="DeviceNr">9</entry>
    <entry name="Vendor">19</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">64</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0ccd&amp;pid_10b2#7&amp;1c7b162&amp;0&amp;1#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{cacacefd-1b5f-49f4-af24-0ce559cc1e90}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Cinergy T2 Stick DVBC BDA Filter (3)</entry>
    <entry name="TunerType">0</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Cinergy T2 Stick DVBC BDA Filter 2</entry>
    <entry name="DeviceNr">3</entry>
    <entry name="Vendor">28</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">128</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0ccd&amp;pid_10b2#5&amp;15991065&amp;0&amp;10#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{cacacefd-1b5f-49f4-af24-0ce559cc1e90}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Cinergy T2 Stick DVBC BDA Filter (15)</entry>
    <entry name="TunerType">0</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Cinergy T2 Stick DVBC BDA Filter 14</entry>
    <entry name="DeviceNr">15</entry>
    <entry name="Vendor">28</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">128</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_2013&amp;pid_025f#0011357602#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{b50b8116-da24-4f97-80d1-00451702c5f7}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="SRx1000">1</entry>
    <entry name="Name">PCTV 292e/461e BDA 28179 TVTuner C (6)</entry>
    <entry name="TunerType">0</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">PCTV 292e/461e BDA 28179 TVTuner C 5</entry>
    <entry name="DeviceNr">5</entry>
    <entry name="Vendor">28</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">128</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0ccd&amp;pid_10b2#7&amp;1c7b162&amp;0&amp;1#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{cacacefd-1b5f-49f4-af24-0ce559cc1f6d}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Cinergy T2 Stick BDA Filter (4)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Cinergy T2 Stick BDA Filter 3</entry>
    <entry name="DeviceNr">3</entry>
    <entry name="Vendor">28</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">1</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0ccd&amp;pid_10b2#5&amp;15991065&amp;0&amp;10#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{cacacefd-1b5f-49f4-af24-0ce559cc1f6d}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Cinergy T2 Stick BDA Filter (16)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Cinergy T2 Stick BDA Filter 15</entry>
    <entry name="DeviceNr">15</entry>
    <entry name="Vendor">28</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">1</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_2013&amp;pid_025f#0011357602#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{7c8095ab-c110-40e5-9f4d-310858bbbf64}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">PCTV 292e/461e BDA 28179 TVTuner (5)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">PCTV 292e/461e BDA 28179 TVTuner 4</entry>
    <entry name="DeviceNr">5</entry>
    <entry name="Vendor">28</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">1</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0572&amp;pid_0320#20140126#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{f31bcf3b-9623-4937-8228-bd895ba00b01}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Professional DVB Digital TV DVB-T2 (17)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">Professional DVB Digital TV DVB-T2 16</entry>
    <entry name="DeviceNr">17</entry>
    <entry name="Vendor">32</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">1</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_07ca&amp;pid_0825#0000000000000#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{9b365890-165f-11d0-a195-0020afd156e4}">
    <entry name="HasCI">1</entry>
    <entry name="UseHardwareFilter">1</entry>
    <entry name="NoStandard">1</entry>
    <entry name="Name">AF9015 BDA Filter (7)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">AF9015 BDA Filter 6</entry>
    <entry name="DeviceNr">7</entry>
    <entry name="Vendor">0</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">1</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_07ca&amp;pid_0825#0000000000000#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{9b365890-165f-11d0-a195-0020afd156e5}">
    <entry name="HasCI">1</entry>
    <entry name="UseHardwareFilter">1</entry>
    <entry name="NoStandard">1</entry>
    <entry name="Name">AF9015 BDA Filter 2 (8)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">1</entry>
    <entry name="InstID">AF9015 BDA Filter 2 7</entry>
    <entry name="DeviceNr">8</entry>
    <entry name="Vendor">0</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">1</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0572&amp;pid_0320#20140126#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{f31bcf3b-9623-4937-8228-bd895ba00b61}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">Professional DVB Digital TV DVB-C (18)</entry>
    <entry name="TunerType">0</entry>
    <entry name="Status">0</entry>
    <entry name="InstID">Professional DVB Digital TV DVB-C 17</entry>
    <entry name="DeviceNr">17</entry>
    <entry name="Vendor">32</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">128</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
  <section name="@device:pnp:\\?\usb#vid_0b48&amp;pid_3015#6&amp;33ddd45&amp;0&amp;7#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\{f31bcf3b-9623-4937-8228-bd895ba00b02}">
    <entry name="UseHardwareFilter">1</entry>
    <entry name="DVBS2">1</entry>
    <entry name="useMSNP">1</entry>
    <entry name="Name">TT-connect CT2_4650 DVB-T/T2 Tuner (1)</entry>
    <entry name="TunerType">2</entry>
    <entry name="Status">0</entry>
    <entry name="InstID">TT-connect CT2_4650 DVB-T/T2 Tuner 0</entry>
    <entry name="DeviceNr">1</entry>
    <entry name="Vendor">32</entry>
    <entry name="Priority">2</entry>
    <entry name="Tag">0</entry>
    <entry name="DeviceType">1</entry>
    <entry name="Groups">255</entry>
    <entry name="Retune">0</entry>
    <entry name="SkipComponents">0</entry>
  </section>
</settings>

 

 

Maybe the root of the problem is the same "Vendor" value "32" used for two different devices: "TT-connect CT2_4650" and for  "Professional DVB Digital TV". "Professional DVB Digital TV" should be correspond with my device "DVBSky T330" (this device works ok). But why is used name "Professional DVB Digital TV" and not the name "DVBSky T330" ? 

 

In Device Manager are these devices:

image.png.f8bce00a7636b70566762bacacb495dc.png

 

 

Edited by jirim100
Link to comment

Please don't use the abbreviation "MS" for the Media Server, because everybody will perceive it as "Microsoft". Rather use "DMS".

 

Please don't post lengthy configuration files, as you did in your last post. Rather attach them as file.

 

Your TT-connect CT2-4650 CI is actually a relabeled DVBSky device (a DVBSky T680C, I suppose), running with a DVBSky driver. Only the name, vendor ID and product ID have been adjusted to the reseller.

 

7 hours ago, jirim100 said:

The free second tuner "TT-Connect CT2 4650 DVB C" was not used. Why?

 

Let's have a look at the svcdebug.log:

 

Quote

28.01.23 21:50:00.630 TBDADVBSky           OpenDevice       bvDVBSky
28.01.23 21:50:00.630 TRecording           AllocateHardware TT-connect CT2_4650 DVB-C Tuner (14)
28.01.23 21:50:00.630 TRecording           StartRecord      TT-connect CT2_4650 DVB-C Tuner (14)
(....)
28.01.23 21:51:03.869 TRecording ($026DA0C0)    Tick             No data within one minute, restarting!
28.01.23 21:51:03.869 TRecording ($026DA0C0)    W:\For The Record\Abraham Lincoln  Lovec upírů; horor; USA; 2012; vysíláno 2023-01-28; HD.ts Discontinuities: 0  -  Total size: 0,00 KB  -  Device: TT-connect CT2_4650 DVB-C Tuner (14)
28.01.23 21:51:08.522 TRecording           Release          TT-connect CT2_4650 DVB-C Tuner (14)

(....)
28.01.23 21:51:08.751 TBDADVBSky           OpenDevice       TT-connect CT2_4650 DVB-C Tuner (14) did not start: bvDVBSky
28.01.23 21:51:08.907 TRecording           AllocateHardware Open failed
28.01.23 21:51:08.907 TRecording           StartRecording   No hardware.

 

The DMS tried to start the device, but the underlying BDA system responded with an error code.

 

7 hours ago, jirim100 said:

How to solve this problem with wrong detection of the tuner?

 

Generally I'd say, with your huge zoo of BDA tuners you are begging for trouble. You are exaggerating. Your device list is a nightmare. The source is the Windows device enumerator, queried by the DMS for devices belonging to KSCATEGORY_BDA_NETWORK_TUNER. If it delivers wrong or ambiguous results, something got muddled up in your system, maybe in the registry, I don't know.

 

You should confine yourself to a reasonable selection of tuners.

 

Link to comment

Thanks for answer.

 

 

7 hours ago, Griga said:

Please don't use the abbreviation "MS" for the Media Server, because everybody will perceive it as "Microsoft". Rather use "DMS".

Sorry.

 

7 hours ago, Griga said:

Please don't post lengthy configuration files, as you did in your last post. Rather attach them as file.

Ok.

 

 

7 hours ago, Griga said:

Your TT-connect CT2-4650 CI is actually a relabeled DVBSky device (a DVBSky T680C, I suppose), running with a DVBSky driver.

I completelly uninstall DVBSky sw+device+driver, uninstall driver for TT-connect CT2-4650 CI. Restart PC. Install drivers for TT-connect CT2-4650 CI, but one of them is still named as "Professional DVB Digital TV".

 

Therefore I go to registry of Windows and changed value "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceClasses\{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\##?#USB#VID_0B48&PID_3015#20151107#{71985f48-1ca1-11d3-9cc8-00c04f7971e0}\#{f31bcf3b-9623-4937-8228-bd895ba00b60}\Device Parameters\FriendlyName" from "Professional DVB Digital TV DVB-C" to "TT-connect CT2_4650 DVB-C Tuner" and now both C tuners works in DMS.

 

I don't know why after installing the same driver is one of them named as "Professional DVB Digital TV DVB-C" - maybe one of them is older. Driver is installed correctly because in file ttConnect4650_64.sys are mentioned both friendly names: "Professional DVB Digital TV DVB-C" and "TT-connect CT2_4650 DVB-C Tuner".

 

But my question: The devices - in the fact are differentiate only by the Friendly Name (because I changed only this in registry). Can you modify DMS to treat a device with a friendly name of "Professional DVB Digital TV DVB-C" exactly the same as a device with a friendly name of "TT-connect CT2_4650 DVB-C Tuner"? Both of these devices otherwise have all the same parameters - Vendor number is the same, CI handling is the same, DeviceType and TunerType is the same. PID and VID values are the same. Used driver files are the same (checked in Device Manager).

 

 

Edited by jirim100
Link to comment
3 minutes ago, jirim100 said:

Can you modify DMS to treat a device with a friendly name of "Professional DVB Digital TV DVB-C" exactly the same as a device with a friendly name of "TT-connect CT2_4650 DVB-C Tuner"?

 

It's already done this way. Both are detected as DVBSky devices (vendor = 32). For detection the DMS does not consider the "friendly name", but VID and PID.

 

Link to comment

Then why one of them not work? And why work after changing Friendly name in registry windows? 

 

I apologize for my disbelief, but does the entire DMS code really work with only PID and VID, including ttBdaDrvApi_dll.dll ?

Link to comment

In the end I solved my problem by the application USBDeview.exe. With it I uninstalled driver of not connected (hidden) device "DVB T2/C Tuner" (then I uninstalled drivers for TT-Connect CT2 4650, power off PC, disconnected usb devices TT-Connect CT2 4650, power on PC, connected usb devices, again installed drivers for TT-Connect CT2 4650). This hidden device even did not show in Device Manager with enabled "show hidden devices". This device had VID 0572, PID 0320 and in oemXX.inf was mentioned "Professional DVB Digital TV" (the same text as in ttConnect4650_64.sys). It was probably interfere with my TT Connect CT2 4650 device and therefore Friendly name was not correct and consequently device open in DMS failed.

 

VID 0572, PID 0320 corresponds with DVBSky T330 DVB-T2/C which, probably, was not uninstalled properly v Device manager.

Edited by jirim100
Link to comment
18 hours ago, jirim100 said:

does the entire DMS code really work with only PID and VID, including ttBdaDrvApi_dll.dll ?

 

The ttBdaDrvApi_dll.dll is not used for DVBSky devices. It's only relevant for old devices that were actually manufactured by Technotrend, like TT 2400/3200/3600/3650. Nowadays Technotrend is just a label for reselling far-east devices. The original company doesn't exist anymore.

 

The device ID and "friendly name" are used on device initialisation. The DMS lets the Windows device enumerator instantiate the tuner filter for a tuner with the device ID and "friendly name" given by <section name="..."> and <entry name="Name">...</entry> (without the trailing number) in the file svchardware.xml.

 

Link to comment
1 hour ago, Griga said:

The device ID and "friendly name" are used on device initialisation. The DMS lets the Windows device enumerator instantiate the tuner filter for a tuner with the device ID and "friendly name" given by <section name="..."> and <entry name="Name">...</entry> (without the trailing number) in the file svchardware.xml.

Maybe this explains why open the device failed. Device path in <section name=".."> is not enought for instantiating? In the windows registries it seems that the "friendly name" does not determine the uniqueness of the device and is only one of the device parameters. 

image.thumb.png.cbacf8ddae5822e57b09fb8fe69aa206.png

 

Griga, take this message from me with a grain of salt. I wouldn't like to lead you down the wrong path and I don't even know if you have to or don't have to use the "friendly name" during the initialization of the tuner.

 

But if you want more investigate to it then you can easy test it: don't use "friendly name" during initialization of the tuner and, for test purposes, change the "friendly name" in the windows registries and in the file svchardware.xml to eg "XXX" for some tuner and then test it whether it works without "friendly name".

It is very easy to find the appropriate key in the windows registries by searching in HKLM\SYSTEM\CurrentControlSet\Control\DeviceClasses. I don't think I even rebooted the PC after changing the "friendly name" in the registries. 

Link to comment
8 hours ago, jirim100 said:

I don't even know if you have to or don't have to use the "friendly name" during the initialization of the tuner.

 

Who really knows?

 

An (optional) "Use friendly name only" would be useful, for cases where Windows (for unknown reasons) changes the device path (ID) of USB tuners on each reboot, each time requiring a new hardware detection in DVBViewer/DMS. We already had this several times. However, this measure probably won't work with dual tuners ;)

 

Link to comment
1 hour ago, Griga said:

An (optional) "Use friendly name only" would be useful, for cases where Windows (for unknown reasons) changes the device path (ID) of USB tuners on each reboot, each time requiring a new hardware detection in DVBViewer/DMS. We already had this several times. However, this measure probably won't work with dual tuners

I had this several times too. I never reported it here but it's too BIG problem. Especially when I forgot check status of tuners, after restart of PC, in DMS. If the "friendly name" is unique in the whole system, then device paths (ID) to devices with these unique "friendly names" could be corrected with its help. Can you add this check when DMS starts?? Even dual USB tuners have unique "friendly names" for every tuner.

 

And what about to make friendly name to be unique during the scan of hardware by changing it with attached number?? But I don't know whether this can work. I think friendly name should not be used to initializace of tuner, it's only "Friendly" name.

 

I think many users, not just me, would welcome the solution to this problem.

 

Edited by jirim100
Link to comment
  • 2 weeks later...
On 1/30/2023 at 6:56 PM, Griga said:

An (optional) "Use friendly name only" would be useful, for cases where Windows (for unknown reasons) changes the device path (ID) of USB tuners on each reboot, each time requiring a new hardware detection in DVBViewer/DMS.

Today I have BSOD at 2023-02-11  11:34, after it my PC automatically restart and some USB device paths was changed by operating system. I had to manually did hardware detection in DMS. If I'm not at the PC at this time, it can result in unrecorded shows. It would be great to solve this problem.

 

PS: I tried to contact developers of some usb drivers, but none answer.

Edited by jirim100
Link to comment
Am 30.1.2023 um 20:12 schrieb jirim100:

If the "friendly name" is unique in the whole system, then device paths (ID) to devices with these unique "friendly names" could be corrected with its help.

 

The "friendly name" isn't guaranteed to be unique. Here you can see an example for equal names. TransEdit doesn't append additional numbers to the names like DVBViewer does. The user complains that he can't distinguish the tuners in the device list.

 

So the names can't be used for device identification in a regular procedure, but only as configurable option, with the risk of mistaken identity.

 

Am 30.1.2023 um 08:37 schrieb Griga:

The device ID and "friendly name" are used on device initialisation. The DMS lets the Windows device enumerator instantiate the tuner filter for a tuner with the device ID and "friendly name" given by <section name="..."> and <entry name="Name">...</entry> (without the trailing number) in the file svchardware.xml.

 

Not quite true: Due to the appended numbers DVBViewer doesn't check if the "friendly names" equal the ones indicated by the device enumerator. It checks if the "friendly name" stored in the DVBViewer device list begins with the one indicated by the device enumerator, so that "Professional DVB Digital TV" without number matches "Professional DVB Digital TV (1)". However, a tuner name like "P" would also match ;)

 

This is the result of not storing the original "friendly name", but a modified one on device detection. That's why I didn't do it this way in TransEdit. DVBViewer could retrieve the original "friendly name" by a function that removes the trailing number in brackets, though.

 

Right after loading the (svc)hardware.xml, DMS, DMS Options and DVBViewer check the availability of tuners by comparing the device list with the device enumerator output in the same way as on device initialisation (by searching for a matching ID, which is called "display name" in Microsoft terminology, and a matching "friendly name"). If the ID and name from the hardware.xml can't be found in the device enumerator, the tuner is regarded as "not available", like a removed USB device. It will not be used and is displayed in red in the device list.

 

This is the point where an option could take effect, that lets DVBViewer/DMS look for a device with matching "friendly name" only if the ID cannot be found. However, in this case a check for equal original "friendly names" would be necessary, not the lax matching algorithm used now.

 

Additionally DVBViewer/DMS are monitoring "arrival" and "removal" messages from Windows, indicating that a (USB) device has been added to or removed from the  hardware configuration, in order to update the availability status of tuners. In this case only the ID is used for device identification.

 

Before considering changes in DVBViewer/DMS, time-consuming investigations are necessary in most cases, in order to find out what the current code actually does and how changes would interfere with it. Above you can see the first results... additionally I've found some things that I don't really like and that may cause problems concerning the communication between applications from the DVBViewer family about  occupied tuners. This calls for a fix...

 

Link to comment
4 hours ago, Griga said:

TransEdit doesn't append additional numbers to the names like DVBViewer does.

The logic for handling with hardware devices (Scan Devices in config window, Device Arrival, Device Removal) should be exactly the same for all three applications: DMS, DVBViewer and TransEdit.

 

4 hours ago, Griga said:

Before considering changes in DVBViewer/DMS, time-consuming investigations are necessary in most cases, in order to find out what the current code actually does and how changes would interfere with it. Above you can see the first results...

Yes, I understand Griga - it's difficult task. But, as I mentioned, DMS (and DVBViewer, TransEdit) should be able to handle changing the USB device path ID when it change after restart of PC. I think - for this purpose can be useful to change the "friendly name" in registry of windows to name with "number", which is appended by DMS/DVBViewer (and maybe after fix by TransEdit too?). 

 

What I don't know is whether OS Window, if the USB device path ID is changed after the restart, will keep the changed "friendly name" in the registry or overwrite it to default.

 

>If the ID and name from the hardware.xml can't be found in the device enumerator, the tuner is regarded as "not available"<

For these devices should be run the second round and look for only name and, if found, repair ID in hardware.xml.

Edited by jirim100
Link to comment
Am 16.2.2023 um 17:17 schrieb jirim100:

for this purpose can be useful to change the "friendly name" in registry of windows to name with "number", which is appended by DMS/DVBViewer

 

No. Forget it. It's an absurd idea. Applications from the DVBViewer family will never change parts of the hardware configuration in the registry. It is completely unknown what may depend on it. Besides that, applications can't write to this part of the registry without admin/system rights.

 

Link to comment
Am 30.1.2023 um 10:14 schrieb jirim100:

I don't even know if you have to or don't have to use the "friendly name" during the initialization of the tuner.

 

Well, the only way to find out if it works throughout without the "friendly name" check is trying it. After investigating it a bit I think the risk is manageable. Particularly this flaw

 

Am 16.2.2023 um 12:45 schrieb Griga:

It checks if the "friendly name" stored in the DVBViewer device list begins with the one indicated by the device enumerator, so that "Professional DVB Digital TV" without number matches "Professional DVB Digital TV (1)". However, a tuner name like "P" would also match

 

is something I would like to get rid of. So maybe the best is to just leave it out. This measure would concern the availability check and the instantiation of BDA tuners.

 

After the availability check one or more BDA tuners may be flagged as not available, because the ID from the (svc)hardware.xml is not present in the device enumeration anymore. So DVBViewer/DMS could optionally check if a tuner with the same "friendly name" is present. If yes, the "lost" ID in the device list could be substituted by the one associated with the matching "friendly name" in the device enumeration.

 

However, it is important to check if the associated ID from the enumeration already belongs to an entry in the device list from the (svc)hardware.xml that is flagged as available. If yes, it must not be used again, except if it belongs to a "multi-standard" or hybrid tuner like this one. The reception type (DVB-S/T/C) of the TBS 5520 SE has to be selected with a TBS tool or by using the TBS API (DVBViewer/DMS know how to do this). In order to make all tuner types available to the user without having to use the TBS tool, DVBviewer/DMS artificially add device list entries for the missing types, though the device enumeration only contains one tuner entry. This finally yields three entries with the same ID and same name for the TBS 5520 SE, but different tuner types, which makes the whole thing a bit complicated.

 

Besides that, cases must be considered where a re-detection of a tuner by "friendly name" may yield wrong results. If there are two tuners with "lost" IDs, but the same name, they may get swapped by re-detection. This doesn't matter as long as their properties and settings are identical. However, if one of them is equipped with a CAM and the other one not, or one is connected to a dish pointing to Astra 19.2° East and the other one to a dish pointing to Hotbird, or only one of them is connected to an antenna cable and the other one set to "Use device off", things won't work anymore as they should after a swap.

 

If a tuner is re-detected by "friendly name", at least the tuner type (DVB-S/T/C) should match in order to avoid "false positives". However, the tuner type of a device enumeration entry can only be retrieved by instantiating the tuner filter and searching its topology for certain demodulator nodes. This finally comes down to performing a complete BDA device detection. After this the device list from the (svc)hardware.xml (if it contains entries flagged as not available) is not compared to a device enumeration list, but to a temporary device list resulting from a detection process.

 

Quite a lot to be considered... ;)

 

Link to comment
12 hours ago, Griga said:

Well, the only way to find out if it works throughout without the "friendly name" check is trying it.

Device Id is unique. No needing "friendly name".

 

12 hours ago, Griga said:

So DVBViewer/DMS could optionally check if a tuner with the same "friendly name" is present. If yes, the "lost" ID in the device list could be substituted by the one associated with the matching "friendly name" in the device enumeration.

Yes, this is what would be great!

 

12 hours ago, Griga said:

This finally yields three entries with the same ID and same name for the TBS 5520 SE, but different tuner types, which makes the whole thing a bit complicated.

You are right. But I believe it is solvable (maybe new flag in (svc)hardware.xml). And if not - omit this case for first version.

 

12 hours ago, Griga said:

If there are two tuners with "lost" IDs, but the same name, they may get swapped by re-detection.

For the first version this case can be omited - no reassigning device ID (tuners will be still "lost"). (this could be solvable by changing friendly name by function SetupDiSetDeviceRegistryPropertyA by property SPDRP_FRIENDLYNAME during "Configure with Admin rights" (on my PC only DMS uses tuners and even after changing friendly names directly in registry tuners works), but you don't want to do it (I did it manually before one week for my two the same tuners), here is example how to use it (how to do it programmatically), I hope you don't ban me here for this sentence 😶)

 

Edited by jirim100
Link to comment
vor 8 Stunden schrieb jirim100:

Device Id is unique. No needing "friendly name".

 

Let's hope so. You never know what is actually happening in Windows installations, particularly if they are a bit unhealthy like yours.

 

vor 8 Stunden schrieb jirim100:

But I believe it is solvable (maybe new flag in (svc)hardware.xml).

 

It doesn't need to be solved if I don't use a raw device enumeration, but a complete BDA tuner detection, because DVBViewer/DMS add the missing tuner entries automatically in this case, and because the tuner type (DVB-S/T/C) is known, so it can be compared additionally.

 

vor 8 Stunden schrieb jirim100:

I hope you don't ban me here for this sentence

 

You will be banned for using an unreasonable and exaggerated amount of tuners, which again and again creates problems. :)However, not until you have tested what I have coded now. Extreme and unhealthy setups are quite useful for checking the error resilience.

 

I'll post here when a test version is available.

 

Link to comment
47 minutes ago, Griga said:

You will be banned for using an unreasonable and exaggerated amount of tuners, which again and again creates problems.

Sorry Griga, but this is only and only my decision. But I know you are joking.

 

 

Link to comment

The test versions are up. Please check your PMs.

 

You can perform tests by changing IDs in the file (svc)hardware.xml while DMS/DVBViewer are stopped (which would normally cause tuner allocation failure after the next start) and then check if the IDs are corrected automatically if the new “Allow BDA tuner re-detection by name” option is switched on.

 

That's how I did it, and it seems to work well, even for my multi-standard TBS device (see above). However, I have no tuners with the same name and tuner type like you.

 

Link to comment

Test happened successfully.

Currently I have connected these DVB recording devices (except "Intel Display Audio" and "Realtek Audio"):

image.png.ccafa88e17c8be02098a179606b86442.png

 

As you suggested, I always turned off DMS, invalidated the device ID in svchardware.xml, turned on DMS and tried to record with the given tuner.

With this method I invalidated the device ID in svchardware.xml for all tuners individually and then for whole groups of tuners too - for example tuners for both devices TT-connect CT2 -4650 CI (every device has C and T2 tuners - therefore I invalidate in one step 4  IDs in svchardware.xml) - device IDs was repaired and both tuners works again. I invalidated 4 tuners of my PCIe Digital device card - DMS successfully repaired their device IDs too.

 

I don't use S tuners and my C and T tuners with the same name use the same "Channel Groups" - therefore I don't mind their possible confusion if the ID of both tuners with the same name is corrected.

 

Question: What about to add the same code for auto-correction of IDs when system event Device Arrival happen? Of course only when is enabled “Allow BDA tuner re-detection by name” and only when in device list is "not available" tuner.

--------------------------------------------------------------

Here are next notes/questions regarding the version you send me:

1. Tuner "Cinergy T2 Stick BDA filter" after performing "Scan Devices" should have checked "DVB-T2" by default, because this device is DVB-T2 tuner too (VID_0ccd&PID_10b2).

2. In desktop web interface are icons for "Edit timer", "Delete", "check box" not on the right side but alligned on the left side. With it every item in list takes up more space vertically and the whole timer list is not easy to read as in previous version (at least for me).

image.thumb.png.f516439ddda13b35fe464f8aeaa7f905.png

 

Edited by jirim100
Link to comment
vor 2 Stunden schrieb jirim100:

In desktop web interface are icons for "Edit timer", "Delete", "check box" not on the right side but alligned on the left side.

 

Doesn't happen here. Are you sure that all files in the SVCweb folder (and sub-folders) have been updated to the test version? Check the "last modified" date.

 

Link to comment
38 minutes ago, Griga said:

Are you sure that all files in the SVCweb folder (and sub-folders) have been updated to the test version? Check the "last modified" date.

I checked now and all files, which you sent me are copyed into folder (and sub-folders) c:\Program Files (x86)\DVBViewer\. Please, are you send me all files? Can you send me the whole SVCweb folder? I use latest Google Chrome  110.0.5481.178, 64b

Edited by jirim100
Link to comment

Looks like SVCweb\css\global.css is not updated. Maybe the browser uses the old version from its cache. Force a complete reload of the page by pressing Ctrl+F5 in the browser. Sorry, I should have mentioned it.

 

Link to comment

This added feature is awesome. Now I can leave my PC for long time, PC can restart (device ID can change) and tuners still will be available and I will not lost any recording.

Link to comment
Am 25.2.2023 um 20:50 schrieb jirim100:

Wow! It helps. Thanks. I did only the "classic" reload the whole web page.

 

Something has to be done about it. Otherwise we will get a whole lot of support requests after the next release.

 

Zitat
  • Added: Desktop Web Interface: Mechanism for forcing browsers to reload CSS files on a Media Server version change instead of using (possibly out-dated) cached files. It is done by appending the version number to the file name (not on disk, but as seen by the browser), and currently applied to SVCweb\css\global.css due to changes (see here).

 

The mechanism was already implemented before, but only for JS and CSS files of the Mobile Web Interface.

 

vor 11 Stunden schrieb jirim100:

This added feature is awesome. Now I can leave my PC for long time, PC can restart (device ID can change) and tuners still will be available and I will not lost any recording.

 

Let's see how it works in practice in the long run. I'm quite sure your tuner zoo system will find a way to create unexpected new problems... ;)

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...