首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Golang开发

    iOS音频(2)——Audio Unit

    一、Audio Unit综述   1.1、Audio Unit 概念点   1.2、 AuidoUnit类型 二、构建Audio Unit的流程   2.1 、配置AudioSession    kAudioUnitSubType_GenericOutput 格式转换 kAudioUnitType_FormatConverter kAudioUnitSubType_AUConverter 二、构建Audio Unit的流程 2.1 配置AudioSession AVAudioSession *audioSession = [AVAudioSession sharedInstance]; [audioSession setPreferredSampleRate :44100 error:&error]; [audioSession setPreferredInputNumberOfChannels:1 error:&error]; [audioSession setPreferredIOBufferDuration:0.05 error:&error]; [audioSession setActive: YES error: nil]; 2.2、指定 Audio

    2.8K41发布于 2019-05-29
  • 来自专栏落影的专栏

    iOS15 Carplay后台播放异常问题分析

    该错误发生在App后台时尝试设置AudioSession为Active。但是番茄小说App在音频播放时,AudioSession是处于Active状态。 结合问题是出现在章节切换的场景,猜测问题可能是缩小为章节切换时,AudioSession被设置为InActive的状态。 为了避免有其他业务逻辑修改到Category和Active状态,增加更多的尝试情况:在开始播放之前和开始播放之后,把Category设置为Playback并且将AudioSession设置为Active

    2.5K10发布于 2021-11-24
  • 来自专栏freesan44

    iOS 10中如何搭建一个语音转文字框架

    cancel() recognitionTask = nil } let audioSession = AVAudioSession.sharedInstance() do { try audioSession.setCategory (AVAudioSessionCategoryRecord) try audioSession.setMode(AVAudioSessionModeMeasurement) try audioSession.setActive (true, with: .notifyOthersOnDeactivation) } catch { print("audioSession properties weren't set because

    2.8K20发布于 2018-09-05
  • 鸿蒙next版开发:音频并发策略扩展(ArkTS)

    audioSessionManager.registerSessionDeactivatedCallback((event) => { switch (event.reason) { case audio.OH_AudioSession_DeactivatedEvent.DEACTIVATED_LOWER_PRIORITY console.info('Audio session deactivated due to lower priority.'); break; case audio.OH_AudioSession_DeactivatedEvent.DEACTIVATED_TIMEOUT

    42200编辑于 2024-11-13
  • 来自专栏码客

    iOS 后台任务

    同样的当语音播放完毕之后程序同样会挂起 播放无声音频的代码 func playAudio(){ let audioSession = AVAudioSession.sharedInstance( ); do{ try audioSession.setCategory(AVAudioSessionCategoryPlayback) }catch{

    1.1K10发布于 2019-10-22
  • 来自专栏iOS开发攻城狮的集散地

    iOS 传感器集锦

    proximityStateDidChange:) name:UIDeviceProximityStateDidChangeNotification object:nil]; AVAudioSession *audioSession = [AVAudioSession sharedInstance]; //默认情况下扬声器播放 [audioSession setCategory:AVAudioSessionCategoryPlayback error:nil]; [audioSession setActive:YES error:nil]; NSString * path = [[NSBundle mainBundle

    2K80发布于 2018-05-21
  • 来自专栏腾讯Bugly的专栏

    手把手教你如何分析 iOS 系统栈 crash

    ,换种思路,根据之前动态调试的结果 privateCreateOrConfigure:withRawDescription: 触发时机,有两个,一个是系统耳机插拔通知的时候,另一个就是我们自己调用 audiosession.currentroute 当需要访问 audiosession.currentroute 直接返回我们保存的值。 这样,冲突不就没了 ---- 第九步 修改外发 很幸运,已经消灭了这个问题。

    2.2K81发布于 2018-03-23
  • 来自专栏青玉伏案

    iOS开发之微信聊天工具栏的封装

    以下代码是对音频的初始化 1 //录音部分初始化 2 -(void)audioInit 3 { 4 NSError * err = nil; 5 6 AVAudioSession *audioSession = [AVAudioSession sharedInstance]; 7 [audioSession setCategory :AVAudioSessionCategoryPlayAndRecord error:&err]; 8 9 if(err){ 10 NSLog(@"audioSession: %@ %d %@", [err domain], [err code], [[err userInfo] description]); 11 return; 12 } 13 14 [audioSession setActive :YES error:&err]; 15 16 err = nil; 17 if(err){ 18 NSLog(@"audioSession: %@ %d %@

    2.9K80发布于 2018-01-11
  • 来自专栏iOS开发攻城狮的集散地

    iOS 传感器集锦

    proximityStateDidChange:) name:UIDeviceProximityStateDidChangeNotification object:nil]; AVAudioSession *audioSession = [AVAudioSession sharedInstance]; //默认情况下扬声器播放 [audioSession setCategory:AVAudioSessionCategoryPlayback error:nil]; [audioSession setActive:YES error:nil]; NSString * path = [[NSBundle mainBundle

    1.8K60发布于 2018-05-22
  • 来自专栏正则

    AVKit框架详细解析(二) —— 基于视频播放器的画中画实现(一)

    在 AppDelegate 内的 application(_:didFinishLaunchingWithOptions:) 中,添加以下代码: let audioSession = AVAudioSession.sharedInstance 接下来,将以下内容添加到您在上一步中添加的代码中: do { try audioSession.setCategory(.playback, mode: .moviePlayback) } catch { print("Failed to set audioSession category to playback") } 通过这样做,您将音频会话的类别设置为 .playback,将播放模式设置为

    4K10发布于 2021-09-04
  • 来自专栏关键帧Keyframe

    iOS 音频处理框架及重点 API 合集丨音视频工程示例

    在我们前面的 Demo 中封装 Muxer 和 Demuxer 及设置 AudioSession 时会用到 AVFoundation Framework 的一些能力,我们这里对应地介绍一下。 我们这里只简单介绍下 Demo 中用到的接口: setCategory:withOptions:error:[113]:设置 AudioSession 的类型和选项参数。 setMode:error:[114]:设置 AudioSession 的模式。AudioSession 的类型和模式一起决定了 App 如何使用音频。 通常需要在激活 AudioSession 之前设置类型和模式。 setActive:withOptions:error:[115]:激活或释放 AudioSession 的使用。 以上这些框架及 API 基本上可以覆盖我们在前面的 Demo 中用到的能力了。

    2.5K20编辑于 2022-06-13
  • 来自专栏正则

    AVKit框架详细解析(三) —— 基于视频播放器的画中画实现(二)

    = nil) -> Bool { let audioSession = AVAudioSession.sharedInstance() do { try audioSession.setCategory (.playback, mode: .moviePlayback) } catch { print("Failed to set audioSession category to playback

    2.3K10发布于 2021-09-04
  • 来自专栏关键帧Keyframe

    iOS 视频处理框架及重点 API 合集丨音视频工程示例

    在我们前面的 Demo 中封装 Video Capture、Muxer、Demuxer 及设置 AudioSession 时会用到 AVFoundation Framework 的一些能力,我们这里对应地介绍一下 我们这里只简单介绍下 Demo 中用到的接口: setCategory:withOptions:error:[129]:设置 AudioSession 的类型和选项参数。 setMode:error:[130]:设置 AudioSession 的模式。AudioSession 的类型和模式一起决定了 App 如何使用音频。 通常需要在激活 AudioSession 之前设置类型和模式。 setActive:withOptions:error:[131]:激活或释放 AudioSession 的使用。 以上这些框架及 API 基本上可以覆盖我们在前面的 Demo 中用到的能力了。

    2.7K21编辑于 2022-06-13
  • 来自专栏微信终端开发团队的专栏

    iOS微信小视频优化心得

    另外AVPlayer在使用时会占用AudioSession,这个会影响用到AudioSession的地方,如聊天窗口开启小视频功能。

    5K91发布于 2018-01-29
  • 来自专栏落影的专栏

    Audio Unit和ExtendedAudioFile播放音频

    kExtAudioFileError_CodecUnavailableInputConsumed:当ExtAudioFileWrite被打断的时候会返回这个错误,需要先停止调用ExtAudioFileWrite,等待audioSession

    2.4K50发布于 2018-04-27
  • 来自专栏iOS 备忘录

    iOS 音频后台播放 && 锁屏显示及控制

    AVAudioSession.Category.playback, options: AVAudioSession.CategoryOptions.duckOthers) } catch { print("set AudioSession

    3.7K20编辑于 2023-10-16
  • 来自专栏即时通信与音视频

    短视频UGC常见问题(FAQ)

    7. iOS录制过程中用其他播放器播放视频,返回继续录制,声音录制不了 iOS 中的 AudioSession 是所有音视频应用共用的,使用其他播放器播放的时候,AudioSession 会被占用,播放结束时如果 AudioSession 没有让出或者让出不及时,会导致录制模块的 AudioSession 失效,SDK 提供了 -(void) pauseAudioSession 和 -(void) resumeAudioSession

    4.8K43发布于 2020-04-05
  • 来自专栏一“技”之长

    iOS使用VOIP与CallKit实现体验优质的网络通讯功能

    provider; //音频会话激活状态的回调 - (void)provider:(CXProvider *)provider didActivateAudioSession:(AVAudioSession *)audioSession ; //音频会话停用的回调 - (void)provider:(CXProvider *)provider didDeactivateAudioSession:(AVAudioSession *)audioSession

    4.8K20发布于 2018-08-15
  • 来自专栏BennuCTech

    如何实现一套可切换的声网+阿里的直播引擎

    Constants.CLIENT_ROLE_AUDIENCE); engine.enableVideo(); engine.setParameters("{\"che.audio.keep.audiosession

    1.3K20编辑于 2021-12-24
  • 来自专栏音视频直播技术专家

    iOS音频播放(一)

    下篇预告 下一篇将讲述iOS音频播放中必须面对的难(da)题(keng),AudioSession

    2.6K21发布于 2020-04-02
领券