LiveTV video freezes - Audio Continues
#1
Problem Description:
Live TV stream video freezes - Audio Continues

Hardware:
Frontends are AppleTV1's (3) that are running Crystalbuntu 2 with crystalHD cards. SSD harddrives. XBMC 13.2
TV signal source is HDHomerun Plus running beta firmware 2014623beta1. This also occurred on current firmware 20140606. Signal strength is >85. symbol quality is rock steady 100. Data signal quality is >85. Transcode profile is heavy, but problem remains when using mobile profile.
Backend is Win7 PC with a quad core processor. CPU load never exceeds 10% and typically is <5% when problem occurs. 8GB ram with ~30% free. Network LAN connection load is <5%.
Network is a wired gigabit connection to AppleTV's and Backend. Managed gigabit switch and all connections are direct to switch (no intermediate switches) and QOS tagging on AppleTV's and Backend server is set to highest priority. Problem remains when QOS is set to disabled. Network line analysis show no alignment or collision errors.

Further info:
Problem is intermittent. Sometimes the stream will play for an hour or so uninterrupted. Most times the problem will occur within 10 minutes of starting a stream. It occurs most frequently on one particular station (7.1) which is the highest bandwidth station, but also occurs on other stations. When playing this station directly on WMC on the backend it does not occur. Also playing this station on the ATV's through the UPnP connection HDHomerun it does not occur. Playing the HDHomerun on mobile devices using InstaTV has no problems. Thus my belief that the problem is centered around ServerWMC.

If I wait long enough (>5 minutes) the video stream will restart by itself, but will then freeze again. Most times when the freeze occurs, a "buffering" window will briefly pop up, but occasionally it will just freeze without notice.

Log file for ServerWMC can be found here: http://pastebin.com/RCSqVJiy

What I have done so far:
Bumped the Timeout_WaitForTS_MS to 20000 from the default 10000. No help from this. Also tried 30000 with no results.

ServerWMC version is 1.0.0.36 Build 1154. Frontend pvr versions are 0.2.99. Crystalbuntu version 0.3.100

AppleTV's run 1080p movies (streaming and local network NAS) files flawlessly, so I don't think the issue is there. The CPU load on the ATV's is around 55-60% when streaming Live TV. Free memory is ~125MB at idle. ~30MB when streaming.

Please help. I have ditched cable and am trying to convince my wife that this will work, but the freezing issues are a pain. Constantly restarting the stream is not a solution to her.

Thanks for the work you have done on this product. It really is a great product with just a few small problems.

Dave
Reply
#2
In the log you posted it looks like serverwmc is having trouble writing to your rec tv folder at different points after the live-tv stream is started. Any chance you can move the rec tv folder to a different disk just as an experiment?

Also all your apple TV's are transmitting the same client name 'crystalbuntu' to serverwmc. We currently have a bug related to this same-name multiple clients thing, that will be fixed in the next rev. I don't think this bug could cause what you are seeing, but that doesn't mean much. Do you know if you see this problem when only one appletv client is turned on?

I forgot, related to the first point, could there be another process running on your server machine that could be overloading the disk IO?
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#3
Hi Krusty,

Thanks for the tips.

The naming weirdness occurred after the last upgrade cycle on crystalbuntu. Prior to this, XBMC reported the actual ip address of the atv's. This was much nicer when trying to see where the HDHomerun was streaming to.

For a quick test, I have shut down two of the ATV's and am streaming the most problematic station, 7.1, to one ATV.

I am also monitoring the disk IO using Task Manager resource monitor. Right now, it looks like the ehrecvr.exe is dominate followed by ServerWMC.

I didn't think that WMC allowed any other other write location than c:\users\Public\Recorded TV ? I would love to change this to my NAS drive. I have read that windows can be tricked with an iscsi NAS drive, but otherwise that it has to be a locally attached drive. The server currently only has one local drive. I can add another for a test, but it will take a bit of time.

This is according to this:

http://www.avsforum.com/forum/26-home-th...v-nas.html

Dave
Reply
#4
Yeah that's right, wmc only uses a local drive (I have heard there is a way around this too, but can't recall what it is).
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#5
Video just froze.

Here is the pastebin: http://pastebin.com/Ps0HFcM6

Didn't see anything out of the ordinary for disk IO in perfmon.
Reply
#6
Just happened again. Saw a "System" event related to a .wtv file read in perfmon that had an large 34ms response time:

Image PID File Read (B/sec) Write (B/sec) Total (B/sec) I/O Priority Response Time (ms)
System 4 C:\Users\Public\Recorded TV\TempSWMC\LiveTV_crystalbuntu_ATSC_7.1_2014_08_21_14_33_05.wtv 6,426 0 6,426 Normal 34

