Proxmox上の仮想マシンにKTV-FSUSB2をパススルー

せっかくなので Proxmox 上に構築した仮想マシンに KTV-FSUSB2 をUSBデバイスのパススルーを使って接続してみました。これらがうまく動いてくれるか見ていきたいと思います。

各仮想マシンに USB デバイスを接続する過程は省略させていただきます。

Windows7 の場合

接続したところちゃんと認識してデバイスマネージャーに出現します。
proxmox-ktvfsusb2n-2
proxmox-ktvfsusb2n-3

しかしながらドライバのインストール後にどうしてもうまくいかず。!が付いたままとなりました。ドライバの署名関連でもなさそうなので Windows についてはひとまずコレで終了

proxmox-ktvfsusb2n-5

CentOS の場合

必要なものは GitHub(https://github.com/sh0/recfsusb2n)からダウンロードしてきました。

$ unzip recfsusb2n-master.zip
$ mv recfsusb2n-master recfsusb2n
$ mkdir patch
$ unzip recfsusb2n_http_patch2.zip -d patch
$ cd patch
$ cp Makefile ../recfsusb2n/src/
$ cp *.h ../recfsusb2n/src/
$ cp *.cpp ../recfsusb2n/src/

早速コンパイルしてみます。

yum install boost-devel

cd src
make

これではエラーが出てしまったので、以下のようにして em2874-core.cpp を開いてコンパイルできない点を修正.

123: if (!boost::filesystem::is_directory(*dev_iter)) {
124:     // 開く
125:
126:     std::string pp=dev_iter->path().string();
127:     if (pDev->openDevice(pp.c_str())) {

正常にmakeが完了すると recfsusb2n という実行体があるのでこれを適当な場所へコピーしておきます。

# cp recfsusb2n /usr/local/bin

それでは早速テストしてみます。適当に 30秒ほど録画してみました。このファイルを Windows7 などの環境へ持って行って確認してみます。

# recfsusb2n -vb 27  30 test.ts

recfsusb2n ver. 0.9.2
ISDB-T DTV Tuner FSUSB2N
device: /dev/bus/usb/001/005
pid = 2966
B25Decoder initialized.
Sequence = 5, Quality = 0
Sequence = 7, Quality = 16.18
Sequence = 7, Quality = 36.18
Sequence = 8, Quality = 10.2
Sequence = 8, Quality = 0.04
Sequence = 8, Quality = 21.9

一見ちゃんと動いていそうなのですが、残念なことに、相当なドロップが発生してしまっており、正常な再生が出来る状況ではありませんでした。Windows に比べればここまで出来ましたのですこし惜しい感じです。

まとめ

USBデバイスのパススルーではうまく録画環境はつくれませんでした。もしかすると USB ボードごとをデバイスパススルーするとまた違った結果となるかもしれません。 未検証ですので、 VT-d 対応の Proxmox 環境作ってどなたかやってみてほしいと思います。

proxmox 録画環境
すらりんをフォローする
すらりん日記

コメント

タイトルとURLをコピーしました