有種快遺忘它的感覺wwww
廢話不多說 今天要介紹MCS最近更新的新資料通道:Video Stream
有些人有玩過Linkit Smart 7688會知道這塊裝置天生帶有影像串流功能
而這次聯發科工程師終於將這功能加入倒MCS上了!
在使用Video Stream功能前我們要先創建產品原型
產品原型名稱:7688_video
產品原型版本:1.0
硬體平台:Linkit Smart 7688(MT7688)
產業:教育
應用程式:其他
除了硬體平台之外其他都可更改
輸入完畢後按下詳情進入原型設計
在產品詳情頁面中,按下"新增"按鈕新增新的資料通道
由於我們要將7688的影像串流到MCS上面,所以要新增"影像串流"的資料通道
因此我們選擇新增"顯示器"
資料通道名稱:video
資料通道ID:video
資料型態:影像串流
(注意!資料通道ID須為英文)
建立完畢資料通道後,我們要新增測試裝置
測試裝置名稱自行命名
這樣MCS端就準備完成!
其中有幾個要特別留意DeviceID、DeviceKey、資料通道Id這三個是讓我們7688與MCS溝通的重要資訊
以我的為例子
DeviceID:Db4pn6WV
DeviceID:Db4pn6WV
DeviceKey:mxiEyDmigaJgBy1O
資料通道id:video
確認完畢後接著到LinkIt Smart7688端
在撰寫程式前要先確認7688是否為station mode
若不是station mode則會無法將影像資料串流到MCS上
透過ssh遠端連進7688後
首先要先安裝FFmpeg
安裝完畢後,安裝7688的mcs環境opkg update opkg install ffmpeg
完成後將現在的位置移動到 /app/node_modules下mkdir app && cd app npm init npm install mcsjs
cd /app/node_modules
新增Javascript程式:app.js輸入i後,將下面的程式碼複製貼上至編輯器裡,記得要將deviceId、deviceKey及dataChnId裡的變數(藍色的部分)更改成你的vim app.js
var mcs = require('mcsjs'); var exec = require('child_process').exec; var deviceId = '
Input your deviceId
'; var deviceKey = '
Input your deviceKey
'; var dataChnId = '
Input your `video stream` data channel Id
'; var width = 176; var height = 144; var myApp = mcs.register({ deviceId: deviceId, deviceKey: deviceKey, }); exec('ffmpeg -s ' + width + 'x' + height + ' -f video4linux2 -r 30 -i /dev/video0 -f mpeg1video -r 30 -b 800k http://stream-mcs.mediatek.com/' + deviceId + '/' +deviceKey + '/' + dataChnId + '/' + width + '/' + height, function(error, stdout, stderr) { console.log('stdout: ' + stdout); console.log('stderr: ' + stderr); if (error !== null) { console.log('exec error: ' + error); } });
完畢後按下ESC 並輸入":wq"退出vi編輯器
退出後輸入
就可以看到影像串流至MCS上囉!node app
沒有留言:
張貼留言
歡迎留言!