SamDel / ChromeCast-Desktop-Audio-Streamer

Stream the sound of your desktop to your Chromecast Audio device
MIT License
412 stars 30 forks source link

DAS Stopped Working #57

Closed FA-Bubba closed 4 years ago

FA-Bubba commented 4 years ago

Running v 2.4.14 continuously for 6 days, casting to two Speaker Groups. Sometime overnight, the DAS quit working, and Windows displayed the attached Error Box. No additional data was available, and Windows closed the App, so I could not get the Log File. Windows 10 Pro 64-bit, with 16 GB RAM.

It seemed to be very stable throughout the week until this happened. I restarted DAS, and it is running OK now,

DAS_StoppedWorking

SamDel commented 4 years ago

Is there a message in the Event Log?

FA-Bubba commented 4 years ago

No obvious messages in the Windows Event Viewer. Let me know if there is a specific Key or Folder I should look in.

SamDel commented 4 years ago

Application crashes are in the 'Application' folder:

image

FA-Bubba commented 4 years ago

Looks like it happened around 2:23 AM. I included about 24 hours of events in case something else is a factor.

2019-09-26-27-Events.zip

SamDel commented 4 years ago

Thanks, just what I needed!

The Chromecast devices send messages in a specific format called 'Protocol Buffers'. In your case it looks like a (corrupted) message was received that couldn't be parsed.

In 2.4.15 messages that can't be parsed are ignored.

Here's the error message:

Application: ChromeCast.Desktop.AudioStreamer.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: Google.ProtocolBuffers.InvalidProtocolBufferException
   at Google.ProtocolBuffers.CodedInputStream.ReadTag(UInt32 ByRef, System.String ByRef)
   at ChromeCast.Desktop.AudioStreamer.ProtocolBuffer.CastMessage+Builder.MergeFrom(Google.ProtocolBuffers.ICodedInputStream, Google.ProtocolBuffers.ExtensionRegistry)
   at Google.ProtocolBuffers.AbstractBuilderLite`2[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].MergeFrom(Byte[])
   at ChromeCast.Desktop.AudioStreamer.ProtocolBuffer.CastMessage.ParseFrom(Byte[])
   at ChromeCast.Desktop.AudioStreamer.Communication.DeviceReceiveBuffer.ProcessMessage(Byte[])
   at ChromeCast.Desktop.AudioStreamer.Communication.DeviceReceiveBuffer.ParseMessages(Byte[])
   at ChromeCast.Desktop.AudioStreamer.Communication.DeviceConnection.DataReceived(System.IAsyncResult)
   at System.Net.LazyAsyncResult.Complete(IntPtr)
   at System.Net.LazyAsyncResult.ProtectedInvokeCallback(System.Object, IntPtr)
   at System.Net.Security._SslStream.ProcessFrameBody(Int32, Byte[], Int32, Int32, System.Net.AsyncProtocolRequest)
   at System.Net.Security._SslStream.ReadFrameCallback(System.Net.AsyncProtocolRequest)
   at System.Net.AsyncProtocolRequest.CompleteRequest(Int32)
   at System.Net.FixedSizeReader.CheckCompletionBeforeNextRead(Int32)
   at System.Net.FixedSizeReader.ReadCallback(System.IAsyncResult)
   at System.Net.LazyAsyncResult.Complete(IntPtr)
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Net.ContextAwareResult.Complete(IntPtr)
   at System.Net.LazyAsyncResult.ProtectedInvokeCallback(System.Object, IntPtr)
   at System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(UInt32, UInt32, System.Threading.NativeOverlapped*)
   at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32, UInt32, System.Threading.NativeOverlapped*)
FA-Bubba commented 4 years ago

OK, Thanks...

I installed v 2.4.15 When it loaded, it did not find all Speakers. I quit the App & restarted it; still didn't find all speakers. I started Casting to 2 Speaker Groups, and did a walk-though. ALL Speakers were playing, so even though DAS did not find/display all Speakers in the Device Box, ALL of the Speakers in both groups were playing...

So what is going on, and what should I try to get the missing Speakers to populate into the Device box?

Log is attached.

Log-2019-09-27-v2-4-15-SpeakerMissing.zip

SamDel commented 4 years ago

For me this will normally populate missing devices:

FA-Bubba commented 4 years ago

Thank you, I will try that next time... (All of my systems auto-reboot every Friday night, and last night's reboot fixed the issue).

SamDel commented 4 years ago

Thanks, I'm closing this issue.