Cordova開發app——短視頻拍攝

本文首發在個人我的博客上:www.brandhuang.com前端

前一篇文章寫了發送語音的功能,這片文章寫一下錄製短視頻的功能。ios

我如今所作的項目是一個客服系統(相似相似阿里旺旺吧?),以前產品的聊天功能就只是發送文字、圖片和一些emoji表情,如今須要在項目中添加發送語音和15秒的短視頻(限制時長的視頻,不必定要15秒)git

若是咱們用 讓用戶選擇設備上已經錄好的視頻進行上傳的方式進行發送其實也是能夠的,可是咱們就很差控制視頻的時長了,視頻時間太長文件也必然很大,會佔用不少的空間,因此咱們選擇了讓用戶在咱們本身app中進行錄製的方案,這樣就能夠根據控制視頻時間的長度,來把視頻的大小控制在較小的範圍內。github

本文主要用到的插件是:cordova-plugin-media-capture

插件GitHub地址:cordova-plugin-media-captureapache

該插件既能夠錄音也能夠錄製視頻,可是在安卓手機上,錄音的時候會打開手機自帶的錄音機APP進行錄音,感受體驗不是很好,因此我只用了該插件錄視頻的功能。後端

簡單使用

安裝:
cordova plugin add cordova-plugin-media-capture
複製代碼
須要在deviceReady後進行方法調用
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log(navigator.device.capture);
}
複製代碼
使用:
navigator.device.capture.captureVideo(
    this.videoSuccess,// 視頻錄製成功後的處理
    this.videoError, // 視頻錄製失敗後的處理
    {
        duration: 15,// 限制錄製的視頻時間長度,單位:/秒
        limit:1 // 非必填,不寫此項時,默認爲1
        // 在ios一次只能錄一個視頻,
        //在Android上,連續錄製視頻的個數受limit的限制
    }
);
複製代碼

視頻上傳插件和前一篇文章用的同樣,方法就不在介紹了服務器

上傳插件的簡單使用能夠看個人上一篇文章:Cordova開發app,使用插件錄音並上傳服務器app

須要注意下!!

在Android上錄製的視頻是mp4格式的,在其餘設備上能很好的播放,可是在ios上,錄製的視頻是mov格式的,因此須要作轉碼處理後才能在其餘設備上播放(能夠前端處理,也能夠上傳到服務器後在後端處理,)iphone

轉碼後又一個問題需注意:

不是全部的mp4格式在ios設備上都能正常播放!!!ide

以前轉碼的mp4在安卓上正常播放,可是在ios上,播放的視頻沒有聲音!!!

網上搜了下,說是音軌問題,

百度說:iphone自帶播放器只識別AAC的音頻,因此視頻轉換MP4,編碼方式選擇H264+AAC或 MPEG4+AAC就好了。

因此轉碼的時候須要注意,目前咱們項目由於是在服務端轉碼的,全部後端正在處理這個問題~

這就是文章的所有內容了,感謝閱讀!

歡迎留言探討~

相關文章
相關標籤/搜索