需求是这样的,在音视频出来后,在按住一个按钮的时候,进行音频传输,按钮松开的时候,不进行音频传输。
代码如下:
1、先在micbtn上绑定两个方法:
[self.micBtn
addTarget:self
action:@selector(onMicBtnDown)
forControlEvents:UIControlEventTouchDown];
[self.micBtn
addTarget:self
action:@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);
}
这样就实现了以上需求。
版权声明:本文为博主原创文章,未经博主允许不得转载。