Daily Archive for 十月 15th, 2005

Sample Rate Conversion

自從接觸到了 foobar2000 這套音樂撥放軟體後
開始瞭解 SRC 的重要性,在音樂的表現上也真有明顯的不同
由於現有大部份的數位音樂取樣頻率皆為 44100Hz
但一般常見的音效卡輸出頻率卻是 48000Hz
因此音效卡本身必須做一次重新取樣的動作,將 44100Hz 的音樂資料補足為 48000Hz
這之中便是作 Sample Rate Conversion 的動作
但一般音效卡上的 DSP 運算能力不強,因此在 SRC 的動作上也就不怎麼考究
以我的音效卡為例 (Audigy 2)其輸出頻率可達 96000Hz
若是用音效卡上的 SRC 來重新取樣
實在是有點糟糕
(可用 udial.wav 來加以測試,測試方式在此不加詳述)
但若是透過 foobar2000 內建的 SSRC(Shibatch’s Sample Rate Converter)
則可以較佳的方式,利用 CPU 運算將 41000Hz 的音樂重新取樣為 96000Hz
音樂也就比較不會因為 SRC 而失真
但重新取樣成 96000Hz 時,則不能開啟 EAX / CMSS 3D 等特效功能
因為這些功能都會再將 96000Hz 重新取樣為 48000Hz 再進行特效混音
反而讓音樂失真的更嚴重
因此若想要使用 EAX / CMSS 3D 等功能時,重新取樣為 48000Hz 是較佳的選擇

然而利用 CPU 做 SRC 卻佔用了不少的 CPU 資源
這個問題在 Creative 最近出款的 X-Fi 音效卡中似乎獲得了解決

看來該是換張音效卡的時候了… )

Perl + Mysql + Apache + Php

現在在 FreeBSD 架設各種 service 真是愈來愈簡易了
但還是會有一些細節會忘記,因此將一些常用的步驟紀錄下來以便以後查詢

+ PERL 5.8.7

先自行安裝 /usr/ports/lang/perl5.8
避免等到裝 Apache 時才一起裝
鹿小滑說要用下面參數才是王道

ENABLE_SUIDPERL=yes // 沒有這一項 Openwebmail 動不了
WITH_THREADS=yes

+ MYSQL 5.1.44

安裝 /usr/ports/databases/mysql51-server

WITH_CHARSET=utf8
WITH_COLLATION=utf8_general_ci
WITH_XCHARSET=all
WITH_OPENSSL=yes
WITH_PROC_SCOPE_PTH=yes
OVERWRITE_DB=yes
SKIP_DNS_CHECK=yes
BUILD_OPTIMIZED=yes

修改 /etc/rc.conf 增加 mysql_enable = yes
/usr/local/etc/rc.d/mysql-server.sh start 啟動 mysql
使用 mysqladmin -u root password -p [密碼] 設定 root 密碼

+ APACHE 2.2.0

安裝 /usr/ports/www/apache22

鹿小滑說他都用下面這些參數滑
WITH_MPM=worker
WITH_THREADS=yes
WITH_BERKELEYDB=db4 // 安裝 SVN 時會需要

修改 httpd.conf
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
附: 安裝 /usr/ports/devel/subversion
cookys 說要裝 svn 時要加入下面這些參數才是王道
WITH_PERL=yes
WITH_PYTHON=yes
WITH_MOD_DAV_SVN=yes
WITH_SVNSERVE_WRAPPER=yes

+ PHP 5.1.1

安裝 /usr/ports/lang/php5 (自動包括 mod_php5 和 php5-cli)
WITH_LZW=yes

安裝 /usr/ports/lang/php5-extensions
修改 /etc/rc.conf 增加 apache22_enable = yes
/usr/local/etc/rc.d/apache22.sh start 啟動 apache

自行安裝
/usr/ports/databases/php5-mysql (Mysql 會用到)
/usr/ports/graphics/php5-gd (GD 也是很常用到)
/usr/ports/devel/php5-gettext (Gallery2 會用到)
/usr/ports/converters/php5-mbstring (phpMyAdmin 會用到)

安裝 php modules 完要重新啟動 apache 才有效
Update on 2005/12/27