Multiseat: A lot of stuttering, artifacts, pixelation, freezes with RTSP/UNC (2 Viewers)

Snoopy87

Portal Pro
August 12, 2012
470
167
Home Country
Germany Germany
Hi,

with UNC and delay it is very much better! :) It is working almost perfect, but not good as singleseat setup. A few times per hour there are still a few artifacts. And yesterday after a few hours of watching TV it started to endless show artifacts.

Btw: Sometimes MP Client crash when my HTPC is going to hibernate. The exception was not logged, but written to Event VIewer:

Anwendung: MediaPortal.exe
Frameworkversion: v4.0.30319
Beschreibung: Der Prozess wurde aufgrund einer unbehandelten Ausnahme beendet.
Ausnahmeinformationen: System.AccessViolationException
Stapel:
bei DirectShowLib.IMediaControl.GetState(Int32, DirectShowLib.FilterState ByRef)
bei MediaPortal.Player.TSReaderPlayer.Cleanup()
bei MediaPortal.Player.TSReaderPlayer.CloseInterfaces()
bei MediaPortal.Player.BaseTSReaderPlayer.Stop(Boolean)
bei MediaPortal.Player.BaseTSReaderPlayer.Stop()
bei MediaPortal.Player.g_Player.doStop(Boolean, Boolean)
bei MediaPortal.Player.g_Player.Stop()
bei MediaPortalApp.OnDeviceChange(System.Windows.Forms.Message ByRef)
bei MediaPortalApp.WndProc(System.Windows.Forms.Message ByRef)
bei System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
bei System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
bei System.Threading.Monitor.Enter(System.Object)
bei log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)
bei log4net.Util.AppenderAttachedImpl.AppendLoopOnAppenders(log4net.Core.LoggingEvent)
bei log4net.Repository.Hierarchy.Logger.CallAppenders(log4net.Core.LoggingEvent)
bei log4net.Repository.Hierarchy.Logger.ForcedLog(System.Type, log4net.Core.Level, System.Object, System.Exception)
bei log4net.Repository.Hierarchy.Logger.Log(System.Type, log4net.Core.Level, System.Object, System.Exception)
bei log4net.Core.LogImpl.Debug(System.Object)
bei MediaPortal.Common.Utils.Logger.CommonLog4NetLogger.Debug(MediaPortal.Common.Utils.Logger.CommonLogType, System.String, System.Object[])
bei MediaPortal.ServiceImplementations.Log4NetWrapper.Debug(System.String, System.Object[])
bei MediaPortal.GUI.Library.TexturePacker.LoadPackedSkin()
bei MediaPortal.GUI.Library.TexturePacker.PackSkinGraphics(System.String)
bei MediaPortal.D3D.RecreateSwapChain()
bei MediaPortalApp.OnDisplayChange(System.Windows.Forms.Message ByRef)
bei MediaPortalApp.WndProc(System.Windows.Forms.Message ByRef)
bei System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
bei System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
bei MediaPortal.Util.Win32API.PeekMessage(MSG ByRef, IntPtr, Int32, Int32, Int32)
bei MediaPortal.D3D.OnIdle(System.Object, System.EventArgs)
bei System.Windows.Forms.Application+ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32)
bei System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
bei System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)
bei System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)
bei System.Windows.Forms.Application.Run(System.Windows.Forms.Form)
bei MediaPortalApp.Main(System.String[])
 

