3月 22, 2012

如何轉換DTS檔為FLAC檔

在Slackware 13.37 環境下,常見的是將音樂CD的音軌轉換為損失性壓縮格式(mp3)或無損失壓縮格式(flac、ape)的音樂檔案,最近遇到一種音樂格式是DTS,找不到工具程式將整個專輯的DTS音樂檔,轉換並分割為單首歌的音樂檔案!
從GOOGLE搜尋的資料大多是UBUNTU或是WINDOWS環境下的操作方式,後來想到先到SLACKBUILD網站找找看,皇天不負苦心人,找到DTS的函式庫及安裝SHELL(如下):



解壓縮並編譯後完成安裝動作,觀察到安裝的DTS函式庫帶有4個執行檔:

dtsdec          解碼並播放DTS檔
extract_dca   從MPEG stream解壓縮獲取DTS檔   
extract_dts   同extract_dca
dcadec        同dtsdec

其中dts_dec的輸出模式能依指定格式輸出到標準輸stdout;所以
首先將DTS轉換成WAV或其它較通用的格式

dtsdec -o wav ./cd.dts > cd.wav

再將依照.cue檔分割成單首歌曲檔,指令如下:

 shntool -i wav -o flac -f cd.cut -t '%n.%t' cd.wav




3月 11, 2012

Slackware13.37用dpkg安裝8051開發環境

dpkg是Debian Linux的套件管理程式,因為管理效果良好,已由許多的Linux移植後用來管理軟體套件,如Ubuntu的apt及Fedora的yum。
但是我使用的Slackware,還未建立豐的套件伺服器,以致於使用特殊軟體時,仍需下載source自行安裝,近日,學習單晶片程式開發時,嘗試在Slackware下建立完整的開發環境如下:

1.小型設備如單晶片及手機等軔體開發用c語言編譯器:SDCC

2.單晶片8051的組合語言編譯器:ASEM-51

3.單晶片整合開發環境套件:MCU8051IDE

 可惜的是,MCU8051IDE軟體原始碼下載後,仍需使用dpkg安裝,所以只好先從slackbuikd網站下載dpkg原始碼執行安裝動作,並將MCU8051IDE運行所需相依套件安裝完畢,完成後使用強制模式(dpkg -i --force-depends)測試一番,還是不行,殘念呀!查了查原來是dpkg找不到status及available兩個套件資訊檔,只好先建立兩個空檔案欺騙系統,如下:

touch /var/dpkg/status
touch /var/dpkg/available

接下來重來一遍,總算繼續執行安裝動作了,但天不從人願,安裝完後dpkg照例會執行update-rc.d更新系統,但在Slackware下從未聽過update-rc.d,只好想辦法再騙騙系統囉!如下:



cp /bin/false /tmp
cd /tmp
ln -s false  update-rc.d
export PATH=$PATH:/tmp
 
接下來,重新執行一次,順利過關!完成,順利將MCU8051IDE跑去來,有圖有真像,如下:
 
 

12月 10, 2011

GNOME3.0升級到3.2

GSB是GNOME SlackBuild的簡稱,是架構在Slackware Linux上的X視窗管理環境----GNOME,官方網站為http://gnomeslackbuild.org/,目前的釋出版本為GSB 2.30。
之前,為試試新的桌面環境,先行安裝GSB 3.0嚐鮮,感覺操作環境簡單美觀,使用效果蠻棒的,這週自GSB-Users討論中獲知 GSB3.2已經上架,放到伺服器http://ftp.osuosl.org/pub/gsb/,有興趣相安裝的朋友,請依作業系統環境,選擇X86或是X86_64安裝。
X86作業系統,請到目錄 gsb-3.2_slackware-13.37/
X86_64作業系統,請到目錄 gsb64-3.2_slackware64-13.37/

安裝的方式,區分為網路連線安裝或下載到本機安裝,以下介紹網路連線安裝的部分:
1.安裝slapt-get
 (1)下載位址 http://ftp.osuosl.org/pub/gsb/gsb64-3.2_slackware64-13.37/gsb64/ad/slapt-get-0.10.2l-x86_64-1gsb.txz
 (2)以管理員權限執行指令,$ installpkg slapt-get-0.10.2l-x86_64-1gsb.txz ($ 是Shell的提示符號)

2.修改/etc/slapt-get/slapt-getrc
  以管理員權限執行指令,$ vi /etc/slapt-get/slapt-getrc
  修改第40行,將current改為13.37(原始SOURCE=http://mirrors.gnomeslackbuild.org/gsb/gsb64-3.2_slackware64-current/:PREFERRED,改為SOURCE=http://mirrors.gnomeslackbuild.org/gsb/gsb64-3.2_slackware64-13.37/:PREFERRED)
3.安裝
 (1)進入單一使用者(single user)模式 runlevel 1,指令為 $ telinit 1
先執行步驟1及2,若是第一次安裝GSB 3.2,請以管理員權限執行指令,
 (2)$ slapt-get --update  下載並更新檔案清單)
 (3)$ slapt-get --add-keys  (下載並安裝金鑰)
 (4)$ slapt-get --upgrade --remove-obsolete  (刪除過時的或舊的軟體套件)
 (5)$ slapt-get --install gsb-desktop (安裝桌面所需軟體套件),你也可以直接使用系統內定的網路自動安裝程序:
(5.1)使用 wget:
  For x86:
    $ wget -q -O- http://gnomeslackbuild.org/net-install | bash
  For x86_64:
    $ wget -q -O- http://gnomeslackbuild.org/net-install/64 | bash

(5.2)或使用 curl:
  For x86:
    $ curl http://gnomeslackbuild.org/net-install | bash
  For x86_64:
    $ curl http://gnomeslackbuild.org/net-install/64 | bash

(5.3)或使用 lynx:
  For x86:
    $ lynx --source http://gnomeslackbuild.org/net-install | bash
  For x86_64:
    $ lynx --source http://gnomeslackbuild.org/net-install/64 | bash

4.自舊版升級(自GSB 3.0)
先執行步驟1和2,及步驟3的(1)~(4),以管理員權限執行指令,
$ slapt-get --upgrade  (升級並安裝新軟件套件)

5.注意事項
(1)不論是安裝或是升級,完成軟體套件安裝程序後,請重新啟動LINUX系統或是進入多使用者模式multiusers mode(runlevel 3),然後進入X視窗模式(runlevel 3),以確保系統正確安裝。
(2)要確認你的顯示卡有支援GLX,不然是無法使用GNOME 3或GNOME 3.2,我的獨立顯卡是nvidia GeForce 6200系列(現在算是舊卡了),之前就因為GLX問題,花了無數次的重新安裝才成功...

以上所提,僅是個人的操作經驗,若有各方大大有相關意見,請不吝指教!

GNOME3.2桌面