通过websocket传输音频文件

时间:2014-10-17 09:39:11

标签: android websocket audio-streaming wav data-transfer

我有一个在android手机中创建的wav文件,我想通过网络套接字将此文件发送到服务器。我正在使用autobahn lib进行Web套接字连接。在代码下方用于发送文件流。

byte [] buffer  = new byte [1024];
FileInputStream fis = new FileInputStream(myFile);

Log.d(TAG, "Sending...");
boolean status = true;
while (status) {
     int in = fis.read(buffer, 0, buffer.length);                
     if(in != -1){                  
         if(in < buffer.length){                         
             byte[] temp = new byte[in];                        
             for(int i=0; i<in; i++){
                 temp[i] = buffer[i];                           
             }
             mConnection.sendBinaryMessage(temp);
         } else {
             mConnection.sendBinaryMessage(buffer); 
         }                                       
     } else {
         status = false;
     }                  
 }

.wav音频文件在移动设备中正常播放。但是在服务器端,收到的文件不是正确的wav音频文件而且没有播放。

服务器代码:

public void onMessage(byte[] data, boolean arg1) {                      
    try {
        System.out.println("Starting new recording.");
        FileOutputStream fOut = new FileOutputStream(f1, true);
        fOut.write(data);
        fOut.close();                                                       
    } catch (Exception e) {
        e.printStackTrace();
    }       
}

请帮助.........

0 个答案:

没有答案