Owlsroost

Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    You are still getting these Read() errors:

    Code:
    [2014-08-29 23:41:40,021] [ 7ea0048] [1600] - FileReader::Read() read failed, Error = 0x80090006, Ungültige Signatur, filename = \\HomeServer\R\live5-0.ts.tsbuffer
    [2014-08-29 23:41:41,178] [ 7ea0048] [1600] - FileReader::Read() read failed, Error = 0x80090006, Ungültige Signatur, filename = \\HomeServer\R\live5-0.ts.tsbuffer
    [2014-08-29 23:41:51,136] [ 7ea0048] [1600] - FileReader::Read() read failed, Error = 0x80090006, Ungültige Signatur, filename = \\HomeServer\R\live5-0.ts.tsbuffer
    [2014-08-29 23:41:55,411] [ 7ea0048] [1600] - FileReader::Read() read failed, Error = 0x80090006, Ungültige Signatur, filename = \\HomeServer\R\live5-0.ts.tsbuffer
    [2014-08-29 23:42:14,293] [ 7ea0048] [1600] - FileReader::Read() read failed, Error = 0x80090006, Ungültige Signatur, filename = \\HomeServer\R\live5-0.ts.tsbuffer

    ...which possibly suggests that the Wi-Fi network is not very responsive or reliable sometimes (Windows is returning those errors, instead of returning the file data that has been requested by TsReader).
     

    Snoopy87

    Portal Pro
    August 12, 2012
    470
    167
    Home Country
    Germany Germany
    Currently I'm unable to solve those error messages. I tried a lot tips, but none of them worked.

    Are you sure, that the issue is caused by this? Because I have hundreds of those "Invalid Signature" errors, but only a handful glitches within an hour... While watching movies the same way (UNC, same server) I never have any glitches.
     

    HomeY

    Test Group
  • Team MediaPortal
  • February 23, 2008
    6,475
    4,645
    49
    ::1
    Home Country
    Netherlands Netherlands
    While watching movies the same way (UNC, same server) I never have any glitches.
    UNC uses the TCP protocol, where RTSP uses UDP (which simply drops packets when they get lost/corrupted).
    That probably explains the better behavior with UNC.
     

    Snoopy87

    Portal Pro
    August 12, 2012
    470
    167
    Home Country
    Germany Germany
    That makes sense, but as said, I'm using UNC for watching TV too! So I don't understand what's the difference between reading the .ts-File from a SMB Share via UNC and reading a mkv from the same SMB share via UNC. And due to the fact that I have hundreds of 0x80090006 errors an hour, I don't understand why this should be the cause why I have a handfull glitches within an hour? Shouldn't I have hundreds of glitches then and shouldn't I have glitches while watching mkv files the same way?
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    And due to the fact that I have hundreds of 0x80090006 errors an hour, I don't understand why this should be the cause why I have a handfull glitches within an hour? Shouldn't I have hundreds of glitches then and shouldn't I have glitches while watching mkv files the same way?
    Well, if you don't believe that those errors are the cause you should post new log files and specify exactly (date/time + channel) when you see the glitches.
     

    Snoopy87

    Portal Pro
    August 12, 2012
    470
    167
    Home Country
    Germany Germany
    I still can't get it to work. It is very frustrating.

    What I have found out so far:
    - I got hundreds and thousands of those 0x80090006 errors, but TSReader has only sometimes, randomly problems
    - I searched the whole web, tried all possible tips and tricks to fix the 0x80090006 issue, without any success
    - This only happens with Live TV
    - Today I found out this interesting thing:
    - copying any file from my server to my htpc is working fine (Windows Explorer), that's why watching movies is working great
    - copying the timeshift-file is NOT WORKING. I also get the error when I try to copy the file with Windows Explorer randomly
    - TV Server is writing to 250 MB splitted timeshift files. Copying any timeshift file, which is not the current one, where TSWriter is writing to, is also working
    - Only copying the timeshift file, where TSWriter is currently writing to, is causing the 0x80090006 error randomly!

    Enabling/Disabling Firewall, Windows Defender, changing the buffer value in registry, etc. have no effect to the issue.

    So what does that mean now? Is there anything wrong with creating the file stream on TSWriter side? Are you setting all flags that this file is not blocked? Any ideas why this issue is happening only with the timeshift file where TSWriter is currently writing to?

    Best regards
    Sascha

    Edit: It seems when copying the timeshift file with Windows Explorer, that the error only happens when the copying process is reaching position where no data are written already or where TSWriter is currently writing to. Does that mean that TSReader is to fast? that buffering is not possible, because those data were not written yet? But the error also happens with 0ms buffer value.
     
    Last edited:

    davidpmays

    MP Donator
  • Premium Supporter
  • December 10, 2010
    81
    4
    Home Country
    United States of America United States of America
    I am here because I have been experiencing the same problems. During my research I remembered a few years back (1-20 :) ) I had this issue and it was the port number for RTSP streaming. I changed mine from 554 to 1554, totally arbitrary for me I just added a leading 1, and straightaway every thing worked. Now I need to track down what has been hopping on port 554 and messing me up. If anyone else is working on this I have recently added to my server, dlink cameras which include the dlink device pack and d-link D-ViewCam, windows media center with an extender, playready pc runtime, adobe flash player 15 plugin and Handbrake 0.9.9.1. It may be one of those and maybe something else altogether. If I figure it out I will post my findings.

    The key is to change the port number in TV Server-Streaming Server from 554 to something else. That worked for me.
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    David, thanks for your input. :)

    From your discussion of the RTSP port config it sounds like you're using RTSP instead of UNC shares to access timeshift files, and therefore by definition you wouldn't get the 0x80090006 errors Sascha is currently seeing.

    If changing the streaming server port is helpful to you then we might suspect that (a) some kind of security software on your server is affecting traffic passing through that port or (b) some other software is already listening on that port.
    I don't know what security software you have installed, but you can use netstat -an on the command line to confirm which ports are in use.

    Regards,
    mm
     

    Snoopy87

    Portal Pro
    August 12, 2012
    470
    167
    Home Country
    Germany Germany
    @mm:

    Do you have any idea, why the 0x80090006 error only happens with the current splitted timeshift file, where TSWriter is writing to and why this is not happening with all previous splitted timeshift files from the same timeshift recording? There is no anti virus software or any other security software blocking this file.

    The last two days I have suddenly absoletly no visual glitches, even though I have thousands of the 0x80090006 erros in the log file. So maybe it could be that it is random if TSReader is still able to read the neccessary bytes or reading the bytes exactly while the 0x80090006 error occured. And then, when this happens, there is still a main problem with the TSReader that whenever such problem occur for a few bytes or frames, the TSReader is not able show the correct frames after this issue, so that you endless see glitches (artifacts, pixelation, etc.) until you switch the channel. So the issue is not there anymore, but TSReader is still struggling with a previous issue. I don't know if this could be also fixed, to make the TSReader more robust and error tolerant. I noted this behavior many times in the past. Whenever there is any short issue, the playback struggles endless after that.
     

    Users who are viewing this thread

    Top Bottom