Jump to content
MFrost

Avermedia TD310 - problem with scanning dvb-c

Recommended Posts

MFrost

I can't find any channels using dvb-c cable. Scanning dvb-t channels works without any problem. On another hauppauge tuner I can find dvb-c channels. Why can't I find anything on avermedia td310?

Share this post


Link to post
MFrost

Thanks for the help. Unfortunately, before you wrote this post I returned this tuner to the store. On the original AverTV software also could not find dvb-c channels. I have a tuner Hauppauge WinTV-HVR-930C HD with a similar problem.

Adding a line

<entry name = "SRx1000"> 1 </string> 

helped here


I attach the hardware.xml file

hardware.xml

Edited by MFrost

Share this post


Link to post
MFrost

I have avermedia td310 again. He found dvb-c channels without entering this code. Unfortunately, I can't scan dvb-t channels right now. Message appears.

https://ibb.co/PNFHYC9

The dvb-t scan works after reinstalling the DVBViewer. After reinstalling the DVBViewer, the dvb-t scan works, unfortunately I can't scan the dvb-c ...

I don't have this problem with the hauppauge tuner. I can scan dvb-t channels and then dvb-c.

Share this post


Link to post
Griga

A support.zip  (after DVBViewer has been launched in debug mode) is required.

 

Share this post


Link to post
Griga

I can see the problem in the DVBViewer.log. There are two tuner entries in your device list on Options -> Hardware, one for DVB-C and one for DVB-T. However, only one of them works. In your log DVB-C works, but initializing the DVB-T tuner fails:

 

Zitat

20.09.19 13:33:00.743 TfrmMain             SetTuner         Start
20.09.19 13:33:00.765 TBDADevice           OpenDevice       AVerMedia TD310 BDA Filter (1) did not start: bvUnknown
20.09.19 13:33:00.769 TfrmMain             AllocateHardware Open failed

 

This is an error on the driver level. The driver is not able to handle DVB-T in this state. I don't know why, but I guess that switching between DVB-C and DVB-T mode is no more possible "on the fly" after the device has been initialized for DVB-C oder DVB-T.

 

This raises the question, how mode switching can be done. Maybe the first tuning after PC start decides which mode gets active. I would try the following:

  • Switch your PC off. Even disconnect it from the power supply! Wait 30 seconds. Then start it again. Now try to tune DVB-T. Does it work? If yes, probably DVB-C won't work anymore.
  • If changing the mode works this way, try if it also works if you only restart your PC (no power-off).
  • If changing the mode works this way again, try if it also works after disabling and enabling the TD310 in the Windows device manager.

If this doesn't work, another option would be to uninstall and re-install the driver and then tune to the desired mode (that did not work before).

 

For me it looks like the manufacturer (or driver developer) expects that users will use the device for DVB-C or DVB-T exclusively, but never for both.

 

Share this post


Link to post
MFrost

I did all the things you mentioned. Unfortunately, no effects. For example, when I try to scan dvb-t, I am blocked from receiving dvb-c.

I thought of deleting (and backup) the appropriate files from the CMUV -> DVBViewer directory:


universalremote.ini
userdata.xml
Setup.xml
epg.dat
timers.xml
DVBSource.ini
channels.dat
timers.bak
windowdef.xml
hardware.xml
hardware.bak


The dvb-t scan then works. When I want to watch dvb-c back I change to previous files.


I noticed that the original AverTV application doesn't have such problems. I can switch between dvb-t and dvb-c without closing the application or editing any files. Everything works correctly. Maybe you should do the appropriate upgrade to DVBViever for this tuner model.

Edited by MFrost

Share this post


Link to post
Griga
vor 22 Stunden schrieb MFrost:

The dvb-t scan then works. When I want to watch dvb-c back I change to previous files.

 

Is there any difference in the two hardware.xml versions?

 

vor 22 Stunden schrieb MFrost:

I noticed that the original AverTV application doesn't have such problems.

 

Maybe it is a proprietary way of mode switching that requires special information from the manufacturer. Lately I got a TBS 5580 USB Box for DVB-T2/S2/C. The reception type could only be changed with a tool from TBS. Information from TBS about the method turned out to be wrong. It didn't work in DVBViewer. However; I managed to find out by trial and error... it works now in DVBViewer 6.1.5.2 :)

 

Share this post


Link to post
MFrost
On 9/21/2019 at 1:51 PM, MFrost said:

The dvb-t scan then works

I made a mistake. The dvb-t scan works, but the DVBViewer does not find any channels.

Both hardware.xml files have identical content. I checked using functions in total commander.

Share this post


Link to post
vramor

DVBViwer works perfectly if the hardware meets BDA standard. TD310 is the only, IMHO, of AVerMedia devices that uses the proprietary way of TS capture and doesn't meet BDA. It can work properly (incl. DVB-T2 with MPLP) under its AVerTV 3D only. 

Share this post


Link to post
MFrost

Can't you do something about it?

Share this post


Link to post
vramor
1 hour ago, MFrost said:

Can't you do something about it?

I use TD310 with AVerTV 3D only. With DVBViewer for DVB-C/T2(MPLP) I use DVBSky T680C (USB), T980C (PCIe) (both with CI), Hauppauge WinTV-dualHD, PCTV 292e. As I know AVerMedia isn't going to polish up its TD310.

Share this post


Link to post
MFrost
On 9/23/2019 at 3:01 PM, vramor said:

DVBViwer works perfectly if the hardware meets BDA standard. TD310 is the only, IMHO, of AVerMedia devices that uses the proprietary way of TS capture and doesn't meet BDA. It can work properly (incl. DVB-T2 with MPLP) under its AVerTV 3D only. 

I don't know what's going on, but smartdvb uses bda drivers and finds dvb-c stations with no problem.

Share this post


Link to post
vramor
1 minute ago, MFrost said:

I don't know what's going on, but smartdvb uses bda drivers and finds dvb-c stations with no problem.

Both SmartDVB and ProgDVB do not use classical ways to capture TS with several devices. The manufacturers of these devices supply drivers, which do not always meet BDA standard. The programmers of SmartDVB and ProgDVB have undertaken special  measures to support the most popular tuners with its drivers. DVBViewer is a classical product and works with the same ones. :)

Share this post


Link to post
lastcameleon
On 9/23/2019 at 11:55 PM, vramor said:

I use TD310 with AVerTV 3D only. With DVBViewer for DVB-C/T2(MPLP) I use DVBSky T680C (USB), T980C (PCIe) (both with CI), Hauppauge WinTV-dualHD, PCTV 292e. As I know AVerMedia isn't going to polish up its TD310.

I reverse engineered the TD310 driver(s) while helping add DVB-T2(MPLP) to ProgDVB module, and from what I could find is that if the DVB-C Filter is loaded first, a global variable is set to a value indicating that the current mode is DVB-C (the same for DVB-T/T2 Filter), and every call to the card commit (setting tuner values) will check this variable, and call the appropriate function of the Si2168B chip code (DRV_SetFreqBwStandCarr for DVBT2 and DRV_SetFreqSrStandCarr for DVBC). I even tried using a Blindscan Property that the TD310 had for DVB-C, to try to bypass this problem, but without success.

 

And this problem should happen with the other cards that have the same Si2168B chip, "Cinergy T2 micro""Cinergy TC2" and the generic IT930x based DVB-T2/C sticks like the "DVBLink TVButler 100TC".

Share this post


Link to post
Griga
vor 13 Stunden schrieb lastcameleon:

if the DVB-C Filter is loaded first, a global variable is set to a value indicating that the current mode is DVB-C (the same for DVB-T/T2 Filter), and every call to the card commit (setting tuner values) will check this variable, and call the appropriate function of the Si2168B chip code

 

Thanks for information. Do you know a method to reset this global variable in order to get another "loaded first"? Where is this variable stored? How is it made persistent?

 

Share this post


Link to post
lastcameleon
4 hours ago, Griga said:

 

Thanks for information. Do you know a method to reset this global variable in order to get another "loaded first"? Where is this variable stored? How is it made persistent?

 

The only way around it (I could think of), is to unload (release) the tuner filter that is currently active before loading the new one, because that variable cannot be accessed from any KsProperty (it's for internal use only).

The special KsProperty exposed by the card have only: Setting PLPID, Getting PLPNUM, Setting/Getting DVBType (only work with DVBT2) and BlindScan for DVBC.

Edited by lastcameleon

Share this post


Link to post
Griga

Thanks again. That gives me an idea what may be wrong.

 

In the hardware.xml posted by @MFrost here I can see now  that DVBViewer regards the Avermedia TD310 as dual tuner device with two independent tuners, because it has not been detected as hybrid tuner (= single tuner with different modes). This lets DVBViewer load the DVB-T tuner filter before the DVB-C tuner filter gets released on a DVB-C -> DVB-T channel change (and vice versa).

 

For correct hybrid tuner handling both tuner entries in the hardware.xml must have the same DeviceNr., which is not the case. The DVB-T DeviceNr is 1 and the DVB-C DeviceNr 2. Setting the latter also to 1 (by using a text editor) while DVBViewer is closed should fix it.

 

However, even without this measure the following sequence should work:

  • A DVB-C channel is playing (DVB-C tuner filter used).
  • Playback -> Playback off stops playback and releases the device completely.
  • Tuning a DVB-T channel (or starting a DVB-T scan) re-allocates the device and loads the DVB-T tuner filter.

...or the other way round if a DVB-T channel is initially playing. If this doesn't work either, there is still another problem lurking around in the background.

 

P.S. Switching between DVB-C and DVB-T also requires changing the antenna cable, doesn't it? There are no separate connectors for a DVB-C and a DVB-T cable.

 

Share this post


Link to post
lastcameleon

It would probably be better to treat the card as Hybrid, even the DeviceName (id) string in the Hardware.xml is the same before the '#', so it should be easy (probably) to detect the other TunerFilter.

I will PM (if it's ok) you the information for the DVBT2 handling of this card later if you want to add PLP switching for the TD310 (the other cards don't expose any KsProperty for doing so).

Share this post


Link to post
Griga
vor 7 Minuten schrieb lastcameleon:

It would probably be better to treat the card as Hybrid

 

Sure. I've justed added the flag to the hardware database that triggers the device instance comparison. Future versions will detect the hybrid tuner automatically.

 

vor 7 Minuten schrieb lastcameleon:

I will PM (if it's ok) you the information for the DVBT2 handling of this card later if you want to add PLP switching for the TD310

 

I'd like to get the information. :) Maybe there is also other useful information that we can exchange.

 

Share this post


Link to post

Join the conversation

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

Guest
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...