工程筆記本 / LinkIt 聯發科家族

LinkIt 聯發科家族

[LinkIt Smart 7688] MCS新功能:即時影像串流頻道

徐 豐智📅 2016-02-15👁 26
  大家好~ 我是偉和,最近MediaTek Cloud SandBox 加入了兩種新的資料通道:Video StreamImage,本文要來介紹如何在 MCS 上即時觀看 7688 上的 webcam 影像,這樣不論您人在何方,只要連到 MCS 就可以看到影像,遠端影像監控功能就完成啦! 請注意,MCS 說明每個裝置的每月流量為 3GB,但如果每個裝置是指測試裝置的話...   那只要重新建立測試裝置就好啦,ㄎㄎ 0001 160224 物聯網IoT體驗夜 原文網址 在使用Video Stream功能前我們要先建立產品原型
  • 產品原型名稱:7688_video
  • 產品原型版本:1.0
  • 硬體平台:Linkit Smart 7688(MT7688)
  • 產業:教育
  • 應用程式:其他
除了硬體平台之外其他都可更改
輸入完畢後按下詳情進入原型設計
在產品詳情頁面中,按下"新增"按鈕新增新的資料通道 由於我們要將7688的影像串流到MCS上面,所以要新增的資料通道類型請選擇"影像串流" 請先選擇"顯示器",接著完成以下設定:
  • 資料通道名稱:video
  • 資料通道ID:video
  • 資料型態:影像串流
(注意!資料通道ID須為英文)
在原型中建立好資料通道後,我們要新增測試裝置
測試裝置名稱自行命名,在此為 test
這樣MCS端就準備完成!
其中有幾個要特別留意DeviceID、DeviceKey、資料通道Id這三個是讓我們7688與MCS溝通的重要資訊
以我的為例子 DeviceID:Db4pn6WV
DeviceKey:mxiEyDmigaJgBy1O
資料通道id:video
確認完畢後接著到LinkIt Smart7688端。在撰寫程式前要先確認7688是否為station mode,也就是連上外部網路。
若不是station mode則會無法將影像資料串流到MCS上
透過ssh遠端連進7688後,首先要先安裝FFmpeg
opkg update
opkg install ffmpeg
安裝完畢後,安裝7688的mcs環境
mkdir app && cd app npm init
npm install mcsjs
完成後將現在的位置移動到 /app/node_modules下
cd /app/node_modules
新增Javascript程式:app.js
vim app.js
輸入i後,將下面的程式碼複製貼上至編輯器裡,記得要將deviceId、deviceKey及dataChnId裡的變數(藍色的部分)更改成您的
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編輯器,接著輸入以下指令來執行程式
node app
就可以看到影像串流至MCS上,按下暫停鈕即可停止播放。 0001  

相關文章 📎

留言 💬 (0)

還沒有留言,來當第一個。