我正在开发一个项目,该项目要求我将音频从麦克风从客户端流式传输到服务器。下面显示的代码是我写的。当我同时运行客户端和服务器代码时,音频不会实时流式传输。事实上,来自客户端的音频存储在缓冲区中,当我终止客户端代码的执行时,来自服务器缓冲区的音频输出到扬声器。我究竟做错了什么?(我正在日食上开发)
服务器:
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.TargetDataLine;
//import org.apache.commons.io.output.ByteArrayOutputStream;
public class ServerStream {
private OutgoingSoudnListener osl = new OutgoingSoudnListener();
boolean outVoice = true;
AudioFormat format = getAudioFormat();
private ServerSocket serverSocket;
Socket server;
private AudioFormat getAudioFormat() {
float sampleRate = 16000.0F;
int sampleSizeBits = 16;
int channels = 1;
boolean signed = true;
boolean bigEndian = false;
return new AudioFormat(sampleRate, sampleSizeBits, channels, signed, bigEndian);
}
public ServerStream() throws IOException{
try{ …Run Code Online (Sandbox Code Playgroud) 我正在 Flutter 中构建 VoIP 呼叫应用程序。我需要提醒用户并在屏幕上显示一个小部件,以便用户可以在不解锁手机的情况下接听或拒绝来电。所以基本上我需要一个 Flutter 版本。