<div dir="ltr"><div><div><div><div><div>Hi,<br><br></div>I want to create a pipeline with multisocketsink, add a socket to it and then read from it as a normal python socket.<br><br></div>If i do:<br><br>client_id = Gio.Socket().new_from_fd(wfile.fileno())<br>self.clients.append(client_id)<br>self.sink.emit("add", client_id)<br></div>while client_id in self.clients:<br></div>   time.sleep(1)<br><br></div>everything fine exept that if connection breaks on gstreamer side ( client_id gets removed by timeout), the socket just waits forever for incoming data. Adding client_id.set_timeout(1) does not help in any way<br><div><div><div><div><br></div><div>So I wanted to make a more manual approach:<br><br>client_id = Gio.Socket()<br>client_id.set_timeout(1)<br>self.clients.append(client_id)<br>while True:<br>   data = client_id.receive(1024)<br></div><div>   if not data:<br></div><div>      break<br></div><div>   else:<br></div><div>      wfile.write(data)<br>      wfile.flush()<br><br></div><div>But that does not work. I see socket being added to multisocket sink and removed after timeout. No data is passed to wfile. Just to be clear: I tried using python's own socket module, but I cannot even add this socket to gstreamer. :(<br><br></div><div>Thanks in advance!<br></div><div><br></div></div></div></div></div>