2014-07-19 18 views
8

Volevo eseguire un test di funzionamento della più semplice implementazione di SignalR e WebRTC. Ho ospitato il codice in https://github.com/foyzulkarim/WebRtcSignalR WebRTC WebSocket è già in stato CHIUSURA o CHIUSO

Ho creato due file diversi "index.html" e "index1.html". In index.html ho trasmesso un file video tramite signalr ed è andato molto bene. Ma quando ho appena sostituito il file video esistente con il feed di WebCam, ha iniziato a ricevere errori.

Dopo un paio di secondi in esecuzione, ho iniziato a ricevere questo errore "WebSocket è già in stato CHIUSO o CHIUSO." Ho provato a rallentare ma nessun cambiamento, ancora ottengo l'errore. Qualche idea sul perché potrebbe succedere?

immagine Errore enter image description here

È possibile controllare il video che ho http://1drv.ms/1meM1OI

+0

a che punto della PeerConnection (dal codice presumo una connessione peer in WebRTC) viene visualizzato l'errore? –

+0

non ho alcuna connessione peer. prendo il feed sul tag video, quindi lo visualizzo su tela. quindi ottenere il dataUrl dalla tela. quindi inviarlo a signalr per la trasmissione. il problema è che questo approccio funziona bene con un file video, ma non per il feed della webcam. –

risposta

2

La dimensione del messaggio sembra essere il problema chiave qui.

Nel tuo progetto, ogni frame di video è di circa 40k ma ogni frame di cam è più di 140K. In realtà, in index.html quando trasmetti il ​​video, dopo circa 20 secondi, ci saranno diversi frame più grandi di 70k che ti daranno lo stesso errore.

Ho provato a inviare alcuni messaggi stringa lunghi come test e ottengo errori quando il messaggio è più lungo di un certo valore. Tuttavia, non sono riuscito a trovare nella documentazione una limitazione definita della lunghezza del messaggio o della densità del messaggio.

+0

Proverò a farlo, quindi alcuni funzionano secondo il tuo suggerimento. Software antivirus –

-1

Ho avuto un problema simile a eseguire websocket app server su Glassfish 4 con porta 8080, Dopo aver cambiato la mia porta su un'altra funziona (ad es. 8887), probabilmente questa è una soluzione temporanea prima di trovare la soluzione permanente per la porta 8080.

Modifica: trovata la causa principale, il mio antivirus utilizzava la porta 80 che viene utilizzata da websocket. Se trovi il problema simile controlla il tuo antivirus/altra porta di applicazione.

+0

sul lato server? o lato client? Grazie, – 69444091

+0

In realtà non sono abbastanza sicuro dato che era in fase di sviluppo (client e server situati sullo stesso pc), mi dispiace per quello ... –

Problemi correlati