RTP: drain DeviceSocket before starting DeviceThread.

Change-Id: I9c0a8fb3c115449926472ae575a6aea3910525c4
diff --git a/src/jni/rtp_jni/AudioGroup.cpp b/src/jni/rtp_jni/AudioGroup.cpp
index 8c76235..390cb4b 100644
--- a/src/jni/rtp_jni/AudioGroup.cpp
+++ b/src/jni/rtp_jni/AudioGroup.cpp
@@ -479,6 +479,9 @@
 
         bool start()
         {
+            char c;
+            while (recv(mGroup->mDeviceSocket, &c, 1, MSG_DONTWAIT) == 1);
+
             if (run("Device", ANDROID_PRIORITY_AUDIO) != NO_ERROR) {
                 LOGE("cannot start device thread");
                 return false;
@@ -663,7 +666,8 @@
     tv.tv_sec = 0;
     tv.tv_usec = 1000 * sampleCount / sampleRate * 500;
     if (setsockopt(pair[0], SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv)) ||
-        setsockopt(pair[0], SOL_SOCKET, SO_RCVBUF, &output, sizeof(output))) {
+        setsockopt(pair[0], SOL_SOCKET, SO_RCVBUF, &output, sizeof(output)) ||
+        setsockopt(pair[1], SOL_SOCKET, SO_SNDBUF, &output, sizeof(output))) {
         LOGE("setsockopt: %s", strerror(errno));
         return false;
     }