absmiddle 如何做出 Linux 下的 cdda2wav 呢?


[解說] 想要做 MP3 檔, 就要先有 WAV 檔, 如果想在 Linux 下直接轉錄 CD 音軌, 目前可以 找到的工具是 cdda2wav0.71.src.tar.gz. 1.將 cdda2wav0.71.src.tar.gz 解開來 : tar zxvf cdda2wav0.71.src.tar.gz 2.首先去看看 Makefile, 開頭的幾行可以看到下面的東西 : INTERFACE=\"generic_scsi\" # set the default cdrom device DEF_DEVICE=\"/dev/sgd\" # matching device # used for a MULTISESSION ioctl AUX_DEVICE=\"/dev/cdrom\" # for nonscsi cdrom drives with cdda kernel support ie atapi, cdu31a # choose this if the kernel driver supports cdda reading #INTERFACE=\"cooked_ioctl\" # set the default cdrom device #DEF_DEVICE=\"/dev/cdrom\" # not actually used #AUX_DEVICE=\"/dev/cdrom\" 如果你的光碟機是 SCSI 的, 就注意一下前面那個 DEF_DEVICE=\"/dev/sgd", 把 它改成你自己的光碟機位置. 而如果你的光碟機是非 SCSI 的, 包含舊式的 AT-BUS 或是 ATAPI 光碟機, 則把 前面那三個 INTERFACE DEF_DEVICE AUX_DEVICE 前面加上 "#", 取消他們的設定, 然後把下面那三個 INTERFACE DEF_DEVICE AUX_DEVICE 前面的 "#" 給拿掉, 使得 這個設定生效. 3.輸入 make 來 compile 執行檔. 如果 make 到 interface.c 時發生錯誤, 請看一下 interface.c, 第 39 行附近, 有以下的設定 : #include <scsi/sg.h> #include <scsi/scsi.h> 這個設定可能並不適用於你目前的 kernel 目錄, Linux 的目錄常常變更結構是眾 所皆知的事情. 試著去改成下面的設定看看 : #include </usr/src/linux/include/scsi/sg.h> #include </usr/src/linux/include/scsi/scsi.h> 當然這表示你將 Linux 的 source code 放在 /usr/src/linux 下, 如果不是的話, 請自己改變一下囉! 重點是 include/scsi 這邊要正確. 4.現在應該有 cdda2wav 這個執行檔了. 請注意你的光碟機是不是符合 Makefile 中的設定, 否則就要在執行 cdda2wav 時另外給 -D 的參數來指定你的 device.
上一層目錄