VDR constantly tries to change transponder frequency

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Klaus Schmidinger wrote:
> Anssi Hannula wrote:
> 
>> I've now had time to debug this bug more, too.
>>
>>>> Anssi Hannula wrote:
>>>>
>>>>> Hi!
>>>>>
>>>>> VDR constantly changes the frequency of one multiplex in DVB-T.
>>>>>
>>>>> Here's an example:
>>>>> Correct:
>>>>> Urheilukanava;Suomen Urheilutelevisio
>>>>> Oy:770000000:C23D23M64B8T8G8Y0:T:27500:417+130:673=fin:929:0:113:8438:12289:0
>>>>>
>>>>>
>>>>>
>>>>> But then VDR decides to change it:
>>>>>
>>>>> Dec 29 18:32:48 delta vdr[18069]: changing transponder data of channel
>>>>> 22 from T:770000000:0:3:0:2:2:2:1 to T:674000000:0:3:0:2:2:2:1
>>>>>
>>>>> And then of course the channels stop being watchable.
>>>>>

>>
>> The NIT data (pid 16) of Finnish DVB-T operated by Digita apparently
>> confuses VDR:
>>
>> The center frequency advertised in the
>> terrestrial_delivery_system_descriptor is not necessarily the real
>> frequency, but other_frequency_flag is set to "1" and there is provided
>> a frequency_list_descriptor which contains all the possible frequencies
>> of this mux (probably nation-wide), and the correct frequency is one of
>> those.
>>
>> Digita also sends NITs of all muxes in all muxes, and as VDR relies on
>> frequencies to detect which on of those is the correct one, the
>> detection fails and VDR always selects the NIT of mux 3, explaining why
>> it that mux is the only one affected by the frequency-changing.
>>

>>
>> After a quick look it seems that libsi has support for
>> frequency_list_descriptor.
>>
>> If you want to see the actual NIT data, it's there:
>> http://stuff.onse.fi/digita-nit/
>>
>> Note that the other_frequency_flag is DVB-T-specific.

> 
> Well, I guess it would be best if you give it a shot, since you
> have the data stream necessary for testing this.

Okay, attached is a patch for nit.c that checks for all the frequencies
in frequency_list_descriptor for the channel's frequency and if found,
use it so that channel's frequency is not changed.

Also in the detection of new transponders all frequencies are added for
the EITscanner.

I tested it by removing a transponder from channels.conf, and VDR found
it again (though it took a while, as there are *many* frequencies in the
frequency_list_descriptor). This too hasn't been working before on the
DVB-T network of Finland.

Note that the patch uses list from C++ STL. If you wish to implement the
list with something else, it should be trivial to modify.

-- 
Anssi Hannula

-------------- next part --------------
A non-text attachment was scrubbed...
Name: vdr-1.4.0-frequency-list-descriptor.diff
Type: text/x-patch
Size: 13748 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/vdr/attachments/20060527/661ca519/vdr-1.4.0-frequency-list-descriptor-0001.bin

[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux