Hello, I've been trying to modify mcgw (hacked getstream by Frederick to ack as a MPEG TS proxy posted here some time ago) so it could accept HTTP input (not only RTP). I've done connecting and setting up callback function. Proxy works, but stream is corrupted as hell. I think the problem is the callback function, that TS is sent through HTTP as some 'chunked' data and it should be "extracted" prior to putting it into output_send_http but I have no clue how to accomplish that. I've been experimenting much, but here is the simplest callback to just read and pass everything to http output. It works, but as I said the stream is corrupted (many artefacts). static void http_cb_received(int fd, short event, void *arg) { int i; struct http_input_s *input = arg; size_t size = 1; #define BUFF 188 size = recv(fd, input->buffer, BUFF, 0); if (size > 0) for (i = 0; i < size; i += 188) output_send_http(input->output, input->buffer + i); } Can you point me how to do proper callback function that would read part of the input, extract MPEG TS and send it further ? With RTP input it looked much simpler :/ -- .: Jakub Pawel Glazik, .: email & jabber: zytek<at>nuxi.pl