Buongiorno, avrei l'esigenza di rilevare dei pacchetti RTP. Mi servirebbe solo determinare che sono presenti, non riprodurli. I pacchetti arrivano da un indirizzo di Multicast tipo 227.1.10.101 e da un certo port. Io ho scritto quanto segue:
Dim multicast As IPAddress
IPAddress.TryParse(DestAddress, multicast)
udp.JoinMulticastGroup(multicast)
Dim remoteEndPoint = New IPEndPoint(multicast, DestPort)
Try
While True
udp.Receive(remoteEndPoint)
AudioIncoming = True
End While
Catch ex As SocketException
l.WriteLine(ex.Message)
AudioIncoming = False
Catch abortException As ThreadAbortException
AudioIncoming = False
l.WriteLine("Multicast receiver stopped")
End Try
Pur essendo il remoteEndPoint formalmente corretto (227.1.10.101:port) il socket mi restituisce sempre un timeout come se non ricevesse.
Ovviamente i pacchetti in rete sono presenti.
Evidentemente ho istruito male il socket, qualcuno ha esperienza sull'argomento?
Grazie.