Android MediaRecorder中录制的块的回调

Android MediaRecorder中录制的块的回调,android,callback,streaming,audio-recording,mediarecorder,Android,Callback,Streaming,Audio Recording,Mediarecorder,我正在尝试使用Media Recorder类从麦克风录制声音。在前面提到的类中,我们刚刚设置了OutputFile方法来设置输出文件,但是我需要一个特定录制语音的缓冲区,我的意思是我需要一个回调方法,在那个时候返回一块录制的字节,我将把提到的字节发送到另一个设备 实际上,我想通过套接字将录制的语音流式传输并发送到另一台设备,但不保存录制的语音,然后读取文件并发送,因为这会导致意外延迟…Alireza 这很容易做到。您所要做的就是设置一个套接字,从该套接字创建一个ParcelFileDescrip

我正在尝试使用Media Recorder类从麦克风录制声音。在前面提到的类中,我们刚刚设置了OutputFile方法来设置输出文件,但是我需要一个特定录制语音的缓冲区,我的意思是我需要一个回调方法,在那个时候返回一块录制的字节,我将把提到的字节发送到另一个设备

实际上,我想通过套接字将录制的语音流式传输并发送到另一台设备,但不保存录制的语音,然后读取文件并发送,因为这会导致意外延迟…

Alireza

这很容易做到。您所要做的就是设置一个套接字,从该套接字创建一个ParcelFileDescriptor,然后在setOutputFile中设置该文件描述符。这将设置流媒体部分,但之后您将遇到一些文件格式问题。这是因为MediaRecorder保留文件的头空间,但仅在流完成后写入。为了在服务器端拥有一个功能文件,您必须解析头文件,并将其写入文件(或缓冲区)的开头

祝你好运, B-Rad

Alireza

这很容易做到。您所要做的就是设置一个套接字,从该套接字创建一个ParcelFileDescriptor,然后在setOutputFile中设置该文件描述符。这将设置流媒体部分,但之后您将遇到一些文件格式问题。这是因为MediaRecorder保留文件的头空间,但仅在流完成后写入。为了在服务器端拥有一个功能文件,您必须解析头文件,并将其写入文件(或缓冲区)的开头

祝你好运,
B-Rad

如果你想得到更多帮助,试着回答几个问题,这样你就有足够的声誉来获得赏金。如果你想得到更多的帮助,试着回答几个问题,这样你就有足够的声誉来悬赏。或者用更多关于你的问题和你尝试过的内容来扩展这个问题。嗨,谢谢你的回答,你说我可以把它写在流媒体模式的文件中,对吗?如果是这样的话,我可以在录音机仍在录音时读取一个流块吗?或者我应该等到写文件完成?嗨,谢谢你的回复,你说我可以把它写在流媒体模式的文件中,对吗?如果是这样的话,我可以在录音机仍在录音时读取一个流块吗?或者我应该等到写完文件再说?