Any thoughts?
Reply
#7
I assume that with only one atv running. My only thought right now is to use another disk, I know that might be a pain to setup.
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#8
you are correct...only one atv running.

appears to be a disk io issue then?

I'll have to look into an esata setup. Maybe with an SSD drive.
Reply
#9
This may be an issue with the HDHomerun. See the below thread. It looks like turning off transcoding fixes the issue. That's what I had to do to fix this issue when it was happening to me.

http://www.silicondust.com/forum2/viewto...dbbf81514b
Reply
#10
Thanks for the tip.

switched transcoding off. working so far. I will run it for awhile and see.

I will say that the problem seemed to be much less on the original firmware (20140523) version of for the homerunplus. I unfortunately upgraded the firmware as we are always so strongly encouraged to do so.

The crazy thing is, you can't downgrade firmware on these devices!

From the Homerun forum:

"NOTE:
Please note that you cannot "downgrade" or "rollback" the firmware on the HDHomeRun units! Once you are on a specific version, you have to go to the next "higher" version for an upgrade. This is a CableLabs rule and out of Silicon Dust's control.
"

This I would think would apply specifically to the HDHomerun Prime units as they are for Cablecards, whereas the Plus units are strictly OTA, but for some reason the rule seems to apply across the board.

Dave
Reply
#11
Thanks @merschdawg06. @jbatv2, I'm very curious if that's the issue, so please let us know if that solves it.
Windows Media Center PVR addon (pvr.wmc) and server backend (ServerWMC)
http://bit.ly/serverwmc
Reply
#12
Made the transcode change and so far the only thing I have seen is that now it will pixilate the image once in awhile and then display the "buffering" but, it will gracefully recover and continue on without freezing the video.

This seems to be definite progress and much more livable!

Thought that this would kill my mobile app usage, but I just checked and it still allows for transcoding to it.

I'll let this run for an hour or two and report back.

Thanks @merschdawg06 and krusty!
Reply
#13
Just a note that you can indeed trick WMC to record to a NAS drive if you iSCSI mount it. Although I guess if we are trying to fix possible disk performance issue a 1GB iSCSI network drive is unlikely to be as fast as a local drive but I suppose it could still be useful if the current disk was more of a problem. That said, it sounds like the HDHomeRun transcoding is more likely the culprit

In terms of the duplicate client name things, can you change the hostname of each appleTV box so they are unique? Otherwise when one is already watching a live stream and another requests one, it will cause the 1st one to be stopped (since ServerWMC thinks they are from the same client).

I intentionally started having non windows clients send their hostname rather than IP address to ServerWMC as "client name", however I was not aware that people often had setups with devices that didnt have unique host names
pvr.wmc TV addon and ServerWMC Backend Development Team
http://bit.ly/ServerWMC
Reply
#14
I think i can now confirm that it is the transcode that is causing my problems. Since disabling, the freezing has stopped. The picture now will pixilate and then buffer, but will then recover and continue on. This really only occurs on one station and only occasionally. This could be a reception issue as it is slightly less, than other stations, but still has a 90% strength, 90% signal quality and 100% symbol quality. I will try re-aiming my yagi antenna to increase this and find out.

I'll alert Silicon Dust to this issue, but since it works with transcoding on with their packaged software and with WMC direct, I am not sure they will offer much support. I opened a support ticket on this a few weeks ago and despite a reminder sent to them, have yet to receive any reply.

The duplicate name issue also needs resolution. I have different hostnames for each ATV, but the crystalbuntu name seems hardcoded into the software. The issue that I think this is causing is when I try to watch a Homerun stream on a second ATV, it kills the first ATV stream. I think this is due to SWMC seeing a request from "crystalbuntu" thinking it is the original ATV. I'll post this question to the STM Labs forums. If this can't be addressed, I suppose I will try Openelec.
It is interesting that one ATV can be watching a HDHomerun stream and a second can watch a recorded or youtube video stream with no problem.
Reply
#15
in terms of the client name thing, what gets sent over is the hostname from the operating system (gethostname() call) so id be surprised if there isn't somewhere you can change it. Sometimes on *nix there are a few different places to do stuff like that.

In terms of the behaviour impacts of duplicate names... it is expected that it would only be Live Streams that are impacted, because ServerWMC thinks it's the same client requesting a new live stream, so it stops the old stream first. Conversely when playing a recorded show, the client is just directly playing a file over SMB connection and not involving any logic from ServerWMC (unless its an active recording where we do remux it and I probably would expect this action to stop a live stream or other remux job on another client with the same clientname).

In any case, we have already made a fix in ServerWMC to handle clients with duplicate names but different IP addresses, so when the next release drops, you should be back to normal
pvr.wmc TV addon and ServerWMC Backend Development Team
http://bit.ly/ServerWMC
Reply

Logout Mark Read Team Forum Stats Members Help
LiveTV video freezes - Audio Continues0