2011-10-29
2011-10-27
Linux で動く ARIB B25 復号プログラム
ARIB STD-B25 仕様確認テストプログラムソースコード が,
配布されているが, これは Microsoft Visual C++ 2005 で開発されている.
しかし, 移植性のあるコードであったため, Linux への移行は簡単だった.
Linux への移行とあわせて,
同時に複数のストリームを復号する機能を追加した.
これにより, HDP2 のような2つ以上のチューナをもつハードウェアを使用していても,
同時に復号しながら録画することが可能である.
以前はソースを公開していたが, 現在は見合わせている.
使用方法を載せておく.
- ソースを展開した後, ビルド
$ cd arib_std_b25_linux/src $ make
- 起動時にデーモンを開始:
/etc/rc.local
へ以下の1行を追加する.# echo $PWD/b25m -f >>/etc/rc.local
- 復号 (dvbstream でディバイスからストリームを取得し, 復号して, ファイルへ保存する例)
dvbstream ... | .../src/b25m -c > decrypted.ts
2011-10-08
Buffalo Wifi Comparision
Buffalo AirStation の比較
Buffalo は AirStation のブランドで様々な WiFi アクセスポイント製品を販売しているが, 比較が難しい. そこで, いくつかのアクセスポイントについて表を作った.複数の NIC を束ねて使用 (SL6)
NIC の冗長設定
Linux kernel の bonding モジュールを利用することで, 複数の NIC (eth0, eth1, ...) をまとめて使用することができる. これにより, NIC 関連の障害 (ハブの故障やケーブルの切断) に対する耐故障性, 負荷分散を実現できる.設定方法
ここでは, Scientific Linux 6.1 を例に設定を説明する. CentOS 5.5 でも, 同様に設定することができる. RHEL 5, RHEL 6, CentOS 6 などでも同様に設定できるだろう./etc/modprobe.d/bond0.conf
を作成する.
以下の1行を記述する.
alias bond0 bondingオプションはここに書かず,
ifcfg-bond0
へ記述する.
/etc/sysconfig/network-scripts/ifcfg-bond0
を記述する.
例を以下に示す.
DEVICE=bond0 ONBOOT=yes BOOTPROTO=none IPADDR=192.168.254.137 NETMASK=255.255.255.0 NM_CONTROLLED=no BONDING_OPTS='miimon=1000 mode=6'
BONDING_OPTS
で設定可能な項目については,
/usr/share/doc/kernel-doc-*/Documentation/networking/bonding.txt
が参考になる.
ここ
も参考になる.
ifcfg-ethN
の設定を行う. (複数の NIC を使用するので, 毎数分のファイルを設定する.)
/etc/sysconfig/network-scripts/ifcfg-ethN
に以下のような記述を行う.
(ethN
の部分は eth0
, eth1
, ... に置き換えること.)
DEVICE="ethN" HWADDR="01:12:34:56:78:9A" NM_CONTROLLED=no MASTER=bond0 SLAVE=yes
# depmod -a # /etc/init.d/network restart
送信速度
複数のNFSサーバへ書き込むときの速度を測定してみた. NIC (1000BASE-T) 2枚, mode=6 の構成で,dd if=/dev/zero bs=8192 ...
を同時に実行して書き込むと,
最大で 1.8Gbps となった. (8秒間隔で ifconfig bond0
を実行し, 送信バイトの増分を求めた.)
登録:
投稿 (Atom)