- iOS开发笔记-99:Swift5 - 录音播放AVAudioPlayer、AVAudioRecorder、AVAudioSession
原味蛋炒饭
AVAudioSession配置,一定要配置,否则有很多莫名其妙的问题这个是配置手机硬件的类。letaudioSession:AVAudioSession=AVAudioSession.sharedInstance()//AVAudioSession.sharedInstance().overrideOutputAudioPort(.speaker)do{//设置这个,可以修复录音只录一遍的问题t
- IOS后台运行 之 后台播放音乐
aqlomr7170
移动开发xcode人工智能
IOS后台运行之后台播放音乐iOS4开始引入的multitask,我们可以实现像ipod程序那样在后台播放音频了。如果音频操作是用苹果官方的AVFoundation.framework实现,像用AvAudioPlayer,AvPlayer播放的话,要实现完美的后台音频播放,依据app的功能需要,可能需要实现几个关键的功能。首先,播放音频之前先要设置AVAudioSession模式,通常只用来播放的
- 一个简单的 音频网络播放 以及 AVAudioPlayer 播放没有声音的问题
tito
//self.Player需要设置为全局的AVAudioPlayer播放没有声音的问题-(void)playAudio{NSString*pathUrl=self.model.audioCachesPath.length?self.model.audioCachesPath:self.model.text_audio;//设置外放声音AVAudioSession*session=[AVAudioS
- iOS 录音、本地播放、云端播放
疾风知剑豪
录音使用的是AVAudioRecord,播放使用的是AVAudioPlayer,使用时注意引入AVFoundation框架,本例子录音有实时时间显示,以及波形图振幅可以根据录音音量动态改变,播放本地录音时采用initWithUrl方法,播放云端时采用initWithData方法。效果图如下:初始化添加AVAudioSession方法,解决真机不能录音的问题开始录音结束录音刷新时间显示删除本地录音、
- AVAudioSession
老树沁出
1.AVAudioSession概述最近一年一直在做IPCCamera的iOS客户端开发。和音频打交道,必须要弄清楚AVAudioSession。先看下苹果的官方图:AudioSession可以看到AVAudioSession就是用来管理多个APP对音频硬件设备(麦克风,扬声器)的资源使用。举例一下AVAudioSession可以做这些事情设置自己的APP是否和其他APP音频同时存在,还是中断其他
- 2018-07-15 bug 问题CoreAudio crash - AVAudioIONodeImpl.mm:365: _GetHWFormat: required condition is ...
幸福晓杰2016
CoreAudiocrash-AVAudioIONodeImpl.mm:365:_GetHWFormat:requiredconditionisfalse:hwFormat这个bug在我使用audiokit开发时遇到,其实我当时并没有使用发音,但是还是必须要将单例设置为CategoryPlayAndRecord模式才行:audioSession.setCategory(AVAudioSession
- IOS你不知道的音频细节,音频会话AVAudioSession
幻水_HS
名称音频会话解释设置程序的音频环境,告知系统的音频行为用途。管理多个app对音频硬件的资源分配。通过主场景、模式、细节选项的设置可以使app在音频方面更加人性化。疑问有人说,我写音乐播放的时候没有考虑这个都能播放,这个有啥用?当你想要做的更人性化时就该考虑下这点,比如说插耳机、拔耳机的逻辑,是否控制后台播放,是否让当前app的声音高于其他app的声音等。理论音频会话场景分类设置:说明:以下分类并不
- iOS-音频-AVAudioSession
weixin_33862514
移动开发ui
1.AVAudioSession概述最近一年一直在做IPCCamera的iOS客户端开发。和音频打交道,必须要弄清楚AVAudioSession。先看下苹果的官方图:可以看到AVAudioSession就是用来管理多个APP对音频硬件设备(麦克风,扬声器)的资源使用。举例一下AVAudioSession可以做这些事情设置自己的APP是否和其他APP音频同时存在,还是中断其他APP声音在手机调到静音
- 视频播放器 AVPlayer
Goods_boy
oc---细节视频AVPlayer
{//设置音频播放AVAudioSession*audioSession=[AVAudioSessionsharedInstance];[audioSessionsetCategory:AVAudioSessionCategoryPlaybackerror:nil];//创建播放器CGRectplayerFrame=CGRectMake(0,0,_backView.layer.bounds.siz
- 在线教室 iOS 端声音问题综合解决方案
iOS开发之家
背景介绍在线教室场景下,声音是最重要的内容传输渠道之一,保障声音的稳定可靠,是在线教室质量非常重要的一环。同时在线教室里许多功能模块都与声音有关联,如何处理好各个模块间的声音冲突成为一个重要话题。AVAudioSession在iOS端,说到声音的话题就绕不开AVAudioSession。AVAudioSession的作用是管理音频这一唯一硬件资源的分配,通过调优合适的AVAudioSession来
- AVAudioSession之Category
AnnieAri
有这么几个key分别解释是什么意思///用于非以语音为主的应用,使用这个category的应用会随着静音键和屏幕关闭而静音。///并且不会中止其它应用播放声音,可以和其它自带应用如iPod,safari等同时播放声音。///注意:该Category无法在后台播放声音publicletAVAudioSessionCategoryAmbient:String///类似于AVAudioSessionCa
- ios -简单录音实现
低调的腹
最近要用过录音功能,搜罗了些方法,发现只需要使用ios提供的类就可实现录音方法:-(void)startRecord{[_activityViewstartAnimating];AVAudioSession*session=[AVAudioSessionsharedInstance];NSError*sessionError;[sessionsetCategory:AVAudioSessionCa
- iOS AVAudioSession 详解
georgehenrywilliam
ios
iOSAVAudioSession详解-简书默认没有options,category7种即可满足条件-(BOOL)setCategory:(AVAudioSessionCategory)categoryerror:(NSError**)outErrorAPI_AVAILABLE(ios(3.0),watchos(2.0),tvos(9.0))API_UNAVAILABLE(macos);有opti
- 音频小结
宝宝丶菲
要看AVAudioSession底层API解释的可以看我另一篇文章AVAudioSession。这篇文章主要记载我使用音频功能期间的小结:1、音频如果需要后台录制或者播放功能需要勾选BackgroundMode中的第一项2、info中要添加隐私权限获取key:Privacy-MicrophoneUsageDescription麦克风权限3、通过AVAuthorizationStatus类获取麦克风
- [AXTTSCommon] _BeginSpeaking: couldn't begin playback
秋天的田野
AVSpeechSynthesizer后台播放时电话中断暂停和恢复播放报_BeginSpeaking:couldn'tbeginplayback,需要配置开启后台任务1.在AppDelegatedidFinishLaunchingWithOptions中加入以下代码、、、NSError*error=NULL;AVAudioSession*session=[AVAudioSessionsharedI
- Reachability使用特殊情况说明
无影行者
如果工程项目中使用到了系统的播放器,以及使用Reachability了去监听网络状态。那么Reachability可以不用创建一个类似单例的形式使用。可以监听通知kReachabilityChangedNotification来进行网络状况改变时的处理。因为若网络状态发生改变时,系统底层会通过AVFoundation框架的AVAudioSession类去发送kReachabilityChanged
- AVAudioSession踩坑
低调的魅力
事情是这样的,我们应用里有视频播放,测试发现在播放视频过程中切换到后台,打开网易云音乐后播放一首歌曲,返回到我们的应用中播放视频的时候网易云音乐的音频并没有被关闭。于是就在AppDelegate中的加入了如下代码:-(void)applicationDidBecomeActive:(UIApplication*)application{//激活音频回话,正常来说就可以关闭其他APP的音频了AVAu
- AVAudioSession音频会话中断监听配置
见惯不怪
工作之余打个笔记。音频后台播放时需要做响应监听配置,比如电话,微信语音等原理是,在音乐播放被中断时,暂停播放,在中断结束后,开始播放。具体做法是:首先在AppDelegate内注册音频中断状态监听的通知以及定义一个BOOL类型值记录播放状态@property(nonatomic,assign)BOOLisPlaying;//是否是播放状态//注册音频中断时的通知[[NSNotificationCe
- iOS 播放录音声音很小
船长_
很可能你录音时AVAudioSession设为了AVAudioSessionCategoryPlayAndRecord,录音结束时没有设回来AudioSessionCategoryPlayAndRecord是用听筒播放,所以声音会很小letsession=AVAudioSession.sharedInstance()do{trysession.setActive(true)}catchleterr
- 视频合并旋转(重新排版)
yidezhang
先说视频合并这是视频和音频合并因为使用shareAECsdk录屏unity画面面对物体时候和easyARyou冲突会黑屏最终使用unity官方推荐的everyPlayer录屏但是录不到unity自带的声音为,所以在录屏的时候进行录音,下面是录音的关键代码-(void)setAudioSession{AVAudioSession*audioSession=[AVAudioSessionsharedI
- AVAudioRecorder 有来电时中断录音和恢复录音功能
Gumball_a45f
1、原因接到需求:要求录音时有电话、微信电话、QQ电话进来时暂停录音,电话挂断后恢复录音。录音时长分为10分钟一段2、录音中断方法监听AVAudioSession的通知AVAudioSessionInterruptionNotification(发生音频中断时系统发布的通知)官方描述通知返回的是AVAudioSessionInterruptionType枚举///ValuesforAVAudioS
- AVAudioSession
ios_wong
1、相关通知注意事项监听AVAudioSession相关通知,其传递的Object要么是[AVAudioSessionsharedInstance],要么是nil;不能是其它的object,否则,监听事件无法触发;例:完整写法[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(rioInterruptionL
- 音频播放AVAudioPlayer,AVAudioRecorder,AVAudioSession
Luyc_Han
AVAudioPlayer播放对象self.player=[[AVAudioPlayeralloc]initWithContentsOfURL:self.fileUrlerror:nil];//3.音频信息NSString*msg=[NSStringstringWithFormat:@"音频文件声道数:%ld\n音频文件持续时间:%g",self.player.numberOfChannels,s
- app在后台可以震动
喵喵粉
app开启后台运行权限,定位或者录音等都可以设置AVAudioSession时,mode设置为voiceChat手机震动调用AudioServicesPlaySystemSoundWithCompletion(kSystemSoundID_Vibrate,nil)importUIKitimportAVFoundationclassViewController:UIViewController{va
- AVFoudation - 音频播放
伊织code
Apple开发音视频AVFoudationAVAudioSessionAVAudioPlayer
文章目录简要说明音频播放代码实现多个播放器iOS中的中断监听AVAudioSession设置官方文档:https://developer.apple.com/av-foundation/简要说明iOS系统提供了一个可管理的音频环境(managedaudioenvironment),通过音频会话(audiosession)来实现。AVAudioSession在Mac上不可用AVAudioPlayer
- 音乐播放AVPlayer
大白_帕克
在控制器中,引入//引入音频、视频库#import声明一个Player变量@interfaceViewController()@property(nonatomic,strong)AVPlayer*player;@end导入歌曲到项目:demo.png播放本地音乐://播放音乐AVAudioSession*session=[AVAudioSessionsharedInstance];//它是一个单
- 音频中断
宝宝丶菲
1、持有AVAudioSession的类添加AVAudioSessionInterruptionNotification监听音频中断状态:(电话、闹铃等归结为一般性的中断,由AVAudioSessionInterruptionNotification通知)监听回调中userInfo包含AVAudioSessionInterruptionTypeKey,key所对应的枚举值分别为:typedefNS
- iOS开发-实现声音录制AVAudioRecorder及播放AVAudioPlayer播放音频
BruceGerGer
iphone开发移动开发Objective-cios音视频录制播放动画AVPlayerAVAudioSession
iOS开发-实现声音录制AVAudioRecorder及播放AVAudioPlayer播放音频之前开发中需要实现声音录制与播放功能。用到了AudioSession与AVAudioPlayer,这里记录一下实现过程及录制播放示例。一、AVAudioSession是什么?AVAudioSession是苹果用来管理App对音频硬件(I/O)的资源使用。AudioSession配置影响所有的音频活动。可以
- 音频:AVAudioSession 配置
丶墨墨丶
遇到这么个场景,项目中有些页面是来自cocos2d,其中涉及到音频播放和录制(应该对应AVAudioSessionCategoryPlayAndRecord);然后OC部分也涉及到音视频的播放。存在从cocos2d场景退出后再播放OC场景下的视频存在音频声音小,应该是处于听筒模式。对于上面的问题一般都想到AVAudioSession(主要用来管理音频设置与硬件交互)单利设置系统使用音频的方式://
- iOS 应用中调整手机系统音量
斌小狼
注意:设置或者获取音量可能很多地方都用的到,因此可以把下面的方法写在appdelegate中一、设置音量相关注意:设置音量大小,如果不在播放音乐的时候设置这个的话可能会直接设置铃声,而且设置的值可能设置不上,如果要在app刚刚启动的时候设置音量,需要将AVAudioSession设置为活跃状态:[[AVAudioSessionsharedInstance]setActive:YESerror:er
- Enum 枚举
120153216
enum枚举
原文地址:http://www.cnblogs.com/Kavlez/p/4268601.html Enumeration
于Java 1.5增加的enum type...enum type是由一组固定的常量组成的类型,比如四个季节、扑克花色。在出现enum type之前,通常用一组int常量表示枚举类型。比如这样:
public static final int APPLE_FUJI = 0
- Java8简明教程
bijian1013
javajdk1.8
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。
一.允许在接口中有默认方法实现
Java 8 允许我们使用default关键字,为接口声明添
- Oracle表维护 快速备份删除数据
cuisuqiang
oracle索引快速备份删除
我知道oracle表分区,不过那是数据库设计阶段的事情,目前是远水解不了近渴。
当前的数据库表,要求保留一个月数据,且表存在大量录入更新,不存在程序删除。
为了解决频繁查询和更新的瓶颈,我在oracle内根据需要创建了索引。但是随着数据量的增加,一个半月数据就要超千万,此时就算有索引,对高并发的查询和更新来说,让然有所拖累。
为了解决这个问题,我一般一个月会进行一次数据库维护,主要工作就是备
- java多态内存分析
麦田的设计者
java内存分析多态原理接口和抽象类
“ 时针如果可以回头,熟悉那张脸,重温嬉戏这乐园,墙壁的松脱涂鸦已经褪色才明白存在的价值归于记忆。街角小店尚存在吗?这大时代会不会牵挂,过去现在花开怎么会等待。
但有种意外不管痛不痛都有伤害,光阴远远离开,那笑声徘徊与脑海。但这一秒可笑不再可爱,当天心
- Xshell实现Windows上传文件到Linux主机
被触发
windows
经常有这样的需求,我们在Windows下载的软件包,如何上传到远程Linux主机上?还有如何从Linux主机下载软件包到Windows下;之前我的做法现在看来好笨好繁琐,不过也达到了目的,笨人有本方法嘛;
我是怎么操作的:
1、打开一台本地Linux虚拟机,使用mount 挂载Windows的共享文件夹到Linux上,然后拷贝数据到Linux虚拟机里面;(经常第一步都不顺利,无法挂载Windo
- 类的加载ClassLoader
肆无忌惮_
ClassLoader
类加载器ClassLoader是用来将java的类加载到虚拟机中,类加载器负责读取class字节文件到内存中,并将它转为Class的对象(类对象),通过此实例的 newInstance()方法就可以创建出该类的一个对象。
其中重要的方法为findClass(String name)。
如何写一个自己的类加载器呢?
首先写一个便于测试的类Student
- html5写的玫瑰花
知了ing
html5
<html>
<head>
<title>I Love You!</title>
<meta charset="utf-8" />
</head>
<body>
<canvas id="c"></canvas>
- google的ConcurrentLinkedHashmap源代码解析
矮蛋蛋
LRU
原文地址:
http://janeky.iteye.com/blog/1534352
简述
ConcurrentLinkedHashMap 是google团队提供的一个容器。它有什么用呢?其实它本身是对
ConcurrentHashMap的封装,可以用来实现一个基于LRU策略的缓存。详细介绍可以参见
http://code.google.com/p/concurrentlinke
- webservice获取访问服务的ip地址
alleni123
webservice
1. 首先注入javax.xml.ws.WebServiceContext,
@Resource
private WebServiceContext context;
2. 在方法中获取交换请求的对象。
javax.xml.ws.handler.MessageContext mc=context.getMessageContext();
com.sun.net.http
- 菜鸟的java基础提升之道——————>是否值得拥有
百合不是茶
1,c++,java是面向对象编程的语言,将万事万物都看成是对象;java做一件事情关注的是人物,java是c++继承过来的,java没有直接更改地址的权限但是可以通过引用来传值操作地址,java也没有c++中繁琐的操作,java以其优越的可移植型,平台的安全型,高效性赢得了广泛的认同,全世界越来越多的人去学习java,我也是其中的一员
java组成:
- 通过修改Linux服务自动启动指定应用程序
bijian1013
linux
Linux中修改系统服务的命令是chkconfig (check config),命令的详细解释如下: chkconfig
功能说明:检查,设置系统的各种服务。
语 法:chkconfig [ -- add][ -- del][ -- list][系统服务] 或 chkconfig [ -- level <</SPAN>
- spring拦截器的一个简单实例
bijian1013
javaspring拦截器Interceptor
Purview接口
package aop;
public interface Purview {
void checkLogin();
}
Purview接口的实现类PurviesImpl.java
package aop;
public class PurviewImpl implements Purview {
public void check
- [Velocity二]自定义Velocity指令
bit1129
velocity
什么是Velocity指令
在Velocity中,#set,#if, #foreach, #elseif, #parse等,以#开头的称之为指令,Velocity内置的这些指令可以用来做赋值,条件判断,循环控制等脚本语言必备的逻辑控制等语句,Velocity的指令是可扩展的,即用户可以根据实际的需要自定义Velocity指令
自定义指令(Directive)的一般步骤
&nbs
- 【Hive十】Programming Hive学习笔记
bit1129
programming
第二章 Getting Started
1.Hive最大的局限性是什么?一是不支持行级别的增删改(insert, delete, update)二是查询性能非常差(基于Hadoop MapReduce),不适合延迟小的交互式任务三是不支持事务2. Hive MetaStore是干什么的?Hive persists table schemas and other system metadata.
- nginx有选择性进行限制
ronin47
nginx 动静 限制
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;...
server {...
location ~.*\.(gif|png|css|js|icon)$ {
- java-4.-在二元树中找出和为某一值的所有路径 .
bylijinnan
java
/*
* 0.use a TwoWayLinkedList to store the path.when the node can't be path,you should/can delete it.
* 1.curSum==exceptedSum:if the lastNode is TreeNode,printPath();delete the node otherwise
- Netty学习笔记
bylijinnan
javanetty
本文是阅读以下两篇文章时:
http://seeallhearall.blogspot.com/2012/05/netty-tutorial-part-1-introduction-to.html
http://seeallhearall.blogspot.com/2012/06/netty-tutorial-part-15-on-channel.html
我的一些笔记
===
- js获取项目路径
cngolon
js
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.locati
- oracle 的性能优化
cuishikuan
oracleSQL Server
在网上搜索了一些Oracle性能优化的文章,为了更加深层次的巩固[边写边记],也为了可以随时查看,所以发表这篇文章。
1.ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾。(这点本人曾经做过实例验证过,的确如此哦!
- Shell变量和数组使用详解
daizj
linuxshell变量数组
Shell 变量
定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:
your_name="w3cschool.cc"
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用ba
- 编程中的一些概念,KISS、DRY、MVC、OOP、REST
dcj3sjt126com
REST
KISS、DRY、MVC、OOP、REST (1)KISS是指Keep It Simple,Stupid(摘自wikipedia),指设计时要坚持简约原则,避免不必要的复杂化。 (2)DRY是指Don't Repeat Yourself(摘自wikipedia),特指在程序设计以及计算中避免重复代码,因为这样会降低灵活性、简洁性,并且可能导致代码之间的矛盾。 (3)OOP 即Object-Orie
- [Android]设置Activity为全屏显示的两种方法
dcj3sjt126com
Activity
1. 方法1:AndroidManifest.xml 里,Activity的 android:theme 指定为" @android:style/Theme.NoTitleBar.Fullscreen" 示例: <application
- solrcloud 部署方式比较
eksliang
solrCloud
solrcloud 的部署其实有两种方式可选,那么我们在实践开发中应该怎样选择呢? 第一种:当启动solr服务器时,内嵌的启动一个Zookeeper服务器,然后将这些内嵌的Zookeeper服务器组成一个集群。 第二种:将Zookeeper服务器独立的配置一个集群,然后将solr交给Zookeeper进行管理
谈谈第一种:每启动一个solr服务器就内嵌的启动一个Zoo
- Java synchronized关键字详解
gqdy365
synchronized
转载自:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html
多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。
同步机制可以使用synchronized关键字实现。
当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。
当s
- js实现登录时记住用户名
hw1287789687
记住我记住密码cookie记住用户名记住账号
在页面中如何获取cookie值呢?
如果是JSP的话,可以通过servlet的对象request 获取cookie,可以
参考:http://hw1287789687.iteye.com/blog/2050040
如果要求登录页面是html呢?html页面中如何获取cookie呢?
直接上代码了
页面:loginInput.html
代码:
<!DOCTYPE html PUB
- 开发者必备的 Chrome 扩展
justjavac
chrome
Firebug:不用多介绍了吧https://chrome.google.com/webstore/detail/bmagokdooijbeehmkpknfglimnifench
ChromeSnifferPlus:Chrome 探测器,可以探测正在使用的开源软件或者 js 类库https://chrome.google.com/webstore/detail/chrome-sniffer-pl
- 算法机试题
李亚飞
java算法机试题
在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。
这道题大致意思是:输入一个数,比如4,。这时会输出:
&n
- 正确配置Linux系统ulimit值
字符串
ulimit
在Linux下面部 署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用 其实很容易就达到这个数量。下面说的是,如何通过正解配置来改正这个系统默认值。因为这个问题是我配置Nginx+php5时遇到了,所以我将这篇归纳进
- hibernate调用返回游标的存储过程
Supanccy2013
javaDAOoracleHibernatejdbc
注:原创作品,转载请注明出处。
上篇博文介绍的是hibernate调用返回单值的存储过程,本片博文说的是hibernate调用返回游标的存储过程。
此此扁博文的存储过程的功能相当于是jdbc调用select 的作用。
1,创建oracle中的包,并在该包中创建的游标类型。
---创建oracle的程
- Spring 4.2新特性-更简单的Application Event
wiselyman
application
1.1 Application Event
Spring 4.1的写法请参考10点睛Spring4.1-Application Event
请对比10点睛Spring4.1-Application Event
使用一个@EventListener取代了实现ApplicationListener接口,使耦合度降低;
1.2 示例
包依赖
<p