發佈日期: 發佈留言

Musicha 電腦的JACK2—概論與設定初步

關於JACK音訊,它的精髓觀念來自真實硬體音訊串接,萬物皆為裝置

更新時間:4/29/2022 18:19

首先一般的Linux 電腦系統的架構是這個樣子:

其實這跟Windows 甚至 Mac 電腦的音訊機制架構沒有差很遠,因為都是「通用電腦」的設計。
各個應用軟體是各自跟Pulseaudio 連接——各軟體可以同時各自跟pulseaudio連接,pulseaudio會加以混音,然後藉由作業系統的核心Linux 的ALSA驅動,透過真實的硬體麥克風收音(record)以及透過喇叭播放(play)出聲音

但是我們的電腦算是「特種電腦」有特別的音效架構,是這個樣子:

先解說理由,因為音樂的各種製作(音樂領域,「作」音樂泛指從現場演奏到幕後混音等等)很多情境需要即時或者說低聲音延遲(從手指對演奏鍵盤觸鍵,到最終耳朵聽到播放出的樂音之反應時間)的反應回饋,以及傳統 DAW軟體內才有的音訊繞接(routing )等等諸多機能,Linux世界提出的方案,是透過JACK2 音訊系統搭配低延遲系的特製 Linux核心,變成特化的電腦作業系統。

這樣特化過的Linux 電腦,能作的事情從簡單的編曲混音到多演奏者LIVE 演奏+直播,到土砲自製錄音室,甚至一直到演唱會用的後台「即時處理機箱群」,都能辦到。可能是一台電腦,也可能是四五台電腦透過網路線,用net-jack機制結合成「一個系統」,退可守,進可攻,這是通用的電腦作業系統辦不到的。

進入正題,請看上圖,簡單說,不管哪個途徑的midi演奏訊號、audio(音訊)都被整合進JACK2。

這裡要特別要區分一下兩大類程式,如上圖一般的通用程式,是像我們常使用的mate桌面的事件通知音效(例如你按音量調整時聽到的叮鈴鈴聲音),透過瀏覽器看youtube 、 Netflix ,用mplayer、xine看DVD或藍光,或者用Steam玩電腦遊戲,使用OBS 直播等等,大部分的通用應用程式都是是使用pulseaudio 機制。

另一類則是「JACK 應用程式」,當然主要就是專業音樂程式,例如Ardour、 Zynaddsubfx、Qsynth、Helm、Hydrogen 等等。當然在Linux上,我們如果新發現一個專業音樂程式,我們一定很關心:它支援JACK嗎?

一開始的心理建設:
在JACK的接線盤世界裡,看到的每個軟、硬體,請把它們都當成是真實世界的
一個「裝置」來看待

在音訊方面:

  • 一般應用程式是接pulseaudio,程式之間的音訊不能互相連接,我們系統是透過pulseaudio 轉接器把一般音樂程式的聲音轉進 jack音訊系統。這樣平常使用很方便,不過在進行低延遲收音的時候,pulseaudio 有可能會對系統低延遲產生一點負面影響,在超低延遲收音時,視情況可以暫時關閉pulseaudio橋接器。(你也不希望收音到一半突然「叮咚」 XD )
  • 更舊時代(超過10年以上的設計)的程式是直接使用ALSA的,會造成搶音效硬體的獨占問題,為了保留相容性,我們電腦上的配置,這樣的程式會自動接到ALSA 音訊橋接器,然後轉接進入到JACK2
  • JACK應用程式的話當然就是出現在JACK「接線盤」裡面(以後我們會專篇介紹到)。主要都是專業音樂程式,不過也有少數多媒體程式也使用JACK。然後這些程式啟動時,有可能不會自動連接,也有可能自動連接到系統輸出入(System capture playback /System capture),而且不同的 JACK應用程式間的音訊可以彼此串連,可以是串接不同的獨立效果器,可以是從一個DAW軟體的某一音軌,透過JACK接到另一個DAW軟體的另外一軌,讓不同DAW之間截長補短等等,更進一步有些JACK 應用程式支援”JACK transport” (主要都是DAW 系軟體),這會讓不同的音樂軟體在播放/錄製聲音時同步,你可以想像類似Logic 、Reason、Pro Tools同步連動那樣(甚至是跨機兩台電腦上),有點像是那樣的感覺,而不需要在一個DAW內做完事情,匯出檔案,過帶到另外一個DAW繼續做事。

ps. 有的JACK應用程式雖然會自動連接到系統音訊的輸出入,雖然方便不過也不一定是好事,例如軟體電吉他綜合效果器—Rakarrack會自動接你的”system capture”,如果你沒有接外接音效界面時,這個”system capture”就是你筆電的收音麥克風了,如果你上次使用完沒有按其「Fx on」按鈕關閉Fx,這一次啟動,就會直接是” Fx on”的狀態,然後從你筆電的mic到喇叭間就會瞬間產生超巨大迴授嚇到一堆人 XD (緊急解法,趕快本能性把一個耳機插入耳機孔,或者記得趕快按那個按鈕)

