又拍云的 iOS 短視頻 SDK 用下來效果還不錯(cuò)的。 這個(gè)短視頻 SDK 包含短視頻拍攝、編輯、合成部分,包含斷點(diǎn)錄制、分段回刪、美顏、濾鏡、貼紙、視頻剪輯、視頻壓縮、本地轉(zhuǎn)碼在內(nèi)的 30 多種功能。 支持自定義界面和二次開發(fā)。
網(wǎng)站的建設(shè)創(chuàng)新互聯(lián)專注網(wǎng)站定制,經(jīng)驗(yàn)豐富,不做模板,主營網(wǎng)站定制開發(fā).小程序定制開發(fā),H5頁面制作!給你煥然一新的設(shè)計(jì)體驗(yàn)!已為集裝箱等企業(yè)提供專業(yè)服務(wù)。
近期項(xiàng)目中有個(gè)需求就是要實(shí)現(xiàn)類似微信或者支付寶的收款時(shí)的語音播報(bào)功能,于是筆者就開始了漫長的踩坑之路。
剛開始討論實(shí)現(xiàn)方案時(shí),安卓的小伙伴說可以使用WebSocket + 訊飛語音在線合成實(shí)現(xiàn)。于是最初的幾天筆者自己也一直在這條路上走了很久,基本功能都已經(jīng)實(shí)現(xiàn)了,項(xiàng)目在前臺的時(shí)候,基本沒問題。但是項(xiàng)目一進(jìn)入后臺大概半分鐘的時(shí)間,就無法播報(bào)了。原因是iOS項(xiàng)目如果不做任何處理的話,在進(jìn)入后臺大概30s之后,程序就會(huì)進(jìn)入類似休眠的狀態(tài),然后就不會(huì)再進(jìn)行任何操作了
跟安卓的同事討論之后,發(fā)現(xiàn)安卓有方法可以讓程序一直在后臺處于活躍狀態(tài),于是筆者也開始找尋保持項(xiàng)目后臺運(yùn)行的方法,大概有兩種
在這里我們并沒有發(fā)現(xiàn),程序在后臺收到推送時(shí),作相應(yīng)處理的方法,哪到底能不能收到推送后就進(jìn)行處理呢?
iOS 10 之后 iOS推出了Notification Service Extension,我們可以在收到推送之后,通過這個(gè)Extension 我們可以有三十秒的時(shí)間來對這個(gè)推送進(jìn)行處理
完成之后長這樣
然后我們配置一下NotificationService
然后我們看下NotificationService.swift文件
在完成上述操作之后,再次收到推送的話,就會(huì)走NotificationService的邏輯了,可以打斷點(diǎn)或者Log測試一下
需要注意的是 在推送的內(nèi)容中 必須配置mutable-content字段,結(jié)構(gòu)大致如下
做完上邊的操作之后,我們可以知道什么時(shí)候去播報(bào)語音了,但是語音又要怎么去播報(bào)呢?
筆者這邊也是試過幾個(gè)方案,下邊一一說來
筆者剛開始使用訊飛發(fā)現(xiàn)不行,然后又測試了系統(tǒng)自帶的AVSpeech,發(fā)現(xiàn)也不好用,查資料才知道,蘋果在近期的版本中,停用的在NotificationService中播放語音的功能,之前的某個(gè)版本應(yīng)該可以這么操作。好吧,此方案Pass
既然不讓我播,那我存起來總可以了吧,測試發(fā)現(xiàn)訊飛在線生成是可以的,也可以存到本地,但。。。是,UNMutableNotificationContent的sound好像只支持提前添加到項(xiàng)目中的文件,并不支持立即生成之后存到本地,然后再設(shè)置的功能。。。
筆者在項(xiàng)目中預(yù)先生成的文件如下(語音包通過百度語音開放平臺在線生成 百度語音在下生成(拉到中間就有了) )
比如說我要播放“支付寶到賬100元”,我就會(huì)發(fā)放多個(gè)通知,依次播放wx-pre,1,bai,yuan這幾個(gè)語音,連貫起來就能達(dá)到要求
筆者能力有限,暫時(shí)想到的方法就是這個(gè),有好的方法可以多多分享,溝通
兩種處理方式
1、將獲取到的音頻文件通過base64加密直接通過xmpp的消息體發(fā)送過去,然后解碼;
2、通過http請求的方式將音頻文件上傳到服務(wù)器,然后將音頻文件的下載地址通過xmpp消息體發(fā)送過去,另外一個(gè)客戶端下載。
音頻文件建議轉(zhuǎn)碼為amr,這種格式的音頻文件比較小。
1、首先右鍵點(diǎn)擊右下角小喇叭圖標(biāo)-錄音設(shè)備,進(jìn)入聲音設(shè)置菜單, 2、右鍵點(diǎn)擊“Internal Mic(內(nèi)置麥克風(fēng))”選項(xiàng),點(diǎn)擊“設(shè)置為默認(rèn)通信設(shè)備”, 3、選好后,點(diǎn)擊“通信”選項(xiàng),把“當(dāng)WINDOWS檢測到通信活動(dòng)時(shí)”設(shè)置為“不執(zhí)行任何操作”,然后應(yīng)用確定即可。 如果進(jìn)行上述設(shè)置后機(jī)器的問題依舊,可以嘗試使用其他的聊天軟件或錄音軟件看看機(jī)器是否可以正常使用內(nèi)置麥克風(fēng): 如果其它的軟件可以正常使用,那么應(yīng)該是所使用的聊天軟件方面的問題導(dǎo)致的了,可以更換這個(gè)聊天軟件的版本重新安裝看看是否可以解決這個(gè)問題;
網(wǎng)頁標(biāo)題:ios開發(fā)語音聊天,ios開發(fā)語音聊天軟件
標(biāo)題網(wǎng)址:http://www.chinadenli.net/article12/dsdggdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、面包屑導(dǎo)航、手機(jī)網(wǎng)站建設(shè)、服務(wù)器托管、標(biāo)簽優(yōu)化、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)