2012年1月9日月曜日

ubuntu10.04(Lucid)にて環境構築

Maverickのサポートが4月にきれるため、やむなくバージョンダウン。
いい機会なので、自分用の環境構築をメモしておく。
まず、やるべきことをまとめておくと
  1. グラボの最新ドライバをインストール
  2. xmonadのインストール、設定
  3. pt2用ドライバ、epgrecのインストール、設定
  4. エンコード用ffmpegのインストール、設定
  5. 最新版elsaのインストール
  6. 時刻の同期と、CPUの省電力設定解除
  7. HDDのバックアップ作成
  8. mozcのインストール
1.グラボの最新ドライバインストール
GT430用のドライバを公式サイトからとってくる。
ctrl+alt+F2でテキストモードにし、
sudo /etc/init.d/gdm stop
でXを落とし、インストール。

2.xmonadのインストール、設定
個人的にxmonadがないとlinuxにする価値はない。
以前の自分の記事を参考にして設定する。

3.pt2用ドライバ、epgrecのインストール、設定
巷で噂の自動スクリプトのサイトが落ちているので、面倒だが手動で設定。
ドライバのインストールはここ、epgrecはここが参考になる。
カーネルのアップデートがあったときpt2のデバイスが見えなくなることがある。
このときは、ドライバを再インストールすると解決できる。

4.エンコード用ffmpegのインストール、設定
tsファイルをmp4に変換するため、x264対応のffmpegをソースからインストールする。
ffmpegのインストールはここが参考になる。
ffmpegのプリセット(エンコード用の設定)はここが参考になる。
上記サイトのエンコード用スクリプトではワイルドカードが使えないので、ちょっと修正しておく。

#!/bin/bash
for i in $@
do
TS=$i
BASE=$(basename $TS .ts)
echo $BASE
CPU_CORES=$(/usr/bin/getconf _NPROCESSORS_ONLN)
X264_HIGH_HDTV="-f mp4 -vcodec libx264 \
    -fpre /usr/share/ffmpeg/libx264-hq-ts.ffpreset \
    -r 30000/1001 -aspect 16:9 -s 1280x720 -bufsize 30000k -maxrate 30000k \
    -acodec libfaac -ac 2 -ar 48000 -ab 128k -threads ${CPU_CORES}"
ffmpeg -y -i $TS ${X264_HIGH_HDTV} ${BASE}.mp4
done
exit


5.最新版elsaのインストールとサウンド用設定
グラボGT430では、HDMI経由でサウンドを出力できない。
まず一つの問題は、サウンドデバイス自体認識していないこと。
最新版elsaをインストールすれば解決できる。(ここ参照)
これによってサウンドデバイスは認識したが、音がでない。
そもそも、aplay -lで
カード 1: NVidia [HDA NVidia], デバイス 3: HDMI 0 [HDMI 0]
カード 1: NVidia [HDA NVidia], デバイス 7: HDMI 0 [HDMI 0]
カード 1: NVidia [HDA NVidia], デバイス 8: HDMI 0 [HDMI 0]
カード 1: NVidia [HDA NVidia], デバイス 9: HDMI 0 [HDMI 0]
とHDMI用のデバイスが4つ見える。
ここを参考にデバイス9のみに指定。やっと音がでた。
ただし、このままではchromeなどのブラウザから音がでない。
ubuntuのフォーラム解決方法に従って一応音がでた。
sudo vi /etc/asound.conf
pcm.pulse { type pulse }
ctl.pulse { type pulse }
pcm.!default { type pulse }
ctl.!default { type pulse }

6.時刻の同期と、CPUの省電力設定解除
時刻の同期はntpを使う。
しかし、デフォルトでonになっているCPUの省電力設定により、内蔵時計が異様に早く進む。
ntpでは修正しきれないレベルだ。
GNOMEの省電力設定はよくわからないので、cpufreqdを用いて省電力設定を回避。
cpufreqdはデフォルトでcpuの周波数を100%にしてくれる。
問題が起きると、解決ではなく回避する癖がついたな…。

7.HDDのバックアップ作成
ddで一回ヘマをしているので、ddは使わない方向で。
今回はddrescueを使う。
sudo apt-get install gddrescue
sudo ddrescue -v /dev/sda /dev/sdb


8.mozcのインストール
sudo add-apt-repository ppa:japanese-testers/mozc
sudo apt-get update
sudo apt-get install ibus-mozc


とりあえずここまで。



2011年7月27日水曜日

ubuntuやmac(OSX Lion)でsshfs

ディレクトリをネットワーク越しにマウントしたい時などは、WindowsだとSamba、LinuxやUnixではNFSを用いることが多い。
これがローカルなネットワークならSambaやNFSでも特に怖いことはない。

しかし、家と大学などでマウントしたい時は、セキュリティが不安である。
気づいたら「トンデモナイ」ファイルを全世界に公開している可能性もある。

