- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 AsyncTask
as executeOnExecutor()
进行并行执行时遇到问题,但在发送和接收时我的语音延迟(400 毫秒到 600 毫秒)声音的。这是我的代码:
通话录音代码:
private void startRecording() {
recorder = new AudioRecord(MediaRecorder.AudioSource.MIC,
RECORDER_SAMPLERATE, RECORDER_CHANNELS,
RECORDER_AUDIO_ENCODING, BufferElements * BytesPerElement);
recorder.startRecording();
isRecording = true;
/*
* Schedule a task for repeated fixed-rate execution after a specific
* delay has passed.
*/
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
bData = new short[BufferElements];
while (isRecording) {
// gets the voice output from microphone to byte format
/*
* Reads audio data from the audio hardware for recording
* into a buffer.
*/
recorder.read(bData, 0, BufferElements);
if (AudioRecord.ERROR_INVALID_OPERATION != 0) {
/* Send the audio voice data to server */
SendAudio();
}
}}, 0, 1);
}
当两个用户之间进行通话时,首先发起通话,如图所示。
------>>从用户1调用到用户2发起调用=0
如果 user2 接到电话,Initiate call = 1 <<------
如果 initiate call = 1,则在两个用户之间传输数据,即发送和接收语音数据。
------>>当Initiate call = 1时,传输数据
发送和接收语音数据<<-------
播放音频数据有什么问题?
播放音频时出现语音延迟。发送和接收响应之间的时间过长,大约为 400 毫秒到 600 毫秒。我需要做什么来解决这个问题?第一次持有5个数据 block ,当它接收到5个音频数据时,立即依次开始播放,如上代码所示。
最佳答案
尝试将 5 个音频数据减少到 3 个? - 并不总是最好的主意,但它可以提供帮助。带宽如何,是否足够传输舒适?网络延迟如何?做一个 ping ,如果有 400 毫秒,那么你不能做太多。
关于java - 异步任务 : Implementing executeOnExecutor() thread class in AudioTrack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13207824/
我的 android 应用程序中运行的一些异步任务有点问题。由于我正在使用一些网络 IO,它有时可能需要比预期更长的时间并阻止其他异步任务运行。 我需要保持目标和最小 sdk 版本不变,但它们的目标是
使用 execute() 有什么区别?和 executeOnExecuter() ? execute() 怎么样?默认执行任务? (串行还是并行?) 新的 SDK >16 应该使用什么? 对任务使用并
下面的代码在 LG G3 上测试并且运行良好。然而,当我在三星 Galaxy S3/S2 上测试它时 doInBackground() 由于某种原因没有被调用。 检查api的代码: public
我在使用 AsyncTask as executeOnExecutor() 进行并行执行时遇到问题,但在发送和接收时我的语音延迟(400 毫秒到 600 毫秒)声音的。这是我的代码: 通话录音代码:
我们在 Android 中执行 AsyncTask 的正常方式是,来自 Android API: private class DoIntenseTask extends AsyncTask {
我是一名优秀的程序员,十分优秀!