2014年10月23日木曜日

wineで体験版

wineでなんかのゲームの体験版を動かそうとした

普通に使うwineにいろいろやってしまうと面倒なことになるので、
playonlinuxで別に作って入れる。(wine-1.6.2)

1.playonlinuxでインストールの時に新しくGameとかを作る。
2.そのままインストール
3.ショートカットを登録
4.実行

画面が出ない。
Debugで起動すると以下のようなエラーが見える。fixme:win:EnumDisplayDevicesW ((null),0,0x329518,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x329d68,0x00000000), stub!
その他D3Dなんたらかんたらとかいうエラーが出る。

5.とりあえずdevenumとd3dx9を入れる。
  「設定」→「Install components」でd3dx9, devenumをインストール


画面は出るようになったが、
ムービーの再生をしようとするらしく死ぬ。
 err:quartz:GetClassMediaFile Media class not found
err:ole:apartment_getclassobject DllGetClassObject returned error 0x80040111
err:ole:CoGetClassObject no class object {da4e3da0-d07d-11d0-bd50-00a0c911ce86} could be created for context 0x1
fixme:gstreamer:GST_QueryInterface No interface for {37d84f60-42cb-11ce-8135-00aa004bb851}!
fixme:thread:__hook_pthread_create most thread attributes ignored!
fixme:thread:start_thread Started native thread 00000038
fixme:gstreamer:unknown_type Could not find a filter for caps: video/x-wmv, wmvversion=(int)3, width=(int)1280, height=(int)720, codec_data=(buffer)4ff1080100, pixel-aspect-ratio=(fraction)1/1, formatfixme:gstreamer:watch_bus decodebin20: GStreamerはプラグインを見つけることができません
fixme:gstreamer:watch_bus asfdemux0: 内部データストリームエラー。
fixme:gstreamer:GST_Connect GStreamer could not find any streams
wine: Unhandled page fault on read access to 0x00000000 at address 0x4584f1 (thread 0009), starting debugger...


6.とりあえずquartzという文字が見えるのと、 ムービー関連っぽいので、以下を入れてみる。
 quartz
 wmp9
 wmpcodecs
 ffdshow

7.動いた。多分ffdshowが大きかったのではないか。
8.たまに死ぬけど、動かすことができたということでOKとする。

2014年8月10日日曜日

PT2(DVB)信号レベル測定4

台風が通り過ぎた。
うちの場合アンテナはただ置いてあるだけなので
ズレてないかチェックしておく。

設定メモ: epgrec(DVB)用のツール類

前に測った時:
http://tthhfugapiyo.blogspot.jp/2012/07/pt2dvb2.html

今日:
$ checksignal 0 CS333
    3010,     3010,     3010,     3010
    3009,     3009,     3010,     3009
    3040,     3012,     3012,     3009
    3048,     3015,     3015,     3009
    3026,     3016,     3016,     3009
    3022,     3016,     3016,     3009

前とあまり変わってないので、大丈夫そう。

2014年7月25日金曜日

radikoをひらくスクリプト

radikoをコマンドから開きたい。
なんか世の中にはrtmpdumpとかいうプログラムでダウンロードできる
プログラムがあるようだが、動かなかった。

ということでwatirで開くrubyスクリプト。

https://sites.google.com/site/tthhfugapiyo/home/radiko.rb?attredirects=0&d=1



radikoのページってエリア選択を開くのが異常に遅い気がする。
ホントは一気にTBSを開きたいんだが。


これをcronで毎週月曜1:00〜3:00に動かす。
画面が邪魔なので、Xvfb :99とかして、仮想X上で動かす。

internet <-- firefoxとなっているのを、
internet <-- rtmpsuck <-- dchroot(IPを127.0.0.1に) <-- firefox
として、rtmpsuckを通してファイルにし、
avconv -i "ファイル" -b 32k hogehoge.mp3
みたいな感じにつかっている。

ここまでやれば月額500円(350円の間違い)払うだけの価値がある。

追記メモ:
internet <-- rtmpsuck <-- dchroot(IPを127.0.0.1に) <-- firefox
???.smartstream.ne.jpに行くつもりのものを
127.0.0.1に置き換えるためにdchrootでhosts作ってやっていたが、
HOSTALIASESでもOKなのかもしれない。

追記メモ2 2017/9/17:
なんかHLSになって録音できなくなってた。
退会しようかな

ubuntuとNetworkManagerとdnsmasq

ubuntuでローカルのdnsを動かそうとした時のことを
うろおぼえだけどメモっておく。

とりあえず以下のような感じで4.で詰まった。

1. NetworkManagerが勝手にdnsmasqを動かしてしまう。
2. 勝手に動かされているので、/etc/dnsmasq.confの設定で動いてくれない。
3. もう動いているのでデーモンとして動かそうとすると動かない
4. NetworkManagerがdnsmasqを使わないように設定して、dnsmasqデーモンを有効にすると、
 なぜか起動時のみデーモン起動が失敗する。(起動後手動で動かすと問題なし)

NetworkManagerはdnsmasqを使わないだけでいいのに、
勝手に終わらせたりしてるんじゃないか?
→そのため/etc/init.dで動かしているdnsmasqが終わらされる?

という予想をしてみたが、
これ以上追いかけるのがめんどくさくなったので、別の方法を模索した。

要はNetworkManagerが勝手に動かすdnsmasqの設定がやりたいように変えられればいい。

/etc/NetworkManager/dnsmasq.d/0-server
みたいなファイルを作ると、それで動くようだった。
他になんかやったような気がするけど忘れた。

ps afxでみて、↓のようになっていればいいはず。
NetworkManager
\_/usr/sbin/dnsmasq 〜〜〜 --conf-dir=/etc/NetworkManager/dnsmasq.d

2014年6月28日土曜日

epgrec(DVB)用のツール類

○録画用ツール類
epgrec BS/CSチャンネル変更追従(DVB) テスト
PT2の電源供給(DVB版)
PT2信号レベル測定(DVB)
PT2(DVB), epgrec用do-record.sh
epgrec dvb: Value too large for defined data type

とりあえず↑のあたりでやった結果を↓においておく


https://sites.google.com/site/tthhfugapiyo/home/dvb-tools.tar.gz
make installして./tv.rb 「チャンネル」とかやる

○epgrecの改造
epgrec録画済みのグループ化epgrecの録画済みファイルをmplayerで見る
epgrecの録画済み一覧

↑のあたり変更をしたので一応web上においておく↓
https://sites.google.com/site/tthhfugapiyo/home/epgrec.tar.gz
viewer.php, viewer_all.php, programgroupTable.phpあたりが違うところ。

これで一応バックアップのかわりとする。

設定メモ: epgrec dvb: Value too large for defined data type

設定メモ: epgrec dvb: Value too large for defined data type



とりあえずカーネルのリングバッファサイズを増やしたら

現象が起こりにくくなるように思える。



ただ、根本的な原因は出力先が遅いことだと思われる。

出力先が遅いために書き出しができなくて、

バッファから出て行かないために読み出しも行われない。

readが行われないのでカーネル内のバッファが溜まっていき、

上記のメッセージが出るということだと思う。



とくにtssplitter_liteが遅いっぽい。

(tssplitter_liteはwriteを待っている間にreadしないから。 )



なんか変に重い処理とかしてないのであれば

バッファを思いっきり大きめにとっておけば大丈夫そう。



つくったものは別途まとめる。