另外在midi方面:

  • JACK midi:多半新一代的JACK應用軟體會走JACK midi,然後midi訊號也可以串連,例如可以一個實體MIDI鍵盤控制複數的軟體音源器+硬體音源器,當然,也可以是兩個MIDI鍵盤連接到同一個軟體音源器(例如說你要用兩個25鍵的小鍵盤,設在不同的八度,組合成一個 50鍵的MIDI鍵盤)
  • alsa midi:比較舊式的軟體會走alsa midi,然後音訊卻是走 JACK音訊。相容性的關係,我們一樣有alsa midi的橋接器轉接進JACK機制裡面。理論上JACK midi的延遲會比alsa midi低一些些,如果一個軟體可以設定走JACK midi或者alsa midi,建議是jack midi為佳

說到這裡,是不是開始感覺到JACK的神奇呢?以前在Windows、 Mac上,想要用理論上電腦可以辦到的該有機能,但是被既有套裝軟體限制住了,現在似乎可以自行達成? 😛

JACK管理前端

在我們Musicha電腦的預設MATE桌面上的右下角(圖中框起來的地方),我們把管理JACK 的幾個重要前端程式都整理在此。

這次我們要先講Cadence 。 Cadence跟Qjckctl 都可以設定、啟動、停止JACK2 音訊系統,不過我們Musicha電腦的規劃就只有使用Qjckctl 的「JACK接線盤」機制,就不特別講使用 Qjckctl 如何啟動/停止JACK2。

Cadence可以說是 KXStudio (整理各種音樂製作軟體與環境的大包裝之團隊)最重要的軟體。在System分頁,我們大致上可以分4個地方(圖上有標示的1 2 3 4 )來看

JACK伺服器的核心使用,就是SSP——
Stop、Start、PulseAudio橋接器重啟
三部曲

  1. JACK實體,其實叫做一個”server”(伺服器) ,這個伺服器啟動以後,就獨占了音效硬體。當我們在調整各種設定完以後,想要讓新設定生效,就會需要關閉(Stop)然後start(啟動),或者Force Restart(強制重啟動,但是建議平常不要直接用這個)。簡單說,初期你最常需要用到的就是Start Stop Configure這三個按鈕。這邊要特別注意,前面提到JACK 是走「類似實體硬體器材」的思維,所以要Stop或者Force Restart時,一定要先關閉所有的JACK應用程式,再關閉JACK這個「機器」,不然會造成你的音樂專案出現麻煩的問題,甚至有些JACK應用軟體如Ardour 發現JACK死掉了,就會自動接管ALSA而獨占之(然後你就無法重啟 JACK了),所以為了避免混亂,在你的工作流程的第一步,就要確定JACK的設定。
  2. 在操作JACK伺服器的啟動關閉或設定改來改去前
    • 要留意你開機的Linux Kernel是不是low latency(低延遲)、RT(realtime 即時),另外我們筆電比較新的機種都改配Liquorix 的特別調校低延遲核心,由於它的名稱內沒有”lowlatency”,Cadence會誤判,別擔心,Liquorix 可以正常使用JACK2。
    • 如果你開機的核心是generic(通用)或者(mx)等等,就是一般的核心,那就表示無法進行穩定的低延遲音訊作業,block latency在20ms以下是會破音的,建議調到 20ms以上。
    • CPU scaling governor(CPU頻率調整管理)雖然沒顯示,但是請在MATE桌面右下角有個CPU頻率跳動的那個小applet 按一下,那邊可以調整,作音樂時最好是用Performance 或者Ondemand 模式
  3. JACK伺服器重啟以後,系統預設不會自動帶起Pulseaudio 橋接器的(一般桌面系統音訊、一般程式都會變啞巴),所以記得去按Pulseaudio 分頁,重啟Pulseaudio 橋接器,一般的軟體與桌面音訊就會恢復。這個快速檢驗方法就是按Fn+F5/6 調整音量,聽提示音有沒有出現
  4. 這個區塊有JACK server當前的最新狀態:
    • Server status:現在JACK伺服器是啟動的嗎?
    • 有realtime嗎:其實realtime跟lowlatency幾乎同義,當然realtime是比lowlatency更「精實」一點
    • DSP Loading:數位音訊訊號處理的負載程度,如果是使用內建音效晶片的話,這個數值是綜合CPU、RAM存取速度、內建音效晶片的綜合運算覆載,當你跑越多的軟體音源或是越低延遲,負載就會越重
    • Xrun:來不及「算音」,發生破音的次數。這個數值如果是在啟動某軟體或者系統開機的過程中,增加幾個Xruns 算是正常的。但如果是在音樂軟體運作的過程中,Xrun快速累加(你應該也會聽到聲音怪怪的),這時要考慮降載,例如減少使用的軟體音源機、效果器,或者把當前專案進度儲存,關閉所有JACK應用軟體,然後停止JACK伺服器,把buffer 調大(latency也變大)再重啟JACK伺服器,繼續作業
    • Buffer size:這就是前述的buffer(音效運算的緩衝區),緩衝區越小,延遲越低,反之越大
    • Sampling rate:取樣頻率,一般來說普通的專案,例如以軟 /硬體midi音源為主的專案,48000hz算很夠用,如果需要處理高規格的真實收音,才需要到96000以及以上的取樣頻率
    • Block Latency:電腦系統內的粗估延遲(實際上會再多一點)’server synchronous’ mode

JACK伺服器的設定

我的音效界面是幾輸出幾輸入?

容許的最低延遲極限是多少?

buffer 越小,延遲越低,越是考驗硬體能耐

一開始我們已經題到了設定的大方向,就是音效界面/內建音效接面的輸出入有幾道(音訊硬體世界的觀念,一道或說一軌,就是一個mono 單音,立體聲 stereo= mono 1 、mono 2) 以及最低延遲極限。在Cadence的System分頁按下configure,會彈出一個對話窗,Engine分頁可暫時不管,只要記得裡面的Advanced – Server Synchronous Mode ,這個選項對於降低音訊latency 有相當幫助(但是某些狀況可能會讓使用舊式ALSA音訊的軟體發生崩潰),我們預設不開,留給大家自己測試看看。

接下來我們要提到在driver(驅動程式)分頁的設定關鍵四步驟(圖上有標示的1 2 3 4 ):

  1. Driver:沒有意外,就是用ALSA——使用本機或者接在本機的實體音效硬體,這個不用改,不過切記,如果你按了其他分頁但沒有真的要使用,在按右下角的OK按鈕離開前,記得按回ALSA,讓ALSA分頁顯示出來(不然會變成選擇其他驅動),再按”OK”完成設定。其他驅動也順便解說一下:
    • Dummy:空裝置,有時候你想要把你的電腦變成一個網路電台伺服機,例如用做youtube上的長時間音樂直播頻道(類似 Lofi Girl那樣)——喇叭不需要真的發出聲音,一切的聲音都是電腦內部的運算,那你就可以選擇這個模式
    • loopback:迴環,這個是謎樣的驅動….聲音送出去就自動回來的裝置??有空的時候你可以研究看看它能幹麻喔 😛
    • NET/NETONE:這就是跟netjack有關係,讓兩台以上的電腦透過網路(最好是在內網+用網路線連接),以netJACK就可以合成為「一體」,而且音訊一樣保持低延遲、可以 JACK transport 同步。軟體音源、效果系就可以分散在不同電腦上運算,由一台主控機調用。這個議題以後我們會另外專文講解。
  2. 你的硬體裝置要用哪一個?這邊…
    1. 我們預設是Duplex Mode(雙工模式),意思是你可以專用一個音效硬體只輸入(input device),而另一個音效硬體作為輸出裝置(output device)。比方說現在很流行 USB麥克風,其實就是一個沒有輸出孔但整合了麥克風的USB音效界面或者說是「USB音效卡」,它本體無法發出聲音,所以我們就可以把input device設成它,然後Output device設成筆電內建的音效晶片ALC293 Analog(類比輸出)
    2. 筆電內建晶片除了類比輸出外,還有HDMI 系列,那個要留意 HDMI 0 、1、 2 等等,是指你的HDMI埠、mini-DP埠、Thunderbolt3或4等(是的,實際處理上是變成HDMI訊號),這個我們筆電每一型的對應編號略有差異
    3. channels:這個「頻道」其實就是指你的音效硬體有幾軌輸入或者幾輸出(一軌是指一個mono 單音,想成電吉他導線就對啦),這就要留意看你的音效界面硬體的規格書,他有幾軌輸入、輸出呢?數字要正確喔。
  3. 這個區塊就是控制低延遲的程度buffer 越小,延遲越低,越是考驗硬體能耐(DSP loading)
    • Sample Rate:音訊的取樣頻率,基本上作音樂導向,會是特定倍數,也就是48000 96000 192000 ,選擇什麼,JACK伺服器啟動以後,所有的音樂軟體就會真的以這個為基礎進行「聲響運算」。選擇的方向跟你音樂產出(包含演奏出)的品質有關,如何決定呢? 取樣頻率需要高於一段樂音之最高頻率的兩倍時,才能把那個頻率還原出來人耳可以聽到的聲音頻率極限是20Khz也就是20000hz(其實這個頻段只有一些「空氣感」了),兩倍就是40000hz,也就是說48000hz的選擇可以完全收錄。不過為什麼會有96000以上的選擇?因為後來發現在真實世界的收音上,在20Khz以上的頻率,還有更多的…嗯「空氣感」或說「環境感」,有收到音的話會有更多的莫名的「感覺」。說回來,簡單說,這跟實體收音的專案比較有關係,如果你是純虛擬樂器的專案或者你沒有要錄什麼山谷的環境音、百人天籟大合唱、XX幾重奏之類的,是不太需要考慮96000以上
    • Buffer size、 Period/Buffers:這兩個參數與與取樣頻率會一起決定JACK的latency為多少
      • Buffer size:緩衝區大小,意思是1秒能處理幾「格」(buffer= frames/ period),特別要注意的,buffer size這個欄位其實可以自己輸入數字,不一定只能選固定的128 256那些喔
      • Period/Buffers:這是「一個緩衝區分配到多少處理時間」?
    • JACK 音訊的理論latency 公式跟 Engine分頁有無勾選Synchronous Mode而有不同
      • 有勾,也就是同步模式:Buffer size*Period/Buffers /取樣頻率(khz)=延遲幾ms(1000ms = 1秒)
      • 沒有勾,也就是非同步模式:Buffer size*(Period/Buffers +1 ) /取樣頻率(khz)=延遲幾ms (這是JACK2特有狀況,參考
    • dithering mode:高取樣頻率的數位音訊資料在降轉成低取樣頻率,例如96000hz轉換成48000時,直接轉換會在數位「邊緣」的地方發生「裁切」,造成不必要的失真不自然的情況,會需要在轉換完加入抖動( dithering),就是以某個演算法加入亂數的雜訊重塑數位「邊緣」,這樣經過數位-類比轉換時,我們-耳朵才能聽到自然的聲音。這裡可以選不同的模式,其中Triangular 是最安全沒問題的。
    • “Force 16bit”:這影響「取樣精度」,JACK預設使用32bit,你可以把他改為低一些的16bit 減輕在超低延遲運算時的負荷(LIVE演奏時有幫助)

關於latency, 要完好運作,如果是外接的USB音效界面,計算出來的JACK延遲最好是可以整除的,也就是1ms的倍數。簡單試算一些:

128*3/48=8ms

256 *3 / 48=16ms

192*3/96=6ms

以MZ-530的內建音效晶片Realtec ALC293為例,取樣頻率48000hz 時,JACK穩定低延遲最低可達 144*2/48=6ms (同步模式),如果設 取樣精度設16bit的話會更穩。這邊再提醒一下, Buffer size是可以自己輸入數字的喔

在Linux audio網站上可以找到這一張簡表 可以參考

那這次入門的設定就介紹到這邊囉,期待大家調出最棒的設定,完全發揮電腦的性能。 ^^

發佈日期: 發佈留言

Musicha使用的Linux核心與CPU調速

首先解釋什麼是「核心」,核心(kernel) 可以說就是一個作業系統(OS) 的心臟,或者說是引擎,Linux 其實只是一個核心,通常專業上提到完整系統時,我們會用「Linux發行版」或者 GNU/Linux 系統來描述,Linux 核心只不過就只是個引擎,還需要 GNU等等的自由軟體的各種作業系統的元件組合起來,才會是一個完整的作業系統。

MacOS 或者 Windows 的設計,是一個作業系統「產品」只有一個核心,這個核心要應付各種各樣的不同使用情境,因此,該核心的調校必須折衷適用於所有使用情境,除非你購買不同方案的作業系統產品。GNU/Linux 系統跟前兩者最大的不同,是開機進入grub多重開機程式時,你可以選擇不同的核心開機,來進行不同的使用情境每個核心就像是不同引擎,有各各不同的專擅性能趨向。

開機的第二個畫面,這就是grub,這個畫面會倒數2秒,如果時間到沒有按上、下鍵移動選項,就會自動用預設的核心開機

如何選擇想開機的核心呢?請選擇第二個選項的 advanced option / 進階選項 就可以選擇想要用的核心開機

以Musichavl (MX Linux based)為例會看到這樣的選擇

我們會看到每一個選項, 這邊說明一下各種核心的差異跟特色

  • liquorix 核心:這是我們Musichavl們現在預設啟動的核心,他是經過特殊調教過的低延遲+高效能核心,適合專業音樂製作、遊戲,不過也因此很耗電,CPU調速也沒有powersave 模式(省電)的選項,而且它的performance 、Ondemand的調速模式都會比通用核心的「兇猛」許多
  • 即時核心:後贅詞為’rt’ 或者’realtime’ 都是,是超低延遲的即時核心,理論上可以比Liquorix 更低延遲,但耗電的狀況也是可想而知,需要低延遲的專業音樂任務上不一定就比liquorix更好,可以自行測試比較看看
  • 一般的低延遲核心:這樣的核心會有’lowlatency’ 的後綴描述詞,會比 Liquorix 的弱一點,不過一樣適合專業音樂製作
  • 通用核心:Ubuntu 系的話會顯示 “generic” ,或者畫面上看到的 mx(MX Linux 官方打包的通用核心),中規中矩,適合一般桌面用途的使用

這邊要別留意的,在不同類型的核心中,一樣名稱的CPU調速模式( cpu governor),會有不一樣程度的調速行為,所以Liquroix的 performance 會比 通用核心的performance 猛烈一些。

這麼多核心的使用概念有點像方程式賽車可以按照賽道特性、氣候更換車子的引擎以及各種零件,也類似賽車跟一般轎車的對比,因此在更換不同調校的核心以後,一個GNU/Linux 系統可以比一般的作業系統有著在特定領域情境所需要的超群性能,你不須跟「大眾」的通用需求妥協。

只要一開機時選擇你要用的引擎即可 ^^

補充,我們Musichavl 由於是以OEM模式安裝,所以(systemd)的模式無效

發佈日期: 發佈留言

Musicha 跟傳統筆電+DAW軟體有何不同?

除了效能、軟體集有多少軟體以外,恐怕音樂人最關心的在於Musicha 到底有啥特別的?

傳統作業系統與DAW軟體對於專業音樂其實有個假設——這樣的東西主要是給幕後製作人員使用,也就是說錄音、打譜、作曲、編曲、混音、母帶後製等等,這些東西綜合起來也就是所謂的DAW (數位音樂工作站)軟體, 在一個DAW 軟體內一站式達成。

然而這樣傳統的設想畢竟是針對專業幕後製作人員,在這個數位科技高度普及年代,就忽略了音樂表演人員也高度使用電腦了,但他們日常音樂性應用需求,是很被忽視,甚至要購買更高貴的設備才能達成簡單的事情,例如說:

  1. 抓歌、研究別人的音樂作品:是非常重要而基本的需求,而傳統的電腦設計很難達成這件因為需要在電腦裡的「同一聲響空間」同時可以聽到youtube 等網路串流媒體的聲響,又可以聽到自己彈奏的樂器
  2. 方便的翻彈翻唱:現在錄製”cover ” 展現自己能力的曝光平台也是以網路為主,當要搭配伴奏帶時,傳統上一定要有兩台電腦或者高級有回放功能的錄音界面才能達成
  3. 現場演奏+自主簡易PA:midi 鍵盤搭上電腦裡的單一甚至複數軟體音源理論上就可以作到很好,但是當我們要載入笨重的傳統DAW 才來作現場表演時,效能上就被相當的拖累了
  4. 專業表演直播/youtuber需求:承前面幾點,國際最新的趨勢,新一代音樂人會直接從直播表演或者網路影片開始崛起,現場播放或者錄製的影音品質就很重要,只是用一支手機的麥克風不專業地收現場充滿各種環境噪音的,這樣的音質在今日的水準已經很不夠,會拉低自己曝光上的競爭力,因此前述的2.3點就非常重要


這些問題都在於傳統作業系統的音訊機制設計跟DAW 配合的問題,理論上修改系統設計修改過就會變成很理想,但是這會讓Windows 、Macintosh 脫離「通用系統」的狀況,特別滿足了音樂使用者,就對其他領域的使用者不便。而 Musicha 則不同,採用特化型專業Linux audio 系統,可以釜底抽薪的解決問題。

我們系統使用的超低延遲Linux核心搭配JACK2 音訊系統作為作業系統的關鍵,這讓整個作業系統變成一個大DAW,使得可以:

  • 軟體音源甚至效果器可以獨立存在運用更有彈性
  • 音樂軟體可以互相串接,甚至也能輕鬆地對非音樂軟體收音,例如對瀏覽器上的Youtube 甚至DVD 影片、遊戲收音(方便作抓歌分析)
  • 因此

發佈日期: 發佈留言

把電腦化身成 Linux演奏琴系統

演奏琴系統

這是我們最近一位剛考上大學音樂系的顧客問到的好問題,今天我們把那一夜討論的很多東西整理在這一篇,先說結論,我們的音創電腦當然可以用作現場演奏的用途,這是本來訴求的機能之一,並不只有傳統 DAW幕後編曲的機能,因為….

你買到的Musicha 筆電其實就是一個樂器

一般印象會認為現代用電腦製作音樂就只能純幕後製作,也就是說是花幾小時到幾個星期精雕細琢出一首音樂作品,要作這件事須仰賴專業DAW軟體(數位音樂工作站),除此之外頂多像是用Musescore 打譜之類,就沒有其他方法「作音樂了」,所以不能作現場演奏用。這個印象來自 DAW,畢竟DAW的設計本來就不是為現場「活的」(live)演奏而設計,雖然有少數的DAW開始注重現場演奏的機能,但是畢竟是少數,而且DAW畢竟是沈重的大型軟體,開了DAW卻只演奏一軌,又有一點點大材小用?

更進一步,如果不是「能演奏」就好,而是把電腦+純MIDI主控鍵盤組合起來,達成專業的演奏琴那樣的水準的東西,又是更少人觸碰到的議題了,而且這還涉及鍵盤手演奏鍵盤樂器的好操作性(並非編曲者手拙地用鍵盤「拉」小提琴或者「吹」豎笛等等),好在我們Musicha 音創筆電的軟硬體系統可以達成現場演奏的任務。

我們Musicha 的筆電系統得益於 專業的JACK低延遲音訊系統,它把音訊繞接的機能直接變成一個系統服務,而不像傳統DAW只有在DAW軟體內部才能進行。

以上圖為例,上圖有兩個視窗,上面是Bristol軟體音源(模擬40幾種經典鍵盤合成器)的Moog Voyager 琴,下面是JACK2的接線繞接(routing)的一個前端界面,非常簡單拉三條「虛擬導線」,就只是:

Korg的Micro key主控鍵盤的midi輸出演奏訊號接到”Moog Voyager” 軟體音源的MIDI輸入孔(紅色元件),然後發出來的聲音訊號再接到實際的音效硬體(藍色元件)的左右聲道發出聲音。

非常的簡單,不涉及DAW軟體。或者說整個GNU/Linux系統就是一個巨大的DAW軟體( 藉由JACK2)。-而且傳統DAW 對於MIDI鍵盤/裝置的使用邏輯是「錄製midi演奏訊號」,所以通常一個 MIDI鍵盤只能接到一軌(因為要錄製),不過JACK系統不只可以讓我們一對一,也可以一對多(一個MIDI鍵盤一次控制複數的軟體音源)也可以多對一(多個MIDI鍵盤控制一個軟體音源),比方說可以用三個MIDI鍵盤來控制一個管風琴音源(就像演奏真的管風琴一樣)。像這樣演奏琴的用法,在我們的youtube頻道上,其實好幾個影片就是藉由這樣錄製成的(也有的本來就是直播的存檔)。

更進一步,因為是演奏琴的思考,我們不禁會想是否能從實體的裝置控制Moog Voyager 軟體音源上的那些推桿、旋鈕等等?可以的,因為Bristol 等音源有”midi learn” 機能,只要在JACK2的「接線盤」上把有許多飛線(fader )、旋鈕(knobs ) 的MIDI控制器接到軟體音源,就可以使用”midi learn”的熱鍵,來把實體旋鈕跟軟體音源的旋鈕作對應。

也就是說,對應完成以後,Musicha筆電+MIDI主控鍵盤與控制器+喇叭組合起來就是一個演奏琴系統,然後需要「外接」效果器嗎?Linux 上的效果器插件除了在DAW軟體裡面使用外,也可以透過”host” 化身成獨立(standalone)元件在JACK接線盤裡面出現,就可以把軟體音源繼續串接一堆效果器,再輸出音訊到喇叭發出聲音。

當然我們電腦系統上的任何自由軟體系的各種軟體音源,不管是獨立APP式(standalone)或者插件式,都可以這樣用。

不過更進一步,考慮到要演奏的樂種,像前述的Bristol 軟體音源能模擬的琴雖然多,但可能比較接近70末~90年代流行音樂的需要,其他的音源甚至是一大堆比較「電」的現代聲音,如果是要作認真的Jazz、Blues、R&B等黑樂或者要演奏古典鋼琴曲呢?

首先系統裡面有軟體取樣音源機如Qsynth (能使用比較簡單的 sf2 sf3音色庫),還有Qsampler(可以用專業等級的大型 giga、sfz音色庫),然後系統已經有預裝了幾個sf2音色庫,不過單論鋼琴的音色品質,sf2覺得不夠的話,在我們筆電隨附的錄音帶造型還原碟的”B”分割區,裡面有幾個大型開放授權的管弦樂、單一鋼琴的sfz音色庫

最後推薦最頂級的鋼琴、電子琴的LIVE 演奏方案。需要直接拿到舞台上獨奏的話,可能會覺得我們附的自由鋼琴音色還是不夠酐,那我們會推薦Pianoteq這個商業軟體。Pianoteq 是鋼琴軟體音源的兩大,另一個是Keyscape ,前者是物理模擬音源,後者則是取樣音源,剛好Pianoteq 有Linux版。

為什麼我們推薦Pianoteq呢?除了它有Linux原生版外,最主要是它的聲音很真實,Pianoteq 適合鋼琴手、鍵盤手Keyscape 是比較適合不懂鋼琴的人使用,比方說用滑鼠在DAW上拉好midi譜,輸出給Keyscape 演奏,Keyscape的鋼琴演奏聽起來就很有味道了。但是Keyscape 是取樣音源,說白的,就是把演奏者按真實的那個鋼琴琴鍵的聲音錄下來,然後進行各種調變,但無論如何再怎麼調變,音色就是侷限於當初錄下來的聲音與取樣時的演奏者技術,聲音畢竟是死的。

真正的鋼琴手知道,鋼琴的音色是可以變化的,鋼琴演奏的專業程度在於彈奏的「表情」,而Pianoteq的好處就在這裡,它就是真實的模擬出那台鋼琴的物理特性,所以你在MIDI主控鍵盤、MIDI踏板上面各種的動作細節,它會像真正的鋼琴一樣反應出不同音色變化,以下是Pianoteq跟取樣系的鋼琴音源的比較。

最後作個總結,Linux 與JACK帶給我們音樂專業上的許多彈性,不像傳統上認為只能用DAW而已,所以我們會建議買我們的筆電,其實週邊配備不需要跟著筆電一次買到頂,因為您可能沒有認知到它有這樣的能耐,而錯誤配置了自己的寶貴的預算。當你發現,原來Musicha筆電可以組成「演奏琴系統」,您的預算是不是要做不一樣的分配了呢?(複數的MIDI鍵盤、複數MIDI踏板..etc) 😛

發佈日期: 發佈留言

影片剪輯軟體Olive 的安裝

關於影片剪輯軟體,對於真正的專業剪輯人員(例如常常剪Youtube影片當Youtuber ),如果要真的可以”work ” ,我們推薦 Olive,其他的是更專業的 Cinelerra-gg、Lightworks (1989 年開始發展,是電影公司使用的,Lightworks 算是半開源軟體,進階使用需要付費訂閱)

這是Olive的官網: https://www.olivevideoeditor.org/

因為 Olive 雖然還是Alpha版,但是完成度非常高,幾乎沒看過bug ,而操作非常直覺,能夠很輕鬆的控制效果,我們官網最新的影片都改用Olive做了。那些標題字旋轉、移動顏色變化的效果都是超輕鬆又快速完成,工作效率遠勝Kdenlive,剪輯中影片片段在 MZ-530 筆電上,也不會像Kdenlive 那樣卡到不行 。

安裝上,apt 的套件庫體系有所謂的ppa(第三方套件庫),我們平常不推薦這樣的東西,但是Olive 的我們很推薦。 Olive 官方ppa 是這個

https://launchpad.net/~olive-editor/+archive/ubuntu/olive-editor

然後我們要這樣作:
sudo add-apt-repository ppa:olive-editor/olive-editor && sudo apt-get update
這樣就加入了Olive 的套件庫了,而且更新了套件庫清單,所以套件管理程式就看得到它了。 然後我們就可以開啟Synaptic 等套件管理程式找到它來安裝,或者下指令sudo apt-get install olive-editor就可以安裝起來了。 另外也有snap的安裝法

sudo snap install --edge olive-editor

這就不用傳統apt套件庫的安裝法了,不過它有可能無法應用到CPU的 H265硬體編碼加速能力(因為可能看不到相關函式庫),必須要測試看看。

關於影片剪輯軟體,如果要真的可以”work ” ,我們推薦 Olive,其他的是更專業的 Cinelerra-gg、Lightworks (1989 年開始發展,是電影公司使用的,Lightworks 算是半開源軟體,進階使用需要付費訂閱) https://www.olivevideoeditor.org/ 因為 Olive 雖然還是Alpha版,但是完成度非常高,幾乎沒看過bug ,而操作非常直覺,能夠很輕鬆的控制效果,我們官網最新的影片都改用Olive做了。那些標題字旋轉、移動顏色變化的效果都是超輕鬆完成,遠勝Kdenlive 。 apt 的套件庫體系有所謂的ppa(第三方套件庫),我們平常不推薦這樣的東西,但是Olive 的我們很推薦。 Olive 官方ppa 是這個 https://launchpad.net/~olive-editor/+archive/ubuntu/olive-editor 然後我們要這樣作: sudo add-apt-repository ppa:olive-editor/olive-editor sudo apt-get update
這樣就加入了Olive 的套件庫了,而且更新了套件庫清單,所以套件管理程式就看得到它了。 然後我們就可以開啟套件管理程式Synaptic找到它來安裝,或者下指令sudo apt-get install olive-editor就可以安裝起來了。 另外也有snap的安裝法

sudo snap install --edge olive-editor



這就不用傳統apt套件庫的安裝法了,不過它有可能無法應用到CPU的 H265硬體編碼加速能力(因為可能看不到相關函式庫),必須要測試看看。

教學資源上,我們推薦這個Youtube影片,你可以快速地上手它的關鍵操作(真的非常好用的熱鍵設計),會讓你剪片如行雲流水,達成很順暢的workflow

發佈日期: 發佈留言

報稅的時候又到了,Linux 下讀卡機行不行?

cardreader

這是個老掉芽的問題,不過我們這邊還是特地說一下,可以的喔,政府官方支援Linux 報稅最少有兩年歷史了。

現在市面上可以輕易地買到支援Linux 的讀卡機,甚至在墊腳石書局的3C區就可以找到包裝上有標明支援Linux 的,例如照片裡這一台。

實務上,用自然人憑證還是健保卡好呢?我們比較推薦自然人憑證(到任何一個戶政事務所就可以申請囉),因為他安全性較高,而且前置作業比較簡單(健保卡報稅法需要到複數的政府網站去設定一些東西),Ubuntu 發行版的話,只要在系統上用Synaptic 套件管理程式勾一勾,安裝幾個套件,然後下載政府網站提供的程式(其實是一個單機的網頁伺服器),插上讀卡機,就可以開始報稅囉。

當然上網訂口罩也是用同樣的機制,所以訂口罩、報稅,GNU/Linux 或者說汎Linux 發行版都沒有問題。

發佈日期: 發佈留言

wine的安裝與路線選擇

2020/03/20/13:16 更新,感謝@Ji***@g0*.social 協助校誤

我們知道Linux上面有wine的相容套件庫,裝了它就能雙點執行windows的exe程式,來執行那些真的真的Linux上沒有替代方案的程式。

關於wine的安裝與選擇,Musicha 的顧客由於有付費取得對Ubuntu 的pro audio加強/調校服務,其實有兩種方案。


方案一:需要低延遲使用Windows版的 vst

真的你的音樂專業事務在Ubuntu Linux 上完全找不到替代方案(LV2 、Linux 版vst/vsti等),還非得要使用Windows 原生的VST,且需要即時低延遲運作,那就只好選這個。

方法是從套件管理程式裡面安裝 wine-rt 這個套件,它是KXstudio 開源AUDIO團隊修改出來的即時版wine(不過很舊了,只有2.3 ),它會帶起安裝Carla 等等大量的關係套件,安裝好以後,你就可以安裝Windows的 vst/vsti (包含Kontakt 取樣機等)可以順利且即時運作。

方案二:不講究低延遲、不太玩最新遊戲與程式

這樣的話,套件管理程式裡面選擇Ubuntu 18.04內建的 wine-stable 即可,一樣等一整個葡萄串的軟體套件被連帶安裝起來即可。

方案三:不講究低延遲,要玩最新的遊戲或者應用程式

其實可以的話,盡量用Steam 的Steam Play(使用 Proton,是Valve特別強化版的Wine)機制,就可以執行非常大量的遊戲和少部份遊戲程式,Proton 最新的版本是5.0的版本,請記得更新好來執行Steam 上的Windows only遊戲。

真的不得已,才用wine 方案,由於Ubuntu 18.04 的wine 只有到3.0,太舊了,新的遊戲會有很多狀況 ,這樣的話我們會需要最新的wine 5.0甚至5.4版。

因此我們需要用wine官方的ppa ,根據WineHQ官網的說明文件,要這樣作(以下需要打開終端機, 複製貼上字串等):

1. 啟用i386架構: sudo dpkg --add-architecture i386  
2. 取得winehq的認證公鑰: wget -nc https://dl.winehq.org/wine-builds/winehq.key 
3. 加入winehq的公鑰: sudo apt-key add winehq.key 
4. 加入第三方的winehq ppa套件庫: sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'  
5. wine 4.5以後,develstaging 開始需要手動安裝這個套件: sudo apt install --install-recommends libfaudio0:i386 libfaudio0

好啦,接著就可以安裝 Wine5的本體啦,然後有三個選擇

而且最好有winehq 最新的個別Windows 遊戲的官方特調參數…

想要安穩一點的,請安裝stable版: sudo apt install --install-recommends winehq-stable
想要協助開發,請安裝devel版:sudo apt install --install-recommends winehq-devel
想要玩最新最新遊戲的,請安裝staging:sudo apt install --install-recommends winehq-staging 
然後Linux 的終端指令,有sudo 可以用"&&"結合,無sudo 可以用";"來結合成一行指令

如果把之前的所有指令組合在一行,以安裝 staging為例,會變成這樣

sudo dpkg --add-architecture i386 && wget -O - https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add - && sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main' && sudo apt update && sudo apt install --install-recommends libfaudio0:i386 libfaudio0 winehq-staging

只要用Linux 標準複製大法貼到終端機即可
(反白即複製,按滑鼠中鍵或中鍵模擬就是貼上)
就可以一口氣完成一大堆複雜的動作(想改成stable或devel 請自己改最後一行),這一招請練起來唷,本來用繁複圖形界面的操作,用這樣的「一行指令」就可以完成了。


備註

  • 安裝winehq提供的 wine-stable或者wine-staging 等套件時,libfaudio 、 libfaudio0:i386並不會自動被帶起相依性,所以得手動裝囉(這是一些比較舊的中文wine安裝教學文沒有提到的),這是要特別需要留意的地方
  • 如果你掛了winehq的套件庫,想要切換回wine-rt(2.3)或 Ubuntu 官方包的wine-stable ,最好要在套件管理程式把winehq版本的相關wine套件都「完整反安裝掉」(在synaptic 裡面很好作),再裝wine-rt;要回到Ubuntu官方包的 wine-stable 3.0的話,除了反安裝掉WInehq版本的wine所有套件以外,還要再關閉winehq的套件庫來源(Synaptic的下拉選單裡面選),update套件庫清單一次,然後再安裝wine-stable就會是Ubuntu 官方3.0版的。
  • winehq的ppa畢竟不是 ubuntu 官方維護的,當有一天你需要升級Ubuntu系統時,請記得先把winehq相關的套件庫來源都關掉、按「更新」套件清單,再作升級喔
發佈日期: 發佈留言

MZ-530 2020選後年前優惠款 限時優惠

「2020選後年前優惠款」 (白底兔版)開放囉,就只有一台,特惠價35000(只能匯款付現),預計本週五出貨,保證讓你過年前可以帶回老家炫一波 😛

PS.這一台也會是過年前最後出貨,不會一直開著,最晚接近過年前出貨底限時(大概就是週三),就會消失
https://goods.ruten.com.tw/item/show?21838669839373