發表文章

目前顯示的是 8月, 2021的文章

Ubuntu 20.04安裝後問題解法集合

圖片
 Ubuntu 20.04安裝後問題集合 最近從16.04升級到20.04,發現好幾個與之前版本沒出現的問題,這裡彙整一下分享找到解方或臨時解法。

Docker指令使用筆記

Docker指令使用筆記 因為工作上需要開發簡單的API server並自動化部屬,就開始學習docker該如何使用。

Node.js的Buffer資料用16進位數值印出來

  Node.js的Buffer資料用16進位數值印出來 這是小段程式碼 function printBufferBytes(buf, len, off) {   console.log(buf     .slice(off, off+ len )     .toString('hex')     .match(/(.{2,2})/g) ); } 因為Buffer可能很長,所以先用slice切出一部份, 再toString轉換成16進位字串, 最後用正規表示法把每2個字元切成字串陣列。 同樣的作法可以套用在TypedArray上,如:Uint8Array,只是沒有slice可用。

javascript語言特性:Number的bitwise operation(位元操作)是使用32bit處理

最近想要移植C的一些64bit資料處理的小程式到JS上,就遭遇這個問題位元指令32bit的問題。實際上JS所有的位元操作(bitwise operation),諸如:左移(left shift)、右移(right shift)、OR、AND、XOR等都是只能用在32位元內操作。

用BASH產生NUL byte, byte 1, byte2的資料

用BASH產生NUL,1,2的檔案 會有這個需求主要是需要在資料前端,尾端加入一些padding,tailing bytes,產生這些資料之後可以用cat將他們與產生的檔案做結合,達成完全以BASH處理的效果。 雖然看起來很簡單,不過有一些小陷阱

用Bash把wav變成pcm音檔

在 使用IoT大平台語音辨識/語音轉文字(STT)功能 一文中,需要用到pcm音檔,但是一般電腦上的錄音程式都是預設wav輸出的,該怎辦呢?

使用mosquitto-client接收/發送mqtt訊息

這裡簡單展示如何接收發送mqtt訊息 使用的是IOT大平台上的heartbeat功能, 文件參考 這裡  

xargs筆記

  xargs幫助我們把前面的列表分別呼叫指定的cmd 我們常用的是 find -name  "*.wav" | xargs -t -i ffprobe -hide_banner {} -t表示顯示做的cmd指令 -i表示\n分行來表示參數, 對於cmd預設是用{}符號代表要代入的位置,因為想放置參數不見的在最後面 置換符號 find -name  "*.wav" | xargs -t -I ZZZ ffprobe -hide_banner  ZZZ 上面這就是用-I指定用ZZZ來當作帶入參數 find -name  "*.wav" | xargs -t -I % ffprobe -hide_banner % 上面這就是用-I指定用%來當作帶入參數 特殊符號或空格 另外如果你的字元包含空格或特殊字元就需要用print0丟出列表,並在xargs和-0接收這種以\0分隔的格式 find -name  "*.wav" -print0 | xargs -0 -t -i ffprobe -hide_banner  {}