そこで、sshfsというsshを使ったツールを使うと上記の不安が解消される。
sshは暗号を用いたセキュアな通信で、リモートマシンを遠隔操作することができる。
これの応用で、リモートマシンのディレクトリをマウントできるのが、sshfsである。
回線が速ければ、遠隔地の動画ファイルを軽々再生できる夢のようなツールだ。
(主な使用用途はこれ)


ubuntuの場合
sudo apt-get install sshfs

macの場合
MacFuse
をインストールして、sshfsのバイナリを
ここから取ってきて、実行権限を与えてbin/以下などに置いとく。

※OSX Lionにアップデートしてしまったせっかちな人の場合、MacFuseが動かない。そこで、
ここから対策版をダウンロードしてインストール


使い方 
(host1 : リモートマシンのアドレス)
状況
host1の/home/hoge/documentを、自分のマシンの /home/hogehoge/mntにマウントしたい

sshfs host1:/home/hoge/document /home/hogehoge/mnt

書き方はNFSでマウントするのとほぼ一緒。
これだけで、リモートのディレクトリをローカルのディレクトリのように扱える。
個人的にはDropBoxより遥かに便利。(DropBoxのがいい点もあるけど)

ちなみに、光回線同士なら、HD画質の動画をマウントして再生してもヌルヌル動く。
ただし、クライアントがmacの場合少しカクカクする。

これで、実家に帰っても東京のサーバ上の動画を見ることができるようになった。
めでたしめでたし。

追記)sshfsはWindowsでも使えるみたい。

2011年7月26日火曜日

ubuntuでmuninあれこれ

CPUの温度や負荷などを調べたいときに、muninという便利な監視ツールがある。
今回はこれの紹介。

自分のマシンはubuntu10.10だけど、基本的にLinuxやFreeBSDなら使えるはず。
今回はubuntuなんで、
apt-get install munin lm-sensors
インストールした段階で監視スクリプトがcronに追加される。
あと、apache2も必要だけど、これは入ってるものとする。
ここまで書いてなんだけど、めんどうなので
http://krakenbeal.blogspot.com/2011/03/ubuntumunin.html

上のリンク参照。
cpu温度などを表示したければちょっと作業が必要。

設定後は、
localhost/munin/index.html
などにアクセスして以下のようなグラフが得られる。


温度は少し見にくいかな。他にもネットワークのトラフィックなどもデフォルトで監視対象になっている。

2011年5月6日金曜日

SAPPHIRE HD5670の使用感レポート

今まで使ってきたGeforce9800GTがあまりにも五月蝿いので、ビデオカードを交換した。
最近はRadeonチップのビデオカードが人気みたいで、ちょっと流行にのってみることに。

要件は、

  1. 静音性
  2. 低消費電力(電源容量がカツカツ&貧乏なので)
  3. 1万円以下
  4. HDMI出力1、DVI出力1(デュアルディスプレイ用)
こんな感じで調べたところ、SAPPHIREのHD5670が一番良さそうだと判断。
価格.comだと最安6000円で財布にも優しいね。
ということで、9800GTをドスパラに2500円で売りつけてHD5670購入。


Windows7での使用感
とりあえずFF14ベンチ(High)で9800GTと比較してみた。

OS : Windows7 Pro 64bit
マザボ : G41MH/USB3
CPU : Intel Core 2 Quad Q9550
メモリ : DDR3 8GB
の構成で、
9800GTはScore 2150
HD5670はScore 2871

こんな感じでScoreは大幅によくなった。
が、普段の使用用途では違いが全くわからなかった。

Ubuntu10.10での使用感
Ubuntuだとちょっと問題があったのでメモしとく。
普段新しい周辺機器を付けたときは、
システム>システム管理>追加のドライバ
でインストールすることが多いと思う。
いつも通り追加のドライバをチェックすると、FGLRXグラフィックスドライバってのが無効になっていて、これを有効にしてインストールが始まった。

が、コレが罠!

ここでインストールされるFGLRXドライバはかなり古いバージョンみたいで、
・色温度が変で妙に赤っぽい
・動画がカクカク
と悲惨なことになる。これを回避するために、ちゃんとATIからドライバをダウンロードしてインストールする。
(ちなみにドライバは1ヶ月に1回更新されているみたい)

最新版をインストールすると色温度も治り、動画もヌルヌル動くようになった。
ただ、9800GTと比べると、動画再生能力は低いみたいで、時々チラついたりする。
これはATIよりNVIDIAのほうがLinux用ドライバの開発が熱心なんだろうと妄想。

まとめ
自分の使用用途で、
Windowsに限れば、9800GT < HD5670
Linuxに限れば、9800GT > HD5670
静音性は、9800GT < HD5670 (めっちゃ静かになった)
省電力性は、9800GT < HD5670

本来のモチベーションは五月蝿いから交換しようってことだったから、差額3500円でこの性能はいい買い物だったと思う。
以上!

2011年5月1日日曜日

HDMIキャプチャボード購入&各種設定

PS3のゲーム動画をキャプチャしたいなーと思っていろいろ調べてみた。
どうせなら高画質のものがよいので、HDMIキャプチャボードかなーっと。

ただし、HDMIはHDCPで保護されているため、そのままの入力ではキャプチャできない。
そこで最近流行っているのが、HDCPをスルーできるキャプチャボード。
そのなかで、64bitのWindows & 4GB超のメモリ & 720pで安定してキャプチャできるボードは現状これだけみたい。
さっそく買っていろいろ設定してみた。

OS : Windows7 Pro 64bit
キャプチャボード : HDMVC4UC
キャプチャソフト : アマレコTV
解像度 : 720p

この環境でxvid倍率4倍でエンコードした動画がコレ


ゲームはPS3のCoD4 MW、プレイが下手なのは勘弁;
画質は十分かな。ちなみにyoutubeに上げる前はもっと綺麗なんだけど、youtube側で再エンコードされてるみたいで画質が荒くなってる。
アマレコのプレビューはかなり綺麗で遅延もなく、普通にFPSができるレベル。

ついでに、アマレコLive+Flash Media Encoderでライブ配信してみた。
アップ先はなんとなくjustin.tv

Flash Media Encoderの設定
FPS : 20fps(アマレコLive側も20fps)
解像度 : 1120×630(アマレコLive側も同じ)
ビットレート : 3000kbps



ゲームはMGS4で、フレームレートを犠牲にして解像度を優先した感じの設定。
30fpsは諦めた。


ライブ配信もそこそこの画質なようで満足!
不満はキャプチャボードにLinuxドライバがないこと!
ドライバ書こうと試行錯誤したけど無理だったorz

2011年4月24日日曜日

ubuntu10.10でのxmonadの設定

xmonadとはタイル型ウィンドウマネージャの一つ。
画面いっぱいにウィンドウを敷き詰めるイメージかな。
キーボードショートカットで配置変更やリサイズなどができる。
他にもawesomeなど色々なタイル型ウィンドウマネージャがあるけど、xmonadは拡張性が高いことが特徴。
特にXineramaに対応しているので、デフォルトでデュアルディスプレイに対応している点が強み。
これがxmonadを選択した決め手となった。

今回、ubuntu10.10にてxmonadを導入したので、そのときのメモ。
ちなみに、Gnomeはないと色々不便なので、Gnomeとxmonadの共存環境にしている。

% sudo apt-get install xmonad

デフォルトウィンドウマネージャはgnome-wmなので、

% gconftool-2 -s /desktop/gnome/session/required_components/windowmanager xmonad --type string

でxmonadに変えておく。
あとは、~/.xmonad以下にあるxmonad.hsを編集して、
~/以下に(ホームディレクトリ以下に).xmonadというディレクトリを作って、そこにxmonad.hsというファイルを作る。

% xmonad --recompile

でリコンパイルしてログインしなおせばOK。

以下はxmonad.hsの一例。
デフォルトではxmonadは縦リサイズに対応してないけど、ゴニョゴニョして対応させてる。
あと、Gnomeとの共存の設定もゴニョゴニョしている。

import XMonad
import XMonad.Config.Gnome
import System.IO
import XMonad.Actions.WithAll
import XMonad.Actions.CycleWS
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.ManageHelpers
import XMonad.Hooks.EwmhDesktops
import XMonad.Hooks.UrgencyHook
import XMonad.Layout.NoBorders (smartBorders)
import XMonad.Layout.LayoutHints
import XMonad.Layout.ResizableTile
import XMonad.Layout.ToggleLayouts
import XMonad.Util.EZConfig (additionalKeys,removeKeys)
import qualified XMonad.StackSet as W

-- define some general settings
-- --------------------------------------------
--myTerminal      = "urxvt"
myModMask       = mod4Mask -- Windows key

-- make layout respect hints, use smart borders and add vertical resize
-- -------------------------------------------------
myLayout = layoutHints $ avoidStruts $ smartBorders $ toggleLayouts Full $ tiled ||| Full
where
tiled = ResizableTall nmaster delta ratio []
nmaster = 1
delta   = 3/100
ratio   = 1/2



-- use the settings
-- ---------------------------------------------------
main = do
xmonad $ withUrgencyHookC NoUrgencyHook urgencyConfig { suppressWhen = Focused } 
  $ gnomeConfig
{ --terminal           = myTerminal
--, borderWidth         = myBorderWidth
--, focusFollowsMouse = False
modMask             = myModMask
--, normalBorderColor   = myNormalBorderColor
--, focusedBorderColor = myFocusedBorderColor
--, manageHook = myManageHook
, layoutHook = myLayout
}

-- define keys
-- ---------------------------------------------------
`additionalKeys`
-- lower all floating windows
[
-- additional resize keys for ResizableTile
 ((myModMask , xK_o), sendMessage MirrorShrink )
, ((myModMask , xK_i), sendMessage MirrorExpand )
]