use a appsrc to get more control over the socket