[Rejected] Patch to fix "No PMT" or "PMT Timout" errors (1 Viewer)

nealeb

Portal Member
May 3, 2009
21
0
Home Country
United Kingdom United Kingdom
Tried the SVN with the "PMT timeout" patch, and it seems to work for me. Had it running a couple of days and haven't missed a channel change yet. Unfortunately I have other problems with this version (mainly that it will not set a wakeup for recording) which means that I can't leave it running as my main PVR but it's looking good for the PMT problem. That's with DVB-T.
 

te3hpurp

Retired Team Member
  • Premium Supporter
  • September 23, 2008
    910
    231
    Rovaniemi
    Home Country
    Finland Finland
    For me, not working on all channels

    I mean i'm not using patch. I'm using versions that are in svn.

    With svn 23652 tuning works okay.
    With svn 23670(latest so far) not working with canal digital Canal+ Action


    Logs attached.
     

    morpheus_xx

    Retired Team Member
  • Team MediaPortal
  • March 24, 2007
    12,073
    7,459
    Home Country
    Germany Germany
    without the tswriter.log I can't see anything.

    the current version (svn 23667) does look for both the requested PMT pid and ServiceID, and returns PMT if it matches the ServiceID

    btw: did you use the recent tswriter.ax and run regsvr32 before?
     

    morpheus_xx

    Retired Team Member
  • Team MediaPortal
  • March 24, 2007
    12,073
    7,459
    Home Country
    Germany Germany
    ok the issue comes from section decoder:
    Code:
    22-09-2009 14:40:02.507 !!! CSectionDecoder::OnTsPacket Entered infinite loop. pid: 2A4 start: 90 BufferPos: 5 SectionLength: 2 - Discarding section and moving to next packet
    22-09-2009 14:40:04.319 !!! CSectionDecoder::OnTsPacket Entered infinite loop. pid: 29B start: 148 BufferPos: 7 SectionLength: 4 - Discarding section and moving to next packet

    a) are you able to reproduce this issue?
    b) can you revert ONLY tswriter.ax to svn 23648 and re-test???
     

    te3hpurp

    Retired Team Member
  • Premium Supporter
  • September 23, 2008
    910
    231
    Rovaniemi
    Home Country
    Finland Finland
    a) Yes.
    b) I'll do that in the evening and post log early tomorrow. as 23652 is now working somewhat ok and family need tv :).

    ok the issue comes from section decoder:
    Code:
    22-09-2009 14:40:02.507 !!! CSectionDecoder::OnTsPacket Entered infinite loop. pid: 2A4 start: 90 BufferPos: 5 SectionLength: 2 - Discarding section and moving to next packet
    22-09-2009 14:40:04.319 !!! CSectionDecoder::OnTsPacket Entered infinite loop. pid: 29B start: 148 BufferPos: 7 SectionLength: 4 - Discarding section and moving to next packet

    a) are you able to reproduce this issue?
    b) can you revert ONLY tswriter.ax to svn 23648 and re-test???

    Is there specific reason for 23648 of tswriter, because logs allready from 23652 are same because tswriter is same:
    From svn logs we see that last time it changed was 23648 before this, and 23652 contains same as 23648

    regards

    Revision: 23666
    Author: morpheus_xx
    Date: 7:29:45 PM, Monday, September 21, 2009
    Message:
    fixed Mantis: 0002422 TSWriter doesn't update the PMT pid if the provider changes it.
    TsWriter looks for both PMT or ServiceID; no need to update DB anymore (2)
    ----
    Modified : /trunk/DirectShowFilters/TsWriter/bin/Debug/TsWriter.ax
    Modified : /trunk/DirectShowFilters/TsWriter/bin/Release/TsWriter.ax
    Modified : /trunk/DirectShowFilters/TsWriter/source/PmtGrabber.cpp
    Modified : /trunk/DirectShowFilters/TsWriter/source/PmtGrabber.h
    Modified : /trunk/DirectShowFilters/DvbCoreUtils/SectionDecoder.cpp

    Revision: 23648
    Author: dman_lfc
    Date: 1:07:46 AM, Thursday, September 17, 2009
    Message:
    fixed Mantis: 0002422
    TSWriter doesn't update the PMT pid if the provider changes it.
    Now we find the pmt and also update the database with the new details.
    ----
    Modified : /trunk/TvEngine3/TVLibrary/TVLibrary/Implementations/DVB/Graphs/TvDvbChannel.cs
    Modified : /trunk/DirectShowFilters/TsWriter/bin/Debug/TsWriter.ax
    Modified : /trunk/DirectShowFilters/TsWriter/bin/Release/TsWriter.ax
    Modified : /trunk/DirectShowFilters/TsWriter/source/PatParser.cpp
    Modified : /trunk/DirectShowFilters/TsWriter/source/PatParser.h
    Modified : /trunk/DirectShowFilters/TsWriter/source/PmtGrabber.cpp
    Modified : /trunk/DirectShowFilters/TsWriter/source/PmtGrabber.h
    Modified : /trunk/TvEngine3/TVLibrary/TVLibrary/Implementations/Analog/Graphs/HDPVR/HDPVRChannel.cs
    Modified : /trunk/TvEngine3/TVLibrary/TVLibrary/Implementations/DVB/ConditionalAccess/ConditionalAccess.cs
    Modified : /trunk/TvEngine3/TVLibrary/TVLibrary/Interfaces/Analyzer/IStreamAnalyzer.cs
    Modified : /trunk/TvEngine3/TVLibrary/TVLibrary/Interfaces/Analyzer/ITsFilter.cs
    Modified : /trunk/mediaportal/Core/Player/PlayerFactory.cs
     

    te3hpurp

    Retired Team Member
  • Premium Supporter
  • September 23, 2008
    910
    231
    Rovaniemi
    Home Country
    Finland Finland
    23648 tswriter log

    here is log from 23648 svn of tswriter.ax used.

    everything is okay with this version.
     

    morpheus_xx

    Retired Team Member
  • Team MediaPortal
  • March 24, 2007
    12,073
    7,459
    Home Country
    Germany Germany
    can you try the attached tswriter. it's the same as in svn, but adds a bit more logging
     

    te3hpurp

    Retired Team Member
  • Premium Supporter
  • September 23, 2008
    910
    231
    Rovaniemi
    Home Country
    Finland Finland
    With attached tswriter, not working.

    Log included.
     

    morpheus_xx

    Retired Team Member
  • Team MediaPortal
  • March 24, 2007
    12,073
    7,459
    Home Country
    Germany Germany
    svn current version 23677 does 2 different ways:

    1. Work as before, look for the requested PMT. If it times out once, it sets PID to 0 to allow tswriter to look up PMT from PAT for given service
    2. by creating a file "c:\usePATLookup.txt", it always tries to lookup PMT from PAT.


    if you're using default (1) way, when another PMT pid is seen, DB is still updated.
    if you're using new (2) way, it doesn't care to change DB, because service id is the primary key then
     

    Users who are viewing this thread

    Top Bottom