事象の水平線

個人的ブックマーク代わりなメモ書きブログ。 地球は丸いよ。↓このへん。

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop
Windows版XBMC10で日本語タイトルを見るとき、全角チルダ(~)波ダッシュ(〜)が四角い豆腐になる
xbmc_def_vmenu.png
ので、フォントを変更した。

フォントを
C:\Program Files (x86)\XBMC\media\Fonts\
に入れて、arial.ttfに改名すればOK

で、
C:\Windows\Fonts\ の中ので全角チルダ波ダッシュが文字化けないフォントを探したけど意外と少なくて、手持ちではMS何チャラ系と、メイリオくらい。
MS系はカーニング(字詰め)が好きな感じでなく、HG系はいい感じなのだがチルダ波ダッシュが・(中黒?)になる。
仕方ないので、ちょっと太すぎる気もするけどMeiryo UI 太字にしてみた。
オリジナルのarial
xbmc_def_home.png

Meiryo UI 太字    ちょっと太い
xbmc_meiryo_home.png

チルダ波ダッシュも化けずに出る
xbmc_meiryo_vmenu.png

<<追記>>
チルダかと思ってたら波ダッシュでした。 参照→波ダッシュ

スポンサーサイト

PageTop
LogicoolのUnifyingではひとつのレシーバーに複数のマウスとキーボードを認識させられる。

で、
デバイスマネージャーの キーボード と マウス のプロパティに 『電源の管理』 がある場合、キーボードのキーを押すたび、マウスを少し動かすたびにPC本体がスリープから目覚める。

で、マウスでは スリープ解除をしたくないけど、キーボードからはスリープ解除をしたい場合のやり方メモ。

要は、レシーバーを二つ使いマウスとキーボードをそれぞれに関連付けるだけ。

このへんSupport + Downloads: Unifying software - LogicoolからUnifying softwareをダウンロードしインストール。
起動したら、
unifing1.png

詳細から、

unifing.png
レシーバーごとにマウスとキーボードを認識させる。 ※キーボード2台つないでます。

出来たら、デバイスマネージャーを開き、
HID準拠マウス のプロパティの 『電源管理』はすべて 『このデバイスで、~~』 のチェックを外す。
HIDキーボードデバイス のプロパティの 『電源管理』は片方のみ 『このデバイスで、~~』 のチェックを入れておく。
dev_hidKey.png

これで、マウス、キーボードのどちらか でスリープが解除できるはず。
で、マウスとキーボードが逆だったら、先ほどの HIDキーボードデバイスの チェックを入れたほうを外し、チェックを外したほうのチェックを入れる。

ちなみに、キーボードの特定のキーでのみスリープ解除 のようなことは出来ない。
※有線のPS/2接続だとBIOSにより出来たりする。

これで、使わないときはキーボードの電源を切っておけば、マウスではスリープ解除しないけど、キーボードではスリープ解除が出来て、あたかもキーボードをPCの電源ボタンのように使える。

スリープ解除のつもりで、キーボードのキーを押すときは、それだけでは特に動作をしない『Shift』キーあたりを押すといい。実はPCが稼働中に、それとは気付かずスリープ解除のつもりで『Enter』とかを押して何かが実行されたら結構悲しい。

PageTop
HTPCでMpeg2TSを見るのに、TVTestを使っているのですが、微妙に画質がいまひとつです。
こま落ち?なのかインタレース解除の性能なのか微妙にカクツク感じがあるし、ティアリングも有る気がするし、これってどうなの?といった感じです。
かといって、試したほかのプレーヤーはちょくちょく再生が止まったり、AACパススルーが出来なかったりします。

HTPCのスペック
   M/B:ベアボーン Shuttle SD32G2
   CPU:Core2Duo E6300
   RAM:DDR2 2GB*2
   SSD:Silicon Power 64GB SP064GBSS2T10S25
   VGA:ELSA GLADIAC 573 128MB (GeForce 7300 LE)
   電源:PicoPSU160

Mpeg2TSのソースはDN2800MTで作ったPT3+Sambaサーバー上のもの

で、原因として考えられるのは、CPUがプア、グラボがプア、ネットワークがプア(100Mbps)、サーバーがプア、TVTestがプア、あたりかと思うのだけれど、とりあえず手軽にやれることからということでTVTest回りをいじることにしました。

TVTestで設定できるのは、大まかには
設定 > 一般 > デコーダ と 設定 > 一般 > レンダラ らしく、デコーダは後から追加することも出来るらしい。
ということで、
1:ATI MPEG Video Decoder の導入方法
2:CyberLink Video/SP Decoder の導入方法
3:MPC - MPEG-2 Video Decoder の導入方法
4:ffdshow Video Decoder の導入方法
5:DScaler MPEG Filters の導入方法
 <<追記>>           をメモ。
Windows7_64bitの感じで書いてますが、32bitも基本同じです。ディレクトリは適宜読み替えてください。

TVTestのバージョン0.7.23
tvtest_decoder.png
OSがWindows7なので、Microsoft DTV-DVD Video Decoderは元から入ってます。
LAV Video Decoderはいつの間にか(?)入ったけど使えません。
ヘルプファイル(TVTest.chm)を見ると動作確認のあるデコーダの中には表記がないので順当なのでしょう。

TVTestのヘルプファイルより デコーダについて
tvtest_help_decoder.png





1:ATI MPEG Video Decoder の導入方法
ATI MPEG Video DecoderはATI(現AMD)のビデオドライバを入れると一緒に入るらしい。
HTPCのビデオカードはGeforce(nVidia)なのでATIのドライバは入らない(入れられない)が、ATIのビデオカードが乗っているPCから必要なファイルをコピーすれば使えるようになる。
ちなみに、ATIのドライバはここAMDサポート&ダウンロードから適度にダウンロードする。

で、必要なファイルは
C:\Program Files (x86)\Common Files\ATI Technologies\Multimedia\atimpenc.dll
なので、これをコピーする。
ATI Technologiesフォルダごと C:\Program Files (x86)\Common Filesに入れればいい)
ATIなビデオカードが乗っていれば、ドライバのインストールで入る。はず。
入らない場合、『わりとどうでもいいBLOG』さんの『ドライバ更新するとATI MPEG Video Decoderがインストールされない問題』を参照

次に、DirectShow Filter Toolを使って、atimpenc.dll を登録しメリット値の変更をする。

DirectShow Filter Tool をダウンロード&解凍、起動し、
フィルタの選択 から MPEG-2 Video Decoder を選び
ATI MPEG Video Decoder がなければ フィルタの登録 から
C:\Program Files (x86)\Common Files\ATI Technologies\Multimedia\atimpenc.dll
を選んで開く

ATI MPEG Video Decoder が出て、メリット値が 0x00200000 になっていたら、
右クリック > メリット値の変更 
で それよりも大きい値(0x00300000とか)に変更する
※0x00200000は(MERIT_DO_NOT_USE)らしい



2:CyberLink Video/SP Decoder の導入方法
CyberLink Video/SP DecoderはCyberLinkのPowerDVDを入れるとはいるらしい。
体験版でもいいらしいので、ここからPowerDVDの無料体験版をダウンロードしインストールする。

もし、PowerDVDの体験版が不要でアンインストールしたい場合
必要なファイルは
C:\Program Files (x86)\CyberLink\PowerDVD12\Common\VideoFilter\CLVsd.ax
なので、VideoFilterフォルダごとどこかへ保管しておき、PowerDVDをアンインストールしてもOK

そして、1と同様にDirectShow Filter Toolを使って、CLVsd.axを登録する。(1:参照



3:MPC - MPEG-2 Video Decoder の導入方法
MPC - MPEG-2 Video DecoderCCCP(The Combined Community Codec Pack)を入れるのが簡単でいいらしい。
なにやら赤い感じですが、ただのしゃれでまったく関係ないもよう。

で、ダウンロードしてインストールし、特に設定もなく使えるようになる。
<<追記>>
2012-12-30にアップデートされたバージョンからは“removed Gabest's MPEG-2 decoder”らしい。cccp-project.net/wiki参照
ので、ソースフォージのMedia Player Classic - Home Cinemaあたりからどうぞ。
適当にお好きなバージョンをダウンロード、解凍したら、好きなディレクトリに保存して、コマンドプロンプトから
C:\Windows\System32>regsvr32 "C:\Program Files (x86)\MPC-HC_standalone_filters.1.6.8.x86\Mpeg2DecFilter.ax"
みたいな感じで、登録すればいけるはず。だめなら、UACがうんたらとか、cmd.exeを管理者権限で実行とか適当にググってくださいな。


更に以下のように設定すると、レンダラとの組み合わせ次第で、フレームレートが29.97fpsから59.94fpsに上がるらしい。
TVTestの画面上から (違う設定をしてない場合)
右クリック > フィルタのプロパティ > 映像デコーダ

Set interlaced flag in output media type にチェックを入れる
mpc_60hz.png
また、インターレース解除の方法(Deinterlacing)は、上記のチェックを入れた後は変えられなくなるので、変えるときは一度外してから変える事になる。

OKを押した後、TVTestを再起動すると、fpsが上がっているはず。
確認方法は、
TVTestの画面上から 右クリック > フィルタのプロパティ > 映像レンダラ
で、平均フレーム率が 60前後になっていれば有効になっている。
tvtestviderender.png
※平均なので数値が変動するがいずれ59.94に収斂する。のかな?。



4:ffdshow Video Decoder の導入方法
ffdshow Video DecoderCCCP(The Combined Community Codec Pack)で入るらしい。
<<追記>>
2012-12-30にアップデートされたバージョンからは“removed FFDShow-tryouts”らしい。cccp-project.net/wiki参照
ので、ソースフォージのFFDShow-tryouts あたりからどうぞ。


インストール後、
スタート > プログラム > Combined Community Codec Pack > FFDShow > FFDShow Video Decoder Configuration
を開き、(TVTestのフィルタのプロパティ>映像デコーダでも同じ)
Codecs > MPEG2 のDecoder が disabled の場合、それ以外に変える。
ffdshowvideoconfig.png

また、画面にシマシマが出るような場合、Deinterlacingにチェックを入れることで、ましになるかもしれない。



5:DScaler MPEG Filters の導入方法 <<追記>>
DScaler MPEG FiltersFree-Codecs.comのこちらからダウンロードできる。
2013/01/26現在でver0.0.8
Updated: 18 Feb 2006とあるので、全然更新されなさそう・・・

こちらは、インストールして再起動しただけで即使える。メリット値の変更等不要。
Windows8+TVTest0.7.23だとTVTestのバグでMicrosoft DTV-DVD Decoderが使えないらしい。
<<追記>>Windows7でもWindowsUpDateをしたらMicrosoft DTV-DVD Video Decoderが使えなくなった。模様
TVTestをデバッグしてビルドすれば大丈夫らしいがそんなことをせずに、これをインストールすればとりあえず見ることが出来る。らしい。(Win8環境を持っていないので)
→TVTestのデバッグの参考:『スカパー!プレミアムサービスをPCで録画』さんの『Windows8への対応方法
ちなみに、全部のレンダラとの組み合わせでは試してないがWindows7では、フィルタのプロパティ>映像デコーダのメニューは開こうとするだけでTVTestがクラッシュする。
また、フィルタのプロパティ>映像レンダラでみるとEVRの時は平均フレーム率がほぼ60になっていた。(MPCの所でMPCの設定次第でフレームレートが上がると書いたが、MPC以外でもレンダラ次第で上がるのかも?あまり詳しく調べてないです。標準のMicrosoft DTV-DVD Video Decoder+EVRでもレートは60)
CPU使用率はMicrosoft DTV-DVD Decoderに比べ2~3倍。画質がよくなるといったことは感じられない。
LastUpdate が2006年なことからも、Windows8でTVTestを使おうとするのに、ビルドはしたくない、ATIな環境もないし、PowerDVDの体験版も入れたくない、などなど~という人向けかと・・・



TVTestのヘルプファイルより レンダラについて
tvtest_help_renderer.png

ということで、結局のところどれがいいかは、
環境によって違う
ので、
最適な組み合わせを 見つけるしかない みたい。

正直、すべての組み合わせは試してないけど、どのデコーダも五十歩百歩・・・
レンダラはWindows7なのでやはりEVRかなぁ・・・・
で、結局お前はどれ使ってるのよ?は<<追記>>ビデオカードを交換してみたの最後にまとめました。

ちなみに、GPUによる再生支援が効いてるかどうかは、MSIのAfterburnerを入れると使用率やクロックが見れるので確認できる。
MSIの製品でなくても大丈夫みたい。
自分の場合、それをRainmeterで見てます。→参考

<<追記>>
ビデオカードを交換してみた
→参考:『HTPCのビデオカード 交換 Geforce7300LE から Radeon HD6450

参考:
ドライバ更新するとATI MPEG Video Decoderがインストールされない問題
TVTestでPowerDVDのデコーダーを使う方法 【PowerDVD 12,TVH264】
DirectShow Filter Tool Version 1.7
PT2とTVTestとデコーダとレンダラ
地デジチューナー(KEIAN KTV-FSPCIE/KTV-FSUSB2)

PageTop
以前 recpt1 http版 を入れたのですが、たまーにチャンネル切り替えのタイミングでプロセスが落ちるので、プロセスが落ちたらブラウザから手動で再度走らせることが出来るようにしました。

方法は、適当なページ(サーバーのトップページとか)にフォームを埋め込んで、そのボタンを押したらプロセスを走らせる。だけ。

埋め込むフォーム
<form action='./html/reload_recpt1.php' method='post'>
<input type='submit' name='submit' value='recpt1のリロード'>
</form>

recpt1を走らせるphp(/var/www/html/reload_recpt1.phpとして保存)
<html>
<head>
<MEtA http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="refresh" content="10;URL=http:../">
<?php
//if submit has been pressed
if(isset($_POST['submit'])){
#reload_recpt1
exec("/usr/local/bin/reload_recpt1.sh");
#HTML
echo('<title>recpt1リロード終了</title>
</head>
<body><br><br><br>
10秒後にHomeに戻ります。<br>
recpt1をリロードしました。<br>
チャンネルを切り替えるか、TVTestを再起動してください。
');
}
php?>
</body>
</html>

phpがexecするシェルスクリプト(/usr/local/bin/reload_recpt1.shとして保存)
#!/bin/bash

/usr/local/bin/recpt1 --b25 --strip --http 8888 > /dev/null 2>&1 &

それぞれ、パーミッションとかは良しなに・・・・



めったに落ちることはないのだけれど、EPG取得中に落ちる気がする。
で、調べていたら『ぱぱらくだ日記』さんの『recpt1のhttp版パッチを適用してみた』という記事に、落ちないように修正したパッチというものがあったので、試しに頂いてみました。
で、一応手順をメモ。(前回と同じですけどね・・)

どうでもいい前準備
[root@NAS ~]# cd /usr/local/bin
[root@NAS bin]# mv recpt1 'recpt1(copy)'
[root@NAS bin]# mv recpt1ctl 'recpt1ctl(copy)'
[root@NAS bin]# mv checksignal 'checksignal(copy)'


インストール  <<追記>>tssplitte_liteのsegfault注意
[root@NAS bin]# cd /usr/local/src
[root@NAS src]# mkdir PT3-http
[root@NAS src]# cd PT3-http
[root@NAS PT3-http]# wget http://hg.honeyplanet.jp/pt1/archive/b14397800eae.zip
[root@NAS PT3-http]# unzip b14397800eae.zip


/usr/local/src/pt1-b14397800eae/recpt1/pt1_dev.h を geditで開いて、『pt1』を『pt3』に変えます。PT3なんで・・一応文字化け注意
/* -*- tab-width: 4; indent-tabs-mode: nil -*- */
#ifndef _PT1_DEV_H_
#define _PT1_DEV_H_

char *bsdev[NUM_BSDEV] = {
"/dev/pt3video1",
"/dev/pt3video0",
"/dev/pt3video5",
"/dev/pt3video4",
"/dev/pt3video9",
"/dev/pt3video8",
"/dev/pt3video13",
"/dev/pt3video12"
};
char *isdb_t_dev[NUM_ISDB_T_DEV] = {
"/dev/pt3video2",
"/dev/pt3video3",
"/dev/pt3video6",
"/dev/pt3video7",
"/dev/pt3video10",
"/dev/pt3video11",
"/dev/pt3video14",
"/dev/pt3video15"
};

~~以下略~~


[root@NAS PT3-http]# cd pt1-b14397800eae
[root@NAS pt1-b14397800eae]# wget http://www1.bbiq.jp/papanet/download/PT2/recpt1-http-patch
[root@NAS pt1-b14397800eae]# patch -p2 < recpt1-http-patch
[root@NAS pt1-b14397800eae]# cd recpt1
[root@NAS recpt1]# ./autogen.sh
[root@NAS recpt1]# ./configure --enable-b25
[root@NAS recpt1]# make
[root@NAS recpt1]# make install
firewallのtcpとudpの8888をGUIツールであけます。
[root@NAS recpt1]# reboot

daemon化とかは前回の記事参照

どの程度効果があるのかわかりません。もとより落ちる頻度が1週間に1度くらいだったんで・・・

パソコンでTVをそれほど見るとは思わずhttp版を導入してみましたが、HTPC兼コタツトップとして10mのHDMIケーブルを這わせてダイニングに17インチモニタを設置したら、意外にもダイニング用TVとして大活躍・・・
以前はダイニングからも5m先のリビングのテレビを見てましたが、冬は寒いので仕切ることで暖房効果アップ。
ニュース番組とかプラズマTVで見る必要ないし・・・

<<追記>>

あ?あれ?recpt1http版を「落ちないように修正」版にしたら余計落ちるんですけど・・・・ orz (余計落ちると感じるのはおそらくたまたま)
というか、写らなくなったときにpsでfutex_という見慣れないwchanになっていて、プロセスが何かを待っている・・?
で、上半分で書いたphpでのリロードが効かない(プロセスが落ちてないのだから当然・・)
んー、どうせだめなら手動でも簡単に生き返らせることが出来るほうがいいかも。。

PageTop
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。