EPG: EIT alle 10s pollen, XMLTV alle 60s
This commit is contained in:
parent
c978d66c56
commit
c91944e965
1 changed files with 18 additions and 3 deletions
|
|
@ -59,9 +59,24 @@ public partial class MainWindow : Window
|
|||
_epgTimer = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(500) };
|
||||
_epgTimer.Tick += EpgTimer_Tick;
|
||||
|
||||
// Jede Minute prüfen ob Jetzt/Danach noch aktuell sind
|
||||
_epgRefreshTimer = new DispatcherTimer { Interval = TimeSpan.FromSeconds(60) };
|
||||
_epgRefreshTimer.Tick += (_, _) => { if (_currentChannel != null) UpdateNextFromEpgService(_currentChannel); };
|
||||
// Jede 10s: EIT-Daten aus Media neu lesen (libVLC feuert MetaChanged nicht bei laufendem EIT-Update)
|
||||
// Jede 60s: XMLTV Jetzt/Danach refreshen
|
||||
_epgRefreshTimer = new DispatcherTimer { Interval = TimeSpan.FromSeconds(10) };
|
||||
var _epgRefreshTick = 0;
|
||||
_epgRefreshTimer.Tick += (_, _) =>
|
||||
{
|
||||
if (_currentChannel == null) return;
|
||||
// EIT alle 10s neu lesen (FritzBox-TV)
|
||||
if (_currentChannel.Source == ChannelSource.FritzBox && _currentMedia != null)
|
||||
UpdateEpgFromMedia(_currentMedia);
|
||||
// XMLTV nur alle 60s (Online-TV + Danach für alle)
|
||||
_epgRefreshTick++;
|
||||
if (_epgRefreshTick >= 6)
|
||||
{
|
||||
_epgRefreshTick = 0;
|
||||
UpdateNextFromEpgService(_currentChannel);
|
||||
}
|
||||
};
|
||||
_epgRefreshTimer.Start();
|
||||
|
||||
Loaded += MainWindow_Loaded;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue