我编写了一个应用程序,通过TCP从客户端到服务器传输音频,但它不起作用,即没有声音输出.你能检查我的代码告诉我它有什么问题吗?

客户:

public void startStreaming() {

Thread streamThread = new Thread(new Runnable() {

@Override

public void run() {

try {

int minBufSize =AudioRecord.getMinBufferSize(sampleRate, channelConfig, audioFormat);

Log.d("VD ", "Bufer intioalised "+minBufSize);

short[] buffer=new short[minBufSize];

Log.d("VS","Buffer created of size .c" + minBufSize);

// DatagramPacket packet;

final InetAddress destination = InetAddress.getByName(target.getText().toString());

port=Integer.parseInt(target_port.getText().toString());

Socket socket=new Socket(destination,port);

DataOutputStream dos=new DataOutputStream(new BufferedOutputStream(socket.getOutputStream()));

Log.d("VS", "Address retrieved.c");

if (minBufSize != AudioRecord.ERROR_BAD_VALUE) {

recorder = new AudioRecord(MediaRecorder.AudioSource.MIC,sampleRate,channelConfig,audioFormat,minBufSize);

Log.d("VS", "Recorder initialized.c");}

if (recorder.getState() == AudioRecord.STATE_INITIALIZED){

Log.d("VS", "Recorder working....c");

recorder.startRecording();}

BufferedWriter input;

while(status == true) {

//reading data from MIC into buffer

int bufferReadResult = recorder.read(buffer, 0, buffer.length);

dos.write(buffer,0,bufferReadResult);

dos.flush();

}

} catch(UnknownHostException e) {

e.printStackTrace();

} catch (IOException e) {

Log.e("IOException message:",e.getMessage().toString());

}

}

服务器:

public void startStreaming(){

线程streamThread = new Thread(new Runnable(){

@Override

public void run() {

try {

int minBufSize =1024;//recorder.getMinBufferSize(sampleRate,channelConfig,audioFormat);

ServerSocket serversocket = new ServerSocket(50005);

// DatagramSocket socket = new DatagramSocket(50005);

byte[] buffer = new byte[1024];

if (minBufSize != AudioRecord.ERROR_BAD_VALUE) {

speaker = new AudioTrack(AudioManager.STREAM_MUSIC,sampleRate,channelConfig,audioFormat,minBufSize,AudioTrack.MODE_STREAM);

speaker.play();

Log.d("VR", "spekaer playing...");

}

// }

Log.d("VR", ""+status);

BufferedReader input;

InputStream is;

ObjectInputStream ois;

ByteArrayInputStream baiss;

socket = serversocket.accept();

DataInputStream dis=new DataInputStream(new BufferedInputStream(socket.getInputStream()));

while(status == true) {

//DatagramPacket packet = new DatagramPacket(buffer,buffer.length);

InputStream in = socket.getInputStream();

Log.d("content :", socket.getOutputStream().toString());

int i=0;

while (dis.available() > 0 && i < buffer.length) {

buffer[i]=(byte) dis.readShort();

i++;

}

speaker.write(buffer,0,buffer.length);

请给我你最好的帮助.

java 语音传输_java – 通过tcp流式传输语音相关推荐

  1. java视频流传输_java – 使用Xuggler流式传输视频

    我能够使用下面的代码成功地与Xuggler一起播放视频.我需要能够从inputStream而不是文件流.我尝试使用注释掉的代码来创建一个Icontainer.当我注释掉代码时,我确实修改了getTes ...

  2. Java 异步响应servlet_java – 使用jersey流式传输大型响应,异步

    我想允许客户端(包括非常慢的客户端)从JAX-RS(泽西岛)Web服务下载大文件,我被卡住了.似乎JAX-RS中的异步胖子不支持这一点. >如果必须等待资源在服务器端可用,AsyncRespon ...

  3. ChatGPT流式传输(stream=True)的实现-OpenAI API 流式传输

    文章目录 一.介绍: 二.不足之处: 三.示例代码: 0. 引入库: 1. 不使用stream的后台代码(官方示例): 2. 使用stream的后台代码(官方示例): 3. 实际生产环境的示例后台代码 ...

  4. 流式传输 之二----流式传输条件

    在网络上传输音视频(A/V)等多媒体信息主要有下载和流式传输两种.流式传输包括:实时流式传输和顺序流式传输. 流式传输需要两个条件: 缓存 因为互联网进行断续的异步传输是以包传输为基础的.对于一个存储 ...

  5. java流式传输对象_Java性能:面向教学与流式传输

    java流式传输对象 在for循环中向上或向下计数是最有效的迭代方式吗? 有时答案既不可行. 阅读这篇文章,了解不同迭代品种的影响. 迭代性能 关于如何以高性能进行迭代有很多观点. Java中的传统迭 ...

  6. java流式传输对象_使用Java 8在地图上流式传输

    java流式传输对象 在本文中,我将向您展示如何在标准Java映射上有效地实现Speedment Open Source流,并将Stream接口扩展为MapStream! 即使在复杂的情况下,此添加将 ...

  7. Java:以CSV格式流式传输JDBC结果集

    在上一篇文章中 ,我展示了如何将java.sql.ResultSet转换为JSON并将其流回调用方. 这篇文章是关于以CSV格式流式传输的. 流式传输使您可以一点一点地传输数据,而不必将所有数据都加载 ...

  8. Java:将JDBC ResultSet作为JSON流式传输

    这篇文章展示了如何将java.sql.ResultSet转换为JSON并将其流回调用方. 如果要将大型数据集从JDBC数据源以JSON格式发送到Web应用程序,此功能很有用. 流式传输使您可以一点一点 ...

  9. Java:逐步读取/流式传输CSV文件

    我一直在做一些涉及读取CSV文件的工作,而我一直在使用OpenCSV ,而我的最初方法是逐行读取文件,解析内容并将其保存到地图列表中. 当文件的内容适合内存时,此方法有效,但对于较大的文件来说是个问题 ...

  10. tcp是流式传输协议-tcpdump抓包印证

    结论: 1. tcp 是流式传输协议,"流(stream)"的 含义 像河流 一样,包和包之间紧紧相互挨着,内核协议栈(tcp)不会使用特殊分隔符分割,实质上它也根本不关心这些流里 ...

最新文章

  1. ML基石_2_LearnAnswer2
  2. 国内哪里培训python比较好-python培训机构怎么选择?哪家比较靠谱?
  3. HDUOJ----剪花布条
  4. java 内部类 加载_java内部类及类加载顺序
  5. Windows Azure Storage论文解读
  6. java 文件写_java写入文件的几种方法分享
  7. Android Calender
  8. 一步一步学习Servlet之Cookie使用
  9. 我的文件夹下面有汉字的路径,matlab 不识别
  10. JZ3-从尾到头打印链表
  11. iOS开发之tableHeaderView的那些坑
  12. dede使用方法---用js让当前导航高亮显示
  13. ACM MM论文放榜!淘系技术内容互动算法团队4篇论文入选!
  14. 分享6款国内、外开源PHP轻论坛CMS程序
  15. [SUCTF 2019]EasyWeb---无参数RCE
  16. PCB Layout爬电距离、电气间隙如何确定-安规
  17. java个人所得税if语句_java_计算个人所得税
  18. html 页面换皮肤,HTML中如何实现更换网页皮肤
  19. mysql创建软连接_18.4.2 建立MySQL的软链接
  20. Sicily2000——Toy Shopping

热门文章

  1. vs2015——拖动选项卡导致软件崩溃重启
  2. Web前端开发面试题——将字符串转成驼峰写法
  3. HUAWEI内网最新发布了一份452页网络协议手册,GitHub一夜霸榜
  4. linux 卸载theano,centos 安装theano
  5. java cropper_Image Cropper 的 JAVA 支持
  6. android 高仿国美,iOS高仿国美、二次元应用、点赞喷射动画、电影筛选页等源码...
  7. 二维数组冒泡排序 java
  8. [渝粤教育] 江苏师范大学 大学计算机基础 参考 资料
  9. Centos7 Springboot 启动脚本
  10. kmeans聚类算法_k-means聚类算法原理与参数调优详解