コミケが無事終了

Posted on 2010/08/17 (火) 1:34
Filed Under foltia, 同人イベント | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

DCC-JPL Japan C78 ハートキャッチフォルティア!ジャケット無事コミケが終わりまして、おつかれさまでした。
というわけで、foltiaのアップデートをコミットしました。
チェンジセット111です。


よーーやく放送波からのEPG取込み機能が追加されました。
主な変更点はこんな感じです。

・epgdumpの追加インストール
 tsファイルからXMLTV形式のXMLを取得する「epgdump」プログラムのインストールが必要です。
こちらなどからダウンロード可能です。
http://sourceforge.jp/projects/rec10/svn/view/epgdump/?root=rec10
・foltia_epgテーブル構成変更
・SQLite環境でfolcastがまったく動いてなかったのを修正。 

また、チャンネルスキャンプログラム「channelscan.pl」が同梱されています。初期設定にお役立て下さい。こちらの機能は将来のfoltiaリリースに取り込まれる予定です。

今後直近の予定としてキーワード録画、ライブストリーミング、番組ごとのトラコン品質個別指定、複数トラコン品質ファイル生成、などへの対応が予定されています。

なんとなくコピペで文脈がスムーズでないですね。

Linux用デジタル放送チャンネルスキャンスクリプト

Posted on 2010/08/09 (月) 13:25
Filed Under foltia | 1 Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

アニメ自動録画システム foltia」に組み込もうとして、チャンネルスキャンスクリプトを作った。
けど、便利そうなんで、foltiaに組み込む前にスタンドアロンで動くものをメモ代わりにここに貼ろうかと。

実行結果はこんな感じ。



[中略]


[以下略]

手元の環境では3分かからずに地デジ/BS/CSのスキャンが完了した。
テストはrecpt1でしか試してないけど類似のコマンドならそれなりに行ける気がする。
他にepgdumpが必要。

お持ち帰りはこちら。
スタンドアロンチャンネルスキャンスクリプト channelscan.pl

PERL:
  1. #!/usr/bin/perl
  2. #
  3. #
  4. # Anime recording system foltia
  5. # http://www.dcc-jpl.com/soft/foltia/
  6. #
  7. #
  8. # チャンネルスキャン
  9. # 初期インストール時に受信可能局をスキャンします
  10. #
  11. # DCC-JPL Japan/foltia project
  12. #
  13.  
  14. my $recpt1path = "/home/foltia/perl/tool/recpt1"; #ほかのキャプチャデバイス作ってる人はココを変更
  15. my $epgdumppath = "/home/foltia/perl/tool"; #epgdumpのあるディレクトリ
  16. my $recfolderpath = "/tmp";#tsを出力するディレクトリ
  17. my $xmloutpath = "/tmp";
  18. my $channel = 13 ; #地デジチャンネルは13-62
  19. my $oserr = "";
  20. my $line = "";
  21.  
  22. print "Initialize\n";
  23. print "Tool path are\n";
  24. print "REC:$recpt1path\n";
  25. print "EPGDUMP:$epgdumppath/epgdump\n";
  26. print "TS OUT:$recfolderpath/\n";
  27. print "XML OUT:$xmloutpath/\n";
  28.  
  29. #ツールがあるか確認
  30. unless (-e "$recpt1path"){
  31.     print "Please install $recpt1path.\n";
  32.     exit 1;
  33. }
  34. unless (-e "$epgdumppath/epgdump"){
  35.     print "Please install $epgdumppath/epgdump.\n";
  36.     exit 1;
  37. }
  38. unless (-e "$recfolderpath"){
  39.     print "Please make directory $recfolderpath.\n";
  40.     exit 1;
  41. }
  42. unless (-e "$xmloutpath"){
  43.     print "Please make directory $xmloutpath.\n";
  44.     exit 1;
  45. }
  46.  
  47.  
  48. #地デジスキャンループ
  49. for ($channel = 13; $channel <= 62 ; $channel++){
  50.     print "\nChannel: $channel\n";
  51.     $oserr = `$recpt1path $channel 4 $recfolderpath/__$channel.m2t`;
  52.     $oserr = `$epgdumppath/epgdump $channel $recfolderpath/__$channel.m2t $xmloutpath/__$channel-epg.xml`;
  53.  
  54.     if (-s "$xmloutpath/__$channel-epg.xml" ){
  55.         print "\t\t This channel can view :  $channel \n";
  56.         open(XML, "<$xmloutpath/__$channel-epg.xml");
  57.         while ( $line = <XML>) {
  58.             #Jcode::convert(\$line,'euc','utf8');
  59.             if($line =~ /display-name/){
  60.                 $line =~ s/<.*?>//g;
  61.                 #Jcode::convert(\$line,'utf8','euc');
  62.                 print "\t\t $channel $line\n";
  63.             }#end if
  64.         }#end while
  65.         close(XML);
  66.     }else{
  67.         print "\t\t Not Available :  $channel \n";
  68.     }#end if
  69. }#end for
  70.  
  71.  
  72. #BSデジタル
  73. $channel = 211;
  74.     print "\nBS Digital Scan\n";
  75.     $oserr = `$recpt1path $channel 4 $recfolderpath/__$channel.m2t`;
  76.     $oserr = `$epgdumppath/epgdump /BS $recfolderpath/__$channel.m2t $xmloutpath/__$channel-epg.xml`;
  77.  
  78.     if (-s "$xmloutpath/__$channel-epg.xml" ){
  79.         print "\t\t BS Digital can view :   \n";
  80.         open(XML, "<$xmloutpath/__$channel-epg.xml");
  81.         while ( $line = <XML>) {
  82.             #Jcode::convert(\$line,'euc','utf8');
  83.             if($line =~ /display-name/){
  84.                 $line =~ s/<.*?>//g;
  85.                 #Jcode::convert(\$line,'utf8','euc');
  86.                 print "\t\t $line\n";
  87.             }#end if
  88.         }#end while
  89.         close(XML);
  90.     }else{
  91.         print "\t\t Not Available :  BS Digital \n";
  92.     }#end if
  93.  
  94. #CSデジタル
  95. $channel = "CS8";
  96.     print "\nCS Digital Scan\n";
  97.     $oserr = `$recpt1path $channel 4 $recfolderpath/__$channel.m2t`;
  98.     $oserr = `$epgdumppath/epgdump /CS $recfolderpath/__$channel.m2t $xmloutpath/__$channel-epg.xml`;
  99.  
  100.     if (-s "$xmloutpath/__$channel-epg.xml" ){
  101.         print "\t\t CS Digital can view :   \n";
  102.         open(XML, "<$xmloutpath/__$channel-epg.xml");
  103.         while ( $line = <XML>) {
  104.             #Jcode::convert(\$line,'euc','utf8');
  105.             if($line =~ /display-name/){
  106.                 $line =~ s/<.*?>//g;
  107.                 #Jcode::convert(\$line,'utf8','euc');
  108.                 print "\t\t $line\n";
  109.             }#end if
  110.         }#end while
  111.         close(XML);
  112.     }else{
  113.         print "\t\t Not Available :  CS Digital \n";
  114.     }#end if

地デジチャンネルを調べるにはここが便利:「地上デジタル放送 チャンネル一覧表:マスプロ電工

AsteriskとソフトフォンとG.729

Posted on 2010/08/03 (火) 1:50
Filed Under VoIP | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

iPhone4のソフトフォンで3G網での通話品質を引き上げようと、G.711 μ-lawから圧縮率の高いG.729に変更してみた。
G.729は有料のものが多くMedia5-fone用は1,200円、Asterisk用のが10ドル。
Asteriskインストール手順はこちらが詳しい。
iPhoneのソフトフォンでバックグラウンド待ち受け 【その2】|雲の上はいつも青空
AsteriskのG.729実装はフリーのものもあるようだが今回は有料版を導入した。

たしかに3G網での体制がしぶとくなり品質が向上したようだ。
効果高い。

Media5-fone

Posted on 2010/07/30 (金) 17:05
Filed Under レビュー, VoIP | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

昨日に引き続き、また別のソフトフォンを試してみた。

今回試したのはMedia5-foneというので、一分の会話ができる評価用機能制限版がフリー、通常版が600円。
もちろん3Gからの発着信も可能。
試してみると、今まで試したソフトフォンで最も音質がいいように感じられる。

使えるプロトコルはSIPのみでIAX2は未対応。
キー入力で電話番号以外のSIPアドレスに発信する機能やSIPトレースというSIPシーケンスを見る機能など上級者でも満足の機能を持つ。
G.729コーデックは追加で1,200円で購入可能。
iOS4のバックグラウンド待ち受けにも対応しており、別アプリ使用中やスリープ状態でも着信が取れる。便利!
というわけで、いまのところこれをメインの電話とすることにした。

唯一気になるのは、なぜか起動中やバックグラウンドでの待ち受け中はiPod機能の音楽再生が低品質になってしまう点。そう遠くないうちに解消しそうではあるのであんまし気にしないことにした。

Media5-fone VoIP SIP Mobile Softphone - Media5 Corporation (iTunes Store)

Media5-fone Free VoIP SIP Mobile Softphone - Media5 Corporation (iTunes Store)

過去のソフトフォン記事。
Bria iPhone Edition :宗子時空
Wifone :宗子時空
IAXクライアント、IAXDialer :宗子時空
3G網からVoIPが使えるiSipSimple :宗子時空

HTML5 Videoライブラリ

Posted on 2010/07/19 (月) 4:15
Filed Under foltia | 2 Comments | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

ここで提供されていたオープンソースのHTML5 Videoプレイヤを試してみた。
HTML5 Video Player | Video JS

かなり素晴らしそうなので、手元でサンプル作って試してみた。
こしらえたページのソースはH.264のMP4のみでその結果こうなった。

FireFox:Mac/Win:3.6.6:FlashPlayerで再生。
Safari:Mac/Win:5.0:HTML5 Videoプレイヤで再生。
Opera:Mac:10.60:再生不能(FlashPlayer内にエラーメッセージ)。
Chrome:Win:5.0.375.99:HTML5 Videoプレイヤで再生。
iPhone::4.0:動画領域をクリックするとQuickTimeプラグインの新規ウインドウで再生
iPad::3.2:HTML5 Videoをインラインで再生。クリックするとQuickTimeプラグインの新規ウインドウで再生
PS3::Linuxが動く最後のファーム:フリーズ

foltiaのUIのどこかに入れようかとも思ったけど、ブラウザで視聴するよりQuickTimePlayerで開くほうがふつー便利で使いやすいよなぁ?と思い先送り。iPhoneやiPadはMP4そのまま再生できるし。

ところでPS3のtorneが「本体のファーム上げろ」と出て使用不能になったんだけど、これあげるとLinux使えなくなるじゃん?
なにこれ、バカなの? しぬの?
ていうか金返してくんないの?
なんで集団訴訟になんないの?
クタたんの時代のほうがよっぽどよかったよなぁ、PLAYSTATION。

物理マシンからVirtualBoxへのお引っ越し

Posted on 2010/07/02 (金) 23:12
Filed Under 技術 | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

SunからORACLEというがっかりなロゴにかわってしまった仮想化ソフトの「VirtualBox」で、物理マシンのハードディスクから仮想マシンに変換したんでその時のメモ。

吸出元はCentOS5の環境。

最初なにも考えずに5GBしか使ってない160GBをddで吸い取ったら.gzした状態で60GB、VirtualBoxハードディスクファイル.vdiに変換した時点で80GBにふくれてしまった。
いくらなんでもこれはデカ過ぎと思って未使用領域ゼロクリアすることにした。zerofreeというツールがあったがファイルシステムをアンマウントしなければならず、dd if=/dev/zero of=/root/zerofile.dat的な感じで作業。
再度吸い出したところこのような大きさになった。
.gz 10GB
.vdi 48GB

吸い出しのコマンドはこんな感じ。転送先が192.168.0.90な例。

転送先#nc -l 9000 | dd of=/home/user/server-sda.gz
吸出元#dd if=/dev/sda | gzip -cf | nc 192.168.0.90 9000

そしてVirtualBox用イメージに変換。正確なハードディスクの容量が必要。多分ddの結果に出力されてる。

gzip -dfc server-sda.gz | VBoxManage convertfromraw stdin server-sda.vdi 160000000000

で、このハードディスクファイルを元に仮想マシンを作って起動すると、起動途中でswitchrootに失敗してkernel panicになってしまうんでCentOSのインストールメディアisoを使いlinux rescueで起動してmkinitrdで作り直す。
参考手順:「ハードディスクが変わってしまったときに switchroot: mount failer が表示されるエラーはmkinitrdでinitrdを 作り直す例があった

電話革命-写真編

Posted on 2010/06/24 (木) 23:26
Filed Under VoIP | 3 Comments | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

先日話題にした「Asteriskから携帯網に発信する3G VoIP Gateway」の機械、「 3G VoIP Gateway PORTech MV-370U」がやってきた。
価格はサンプル価格で375USD+送料47USD。メールのレスポンスは大変よく、発送された翌日には到着した。

まずはフォトレポート。


外箱。各機種共通。


仕様。1SIM,VoIP,3Gモデル、US仕様電源アダプタ。


本体。素っ気ない。業務用の風格。


底部。電池ボックスのフタのようなものの奥にSIMスロット。


SIMスロット拡大。スイッチはファクトリーリセットかなんかそれっぽいもの。


付属アンテナ。ケーブル長は3メートルくらい。底部にマグネットがついており金属にくっつく。


ACアダプタは日本仕様でPSEもついていた。


フタを開けたところ。シンプル。


基板の拡大。なんか左下のネジが一本足りない気がするよね?


更に拡大。


3G無線基盤と思われる部分。


裏側。シンプル。

設定などは後日につづく。
基本的にはこれをベースに。
Setup MV-370 GSM Gateway with Asterisk - voip-info.org

注:技術適合申請してない無線機を日本国内で使用すると電波法に抵触する場合があるので注意しましょう。

しかしiPhone4の網膜ディスプレイ、モックのような美しさですね!

radikoの録音プログラムアップデート

Posted on 2010/06/06 (日) 4:01
Filed Under foltia | Leave a Comment | TrackBack | ̃Gg͂ĂȃubN}[Nɒlj Share on Tumblr

気がついたらfoltiaでradikoの録音に失敗していた。

調べてみたら録音スクリプトの-pを-sに変更する必要があるようだった。

--pageUrl|-p url Web URL of played programme
--swfUrl|-s url URL to player swf file

(rtmpdump --helpから)

つまり、これが

/home/foltia/perl/tool/rtmpdump -r "rtmpe://radiko.smartstream.ne.jp:1935/QRR/_defInst_/simul-stream" -p "http://radiko.jp/player/player.html#QRR" -f "WIN 10,0,45,2" -v -B 1813 -o /home/foltia/php/tv/_test_radiko_rec.aac.flv

こうなる

/home/foltia/perl/tool/rtmpdump -r "rtmpe://radiko.smartstream.ne.jp:1935/QRR/_defInst_/simul-stream" -s "http://radiko.jp/player/player.html#QRR" -f "WIN 10,0,45,2" -v -B 1813 -o /home/foltia/php/tv/_test_radiko_rec.aac.flv

(WordPressが記号を全角とかにしてしまうのでそのままコピペは失敗しますよ)

そう遠くないうちにコミットしてアップデートする予定。

参考にさせてもらったページ。
ちりつも! : ubuntuでradikoを録音する方法

Recently


Categories


Archives


Wish list

宗子さんのほしい物リスト2015/5-
Pages (151): « 2 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17 18 19 20 21 22 ... Last »