So, I’ve had this problem for a while now that whenever I attempt to stream video through my computer to the Xbox it takes three attempts before I can finally start the video.  Basically, I fire up the Xbox, go to Videos, navigate to my TV folder, and then wait 30 seconds for whatever is throwing an error to time out before I get the No videos screen.  After about 60 seconds, I’m finally able to get back in to the Videos/TV folder and navigate through the TV subfolders.  I click on one and 30 seconds later I’m again staring at No videos.  One more try, and I’m finally watching some Flight of the Conchords (seriously, if you’re not already watching this show, buy the first season on DVD!).  To be fair, it’s a minor annoyance.  I am eventually able to watch my videos, but every new day requires another three attempts so definitely not ideal.  Aha!  A challenge!

So, where to begin?  Well, let’s start with Event Viewer.  I fire up the run command and type in eventvwr.  I scroll through the Application view, but nothing really jumps out.  When I switch to System, however, I find my answer:

image


Namely: The Windows Media Player Network Sharing Service service terminated unexpectedly.  It has done this 1 time(s).  The following corrective action will be taken in 30000 milliseconds: Restart the service.

My first instinct is to open up Google and find other people with similar problems.  Unfortunately, I wasn’t able to find much information.  A few people recommended clearing out the Cache folder under the Windows DRM folder, but all this did was to stop sharing from working altogether and to render my Zune subscription useless.  Don’t try this!

Thankfully I backed up my Cache folder and restoring it seemed to put everything back where it was before — complete with the three tries and I’ll play videos on my Xbox.

What’s next?  Well, I’ve always been dying for an excuse to fire up and play with WinDbg, so I start looking for how to debug Windows Services and stumble across this great article.  A few minutes of reading, and I’ve managed to attach WinDbg to the Windows Media Player Network Sharing Service.  I turn on the Command window, turn on the Xbox, navigate to Videos/TV and bam!, I see this:

TffdshowBase::Constructor
(f94.f4c): Illegal instruction – code c000001d (first chance)
TffdshowDecVideo::Constructor
TffdshowDecVideoOutputPin::Constructor
TffdshowDecVideo::Destructor
TffdshowDecVideoOutputPin::Destructor
ModLoad: 04da0000 0566a000   C:\WINDOWS\system32\xvid.ax
ModLoad: 05670000 05ed9000   C:\WINDOWS\system32\xvid.dll
(f94.ab4): Access violation – code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=3d454ab4 ebx=00000000 ecx=0417fe60 edx=0417fe50 esi=0417fe60 edi=68578b48
eip=0568d554 esp=0417fd70 ebp=028f1f20 iopl=0         nv up ei pl nz na pe cy
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00010207
*** WARNING: Unable to verify checksum for C:\WINDOWS\system32\xvid.dll
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for C:\WINDOWS\system32\xvid.dll –
xvid_5670000!xvid_encore+0×16034:
0568d554 8b0cbdd8d76a05  mov     ecx,dword ptr xvid_5670000!encore+0×46e8 (056ad7d8)[edi*4] ds:0023:a6c904f8=????????
*** WARNING: Unable to verify checksum for C:\WINDOWS\system32\xvid.ax
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for C:\WINDOWS\system32\xvid.ax -

Now, I’ll be honest, I don’t understand what half of that means, but these two lines stand out like a sore thumb:

ModLoad: 04da0000 0566a000   C:\WINDOWS\system32\xvid.ax
ModLoad: 05670000 05ed9000   C:\WINDOWS\system32\xvid.dll

My first thought is that my Xvid driver is simply out of date, has a bug, or is just tired and needs a refresh.  Either way, I navigate to the Xvid site, download and install the latest codec, restart the laptop and the Xbox and Videos/TV/Flight of the Conchords works on the first try!  Sweet!