[轉貼]Debian Sound

常言道:『飲水思源』,在 Open Source 的世界裡,我們常常需要別人的幫助,但是在您有所心得的時候請記得分享給大家,『幫助人是快樂的喔』。歡迎您在使用 debian 的過程中的任何心得分享給大家。

[轉貼]Debian Sound

文章moto » 週三 7月 07, 2004 4:39 pm

本文來自:http://os208.nchc.org.tw/~klhaung
代碼: 選擇全部
Debian Sound
Reference: http://www.tux.org/~tbr/sound-debian/
           http://www.alsa-project.org/
           http://people.debian.org.tw/~moto/tips/tips_index.html

* compile kernel 將 sound 的部份 compile 進去

* 設定 sound card (sndconfig)
  -> sndconfig 會偵測 kernel 所提供的 sound driver

  # apt-get install sndconfig
  # sndconfig
 
  注意: 若一切順利的話, 該程式會產生一個檔案 /etc/modutils/sndconfig,
        並且執行 update-modules 產生新的 /etc/modules.conf
       
* 設定 sound card (alsa)
  -> 當kernel本身提供的sound driver不敷使用時, 安裝alsa
  -> Debian 已經有包裝 kernel-2.4.16 ~ kernel-2.4.18 相關的 alsa modules (apt-cache search alsa),
     應可直接安裝, 以下是若是沒有提供相關的 alsas modules 時的作法

  # apt-get install alsa-source alsa-utils
  # cd /usr/src
  # tar xvjf alsa-driver.tar.gz
  # cd /usr/src/modules/alsa-driver
  # ./configure
  # make
  # make install
  # ./snddevices
 
  注意: 會安裝到 /lib/modules/`uname -r`/kernel/sound 底下,
        將你允許使用 /dev/dsp 的使用者加入 audio 這個 group 底下,
        或是 chmod 666 /dev/dsp 開放給所有使用者使用
 
  # apt-get install alsaconf
 
  注意: 這個 package 是 4.0.x 版的, 目前 alsa-source 最新版為 5.0.x,
        還是可以使用該工具幫忙設定, 然後在調整成 5.0.x 的設定
        (大同小異, 只是module name有些變動)
       
  # alsaconf
 
  注意: 自動偵測會抓不到任何一個chip, 要手動去選一個,
        http://www.alsa-project.org/~goemon/ 列出 alsa 支援的 chip, 及 chip 的原始網站,
        設定完成後, 會在 /etc/alsa/modutils 底下產生一個檔案,
        假設產生的檔案是 0.5, 你選擇的chip是 abcde
       
  # cp /etc/alsa/modutls/0.5 /etc/modutils/alsa
  # vim +"%s/snd-card-abcde/snd-abcde/g" +"wq" /etc/modules/alsa
  # update-modutls
  # /etc/init.d/alsa start
  # /etc/init.d/alsasound start
       
  注意: 若是有問題, 修改你的 /etc/modutils/alsa, 通常是參數的問題,
        options snd .....
        options snd-abcde .........
                          ^^^^^^^^^
                          為設定給 snd-abcde 的參數, 將有問題的參數拿掉或修正
                           
  注意: 剛裝好alsa時, mixer設定為mute, 所以會發不出聲音, 找個mixer的工具(eg. xmix)
        或是使用 alsa-utils 中的 alsamixer, amixer 來將之打開
       
        使用 amixer 將聲音打開
        # amixer set -c 0 Master 70 unmute
        # amixer set -c 0 PCM 70 unmute
        # amixer set -c 0 CD unmute       


* 安裝 multi-media 軟體
  (1) Win32 Codec
      -> 有了這個codec之後, mplayer, avifile 都可以撥放 window multimedia 的格式 (*.wmv),
         avifile 甚至可以撥 *.asf *.asx (不過不能直接在網路上聽, 不知為何)

      # wget http://ftp.lug.udel.edu/MPlayer/releases/w32codec-0.60.tar.bz2
      # tar xvjf w32codec-0.60.tar.bz2
      # mkdir /usr/lib/win32
      # cp w32codeec-0.60/* /usr/lib/win32
     
  (2) MPlayer (http://www.mplayerhq.hu/homepage/)
      -> 尚未包裝 deb, 必需抓下來後 compile
     
     # wget http://ftp.lug.udel.edu/MPlayer/releases/MPlayer-0.90pre5.tar.bz2
      # tar xvjf MPlayer-0.90pre5.tar.bz2
      # cd MPlayer-0.90pre5
      # ./configure --prefix=/opt/mplayer --disable-gcc-checking \
    --with-win32libdir=/usr/lib/win32
      # make
      # make install
   
  (3) avifile
      # apt-get install avifile-aviplayer

  (4) xmms
      # apt-get install xmms alsa-xmms
      注意: Output Plugin 選擇 ALSA output plugin
 
* 修改 alsaconf
  Reference: http://people.debian.org/~mrd/deb-ref/apt-dpkg-ref.html
     http://linux.nctu.edu.tw/web/moto/tips/debian/pack_deb.html
     http://www.debian.org/doc/manuals/programmer/index.html
 http://www.infodrom.org/Debian/doc/maint/   
 
  # apt-get install devscripts fakeroot debmake
  # apt-get source alsaconfig
 
  注意: 用 apt-get source 抓下來會自動幫你解開(xxxx.orig.tar.gz, xxxx.diff.gz, xxxx.dsc),
  若是要手動做, 可用以下的兩種方法
(1) dpkg-source
      # dpkg-source -x alsaconf_0.4.3b-4.dsc
      # cd alsaconf-0.4.3b
      # patch alsaconf debian.patch
(2) patch, zcat, tar
# tar xvzf alsaconf_0.4.3b.orig.tar.gz
# mkdir alsaconf_0.4.3b/debian
# zcat alsaconf_0.4.3b-diff.gz | patch -p0
# chmod +x alsaconf_0.4.3b/debian/rules 

  # cp -r alsaconfig-0.4.3b alsaconfig-workversion
  # cd alsaconfig-workversion
  # ....
 
  注意: 最好是先產生一個新的目錄, 在該目錄上修改, 因為原先的 source 在包 package 時要用
 
  # cd alsaconfig-0.4.3b
  # patch -C 2 alsaconf alsaconfig-workversion/alsaconfig > debian.patch
  # dpkg-changelog --newversion 0.4.3b-5
  # dpkg-buildpackage -rfakeroot -uc -b -d   -> 產生 bindary 的 package
  # dpkg-buildpackage -rfakeroot -uc -S -d   -> 產生 xxxx.diff.tar.gz, xxx.desc
 
  注意: 其實這並不完全, 有個盲點
  - 若是修改多個 file 時該如何是好 ? ( patch -p0 < patchfile ??)
 
  - TODO:
    (1)alsaconf 用一個 module: snd-detect 來自動偵測要用那個 driver,
     但是解開後(alsa-source, alsa-base, alsaconf)並沒有看到這個module,
     或許可以參考sndconfig的作法來做自動偵測的功能
     (是否可以將sndconfig寫成snd-detect這個module呢?)     
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

re:[轉貼]Debian Sound

文章阿信 » 週一 9月 13, 2004 7:13 pm

This document is a little too old.

The installation of ALSA in Debian is quite simple.

Please install alsa-utils,alsa-base,alsa-source.Choose "All" or your sound card in debconf prompt. Build the alsa-module in Moto's painless book.

No manually writes the modules.conf or pick the snd module, just execute "alsaconf" in alsa-utils instead.

She will update the modutils and modules.conf. So just /etc/init.d/alsa stop && start. Gain the ALSA...
;-)
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義


回到 share

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron