from:http://www.07net01.com/2015/08/893168.html
需求是这样的,在音视频出来后,在按住一个按钮的时候,进行音频传输,按钮松开的时候,不进行音频传输。
代码如下:
1、先在micbtn上绑定两个方法:
[self.micBtnaddTarget:selfaction:@selector(onMicBtnDown)forControlEvents:UIControlEventTouchDown];
[self.micBtnaddTarget:selfaction:@selector(onMicBtnUp)forControlEvents:UIControlEventTouchUpInside];
2、实现里面的控制音频采集的方法:
- (void) onMicBtnUp
{
OSStatus status;
UInt32 inputAvailable=0;
UInt32 size = sizeof(inputAvailable);
AudioSessionGetProperty(kAudioSessionProperty_AudioInputAvailable,
&size,
&inputAvailable);
UInt32 sessionCategory;
sessionCategory =kAudioSessionCategory_AmbientSound;
status =AudioSessionSetProperty (kAudioSessionProperty_AudioCategory,
sizeof (sessionCategory),
&sessionCategory);
}
- (void) onMicBtnDown
{
OSStatus status;
UInt32 inputAvailable=0;
UInt32 size = sizeof(inputAvailable);
AudioSessionGetProperty(kAudioSessionProperty_AudioInputAvailable,
&size,
&inputAvailable);
UInt32 sessionCategory;
sessionCategory =kAudioSessionCategory_PlayAndRecord;
status =AudioSessionSetProperty (kAudioSessionProperty_AudioCategory,
sizeof (sessionCategory),
&sessionCategory);
}
这样就实现了以上需求。
本文介绍了一种在iOS应用中实现按住按钮开始音频采集、松开按钮停止采集的方法。通过使用AudioSession API,可以在按钮的不同状态间切换音频类别,从而控制音频输入的开启与关闭。
1047

被折叠的 条评论
为什么被折叠?



