Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
NotificationsYou must be signed in to change notification settings

cxm19881208/AudioQueue

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

1、录制的音频编码格式是aac_ld

2、使用AudioQueue进行播放和录制

3、项目是根据苹果官方demo-SpeakHere改制而成

4、传输使用的是TCP协议

5、为了测试实时传输,我写了一个简单的服务器程序TestSV是服务器项目,做测试需要先启动TestSV项目,修改里面监听的ip和端口为你电脑的本地ip,然后通过macox运行项目,项目运行起来后会有监听成功的log。

6、确保你的手机和电脑在同一个局域网内,启动RealTimeTransportiPhone端项目,修改里面服务器地址和端口,同服务器端的一致,然后在iphone手机上运行项目,这时候自己说话自己就可以听到了。

7、客户端程序需要真机运行!否则无法录制音频。

8、主要修改了播放实时音频流有时候数据中断再有数据过来,播放器始终无声音。修复了此bug。测试方式:可以通过打断点的方式,截断几秒钟音频数据流,再把断点去掉播放器依然有效;或者在程序里面加一个计数,手动丢掉一些数据包,audioqueue无数据可播,然后再有数据过来时候播放器依然有效。

9、AudioMedia里面是libAudioMedia.a静态库的源码,里面主要是音频播放队列的维护以及音频播放代码。代码关键在于添加静音包的一段代码:

// 填空数据 静音包UInt32 allDataSize=fillBuf->mAudioDataByteSize;BYTE buf[512];memset(buf, 0, 512);if (pDestData!=NULL) {memcpy(pDestData, buf, allDataSize);OSStatus err = AudioQueueEnqueueBuffer(mQueue, fillBuf, 0, NULL);if (err){NSLog(@"没有数据了,填充空数据,填充失败");}}

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp