mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-09-03 10:51:12 +02:00
sectionsd: close / reopen demux device explicitely on TD
The Tripledragon drivers need explicit close/open to recover from buffer overruns (or similar). Observed problem was, that when starting on a channel that does send TDT only every 30 seconds (ZDF), the demux would not work anymore and never recover. git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@1258 e54a6e83-5905-42d5-8d5c-058d10e6a962
This commit is contained in:
@@ -105,7 +105,11 @@ void DMX::closefd(void)
|
|||||||
if (isOpen())
|
if (isOpen())
|
||||||
{
|
{
|
||||||
//close(fd);
|
//close(fd);
|
||||||
|
#if HAVE_TRIPLEDRAGON
|
||||||
|
dmx->Close();
|
||||||
|
#else
|
||||||
dmx->Stop();
|
dmx->Stop();
|
||||||
|
#endif
|
||||||
fd = -1;
|
fd = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -495,8 +499,13 @@ xprintf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>DMX::imediate_start: isOpen()<<<<<<<<<<<<
|
|||||||
#endif
|
#endif
|
||||||
if(dmx == NULL) {
|
if(dmx == NULL) {
|
||||||
dmx = new cDemux(dmx_num);
|
dmx = new cDemux(dmx_num);
|
||||||
|
#if !HAVE_TRIPLEDRAGON
|
||||||
dmx->Open(DMX_PSI_CHANNEL, NULL, dmxBufferSizeInKB*1024UL);
|
dmx->Open(DMX_PSI_CHANNEL, NULL, dmxBufferSizeInKB*1024UL);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
#if HAVE_TRIPLEDRAGON
|
||||||
|
dmx->Open(DMX_PSI_CHANNEL, NULL, dmxBufferSizeInKB*1024UL);
|
||||||
|
#endif
|
||||||
fd = 1;
|
fd = 1;
|
||||||
|
|
||||||
/* setfilter() only if this is no dummy filter... */
|
/* setfilter() only if this is no dummy filter... */
|
||||||
|
Reference in New Issue
Block a user