webrtc开发中,音频实时对讲采集的问题(ios mic mute)

来源:互联网 发布:java输出100以内的素数 编辑:程序博客网 时间:2024/04/28 02:17

需求是这样的,在音视频出来后,在按住一个按钮的时候,进行音频传输,按钮松开的时候,不进行音频传输。

代码如下:

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);

    

}


这样就实现了以上需求。


0 0
原创粉丝点击