Experimental TsReader development (2 Viewers)

Owlsroost

Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    OK folks - by popular request, this thread is for discussions related to development of the MP1 'TsReader.ax' splitter/source DirectShow filter component (used by MP1 for live and recorded TV playback).

    (To install the new versions, just close MP, unzip the file and copy the new TsReader.ax into the MP program folder e.g. C:\Program Files\Team MediaPortal\MediaPortal)

    Tony

    To download the latest version, please view this post here
     

    Owlsroost

    Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    A collection of TsReader.ax versions already posted in other threads - to make life easier :)

    EDIT: Standard MP 1.2.2 (v0.4.14) TsReader.ax added. This has the graph rebuilding mod, but does not have any of the other mods the experimental versions have. It's here for convenience in case you've lost the standard MP TsReader.ax file....

    EDIT: Standard MP 1.2.1 (v0.4.12) TsReader.ax added.

    EDIT: Modified MP 1.2.2 (v0.4.14 XXX) TsReader.ax added (with fix for audio graph rebuild problems).

    EDIT: noStopMod42d added from - https://forum.team-mediaportal.com/bugreports-74/mediaportal-hangs-going-between-hd-sd-channels-100978/index5.html#post833169 - Has experimental SD/HD zapping fix and some other mods - not well tested, so may have bugs....
     

    Attachments

    • TsReader_graphRebuild_patched_2.zip
      157.2 KB
    • TsReader_300msAudio_patched_2.zip
      157.2 KB
    • TsReader_MP122.zip
      157.1 KB
    • TsReader_MP121.zip
      157.3 KB
    • TsReader_MP122_graphRebuildFix_1.zip
      157.2 KB
    • TsReader_noStopMod42d.zip
      163.3 KB

    Owlsroost

    Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    The first of the new versions - continuing from the https://forum.team-mediaportal.com/mediaportal-1-2-0-beta-540/live-tv-freeze-15-30-helps-98842/ thread.

    (To install them, just close MP, unzip the file and copy the new TsReader.ax into the MP program folder e.g. C:\Program Files\Team MediaPortal\MediaPortal)

    Quite a few changes since v29 - main one is that the data buffering is handled differently, which allows the audio renderer to buffer more data. This is an experiment to help with the problem here - https://forum.team-mediaportal.com/bugreports-74/stuttering-live-tv-since-1-2-a-101612/ - but can create some stuttering on channel changes, so I'm interested in feedback on this....

    EDIT: The sources are at https://github.com/MediaPortal/MediaPortal-1/tree/EXP-TsReader_noStopMod (a branch in the new MP Git repository)

    EDIT: noStopMod31 release attached for trials - this incorporates mm's patch and mods to try and fix the excessive stuttering that some people have been getting with v30. Feedback please :)

    EDIT: noStopMod32 release attached for trials - this has re-worked file read handling.

    EDIT: noStopMod33 added - this has more initial buffering and less audio decode/renderer buffering, so it should have less stuttering on channel changes.

    EDIT: noStopMod34 added - more buffering changes, and video 'fast sync' timestamp modification logic improved

    EDIT: noStopMod35 added - PAT version change handling mods (very experimental, trying to fix RTSP 'loop on zapping' problem), and FillBuffer() sleep handling changed to try and fix LAV video hang problems.

    EDIT: noStopMod36 added - Should generate less idle time IO read requests, timestamp limit checking modified, and timeGetTime() wraparound handled globally.

    EDIT: noStopMod37 added - fix for RTSP 'Wait for Good PAT' bug (introduced in v35), and some prefetch threshold changes.

    EDIT: noStopMod38 added - more fixes for RTSP zapping PAT change problem.

    EDIT: noStopMod39 added - as v38, but with prefetch thresholds reverted back to v36 settings.

    EDIT: noStopMod41 added - IO read thread added, another fix for RTSP zapping problem, prefetch thresholds adjusted (slightly more aggressive), seek logic mods, small mod to graph rebuild trigger code.

    EDIT: noStopMod43 added - SD/HD zapping fix from https://forum.team-mediaportal.com/...-hd-sd-channels-100978/index5.html#post833169 and a pmt (SetMediaType()) is now added to first sample delivered after OnThreadStartPlay() for video and audio pins. (This version is noStopMod42d with a minor mod/reversion to video sample delivery rate control).

    EDIT: noStopMod44 added - Fix for random 'black screen at start of play' problem introduced in v41, and mods to duration update code to (hopefully) fix the 'live' recording stop problem.

    EDIT: noStopMod45 added - Channel change (zapping) speed improvements, small duration code mods.

    EDIT: noStopMod48 added - Fix for hang/quit after seek bug, experimental workaround for UNC 'file doesn't exist' (SMB2) problem, new debug registry settings (to disable graph rebuild on video frame size change).

    EDIT: noStopMod50 added - Various H.264 header parsing, media sample PMT info, NALU start code detection, sample queue locking, video/audio 'slow motion sync' experiments/mods/fixes.

    EDIT: noStopMod52 removed - possible 'pause' bug.....

    EDIT: noStopMod54 added - Various mods to change start up behaviour and support new version of MP Audio Renderer.

    EDIT: noStopMod55 added - Buffering modified to reduce zapping times and improve compatibility with MP Audio Renderer. Bug fix for radio zapping/graph rebuild problem. Seek logic simplified, and startup is much faster when used in other players. Other internal changes & improvements.

    EDIT: noStopMod57 added - Significant changes to H.264 code to fix problems with some IPTV streams. Changes to buffer under-run logic.

    EDIT: noStopMod59 added - Fixed a memory allocation problem in H264 header parser. Now compatible with MP 1.3.0 DVBSub3 filter. Improved compatibility with other players e.g. PotPlayer (subtitle output pin will not connect to any filter when used outside MP).

    EDIT: noStopMod59b added - Crash with MP 1.3.0 subtitle filter fixed.

    EDIT: noStopMod59c added - Added flush when large negative timestamp delta detected. Compatible with MP 1.2.3 and MP 1.3.0

    EDIT: noStopMod63b added - Several minor bug fixes and updates, plus added a better fallback when Seeking fails due to PCR problems. Compatible with MP 1.2.3 and MP 1.3.0

    EDIT: noStopMod65 added - video FPS is now calculated from stream timestamps (if possible) to improve compatibility with MPAR. Registry key added to allow FFDShow sync workaround to be forced 'on' (to fix an A/V sync problem when Core CC Parser filter is inserted between TsReader.ax and FFDShow video decoder) - HKEY_CURRENT_USER\Software\Team MediaPortal\TsReader, set "ForceFFDShowSyncFix" to '1' to force on (default is '0')

    EDIT: noStopMod66 added - updates to FPS code to sanity check and correct stream timestamp FPS values.

    EDIT: noStopMod68 added -
    • New feature: Registry key added to adjust data buffering time - HKEY_CURRENT_USER\Software\Team MediaPortal\TsReader, set "BufferingDelayInMilliSeconds" to a (decimal) value in milliseconds (range is 0 to 2000, default is 0). Note - this will add delay to live TV channel changes since it needs to build up the buffer before play starts.
    • Fix for crashes when TV Server preview is closed.
    • Logging changed to use async system (same as dshowhelper).
    • Improvements to FPS detection code.
    EDIT: noStopMod69 added -
    • Improvements to FPS detection code.
    • A 'pmt' is now added to video output pin after all channel changes (experiment).
    • For Devs only - new "SubPinConnectAlways" reg value, allows Subtitle filter to connect when used outside of MP.
    EDIT: noStopMod70 added - fix for logging problem when log folder path doesn't exist.

    EDIT: v73_dev added -
    • This version is compatible with MP 1.3.0 and later only (no support for 1.2.3)
    • Several bug fixes (Mantis 4252, 4269, 4270 and 4341)
    • Some experimental changes to try and improve RTSP behaviour - need feedback on this from client/server users - is it better/worse/no change ?
    • Sources for this version are at - https://github.com/MediaPortal/MediaPortal-1/tree/EXP_TsReader_RTSP_dev
    EDIT: v77 added here - https://forum.team-mediaportal.com/...eader-development.102693/page-90#post-1035833 (with fix for NZ Freeview DVB-T problems).

    Tony
     

    Attachments

    • TsReader_noStopMod59c.zip
      166.4 KB
    • TsReader_noStopMod63b.zip
      167 KB
    • TsReader_noStopMod65.zip
      168.1 KB
    • TsReader_noStopMod66.zip
      168.2 KB
    • TsReader_noStopMod68.zip
      171.7 KB
    • TsReader_noStopMod69.zip
      171.8 KB
    • TsReader_noStopMod70.zip
      172 KB
    • TsReader_0_0_73_dev.zip
      174.2 KB
    Last edited:

    mylle

    Portal Pro
    April 14, 2005
    574
    66
    Denmark
    Home Country
    Denmark Denmark
    Hi Owlsroost,

    Thanks for all your hard work.

    I have stutter on channel change. Sometimes it dissapears again, sometimes not and audio goes out.

    logs attached. (using tourettes blu-ray build)

    Regards
    Mylle
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    tony: I have a patch for this TsReader issue. I wonder if we could join forces and get the fix integrated into your builds? I would rather not start yet another TsReader related thread and obviously the more people that can test fixes, the better... :)
     

    Owlsroost

    Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    @Tony: I have a patch for this TsReader issue. I wonder if we could join forces and get the fix integrated into your builds? I would rather not start yet another TsReader related thread and obviously the more people that can test fixes, the better... :)

    Yes, good idea - can you post the patch please ?

    Tony
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    Will do as soon as I get home from work.

    mm
     

    Owlsroost

    Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    Sometimes it dissapears again, sometimes not and audio goes out.

    logs attached. (using tourettes blu-ray build)

    Regards
    Mylle

    Mmm, I see what you mean - from the logs, it looks like the audio renderer keeps requesting data (so it's buffers never seem to fill up) sometimes.....

    Thanks for the feedback.

    Tony
     

    Users who are viewing this thread

    Top Bottom