- コミット日時:
- 2008/12/30 22:12:46 (16 年前)
- ファイル:
凡例:
- 変更無し
- 追加
- 削除
- 更新
- コピー
- 移動
trunk/doc/index.html
r78 r83 32 32 番組名と放映局を指定しておけばあとはなにもせずに毎回録画されます。<a href="http://cal.syoboi.jp/">しょぼいカレンダー</a>というアニメ番組表サイトと強く連係することで、野球中継で時間がずれても毎回期待通り録画されます。<br /> 33 33 34 外部オプションを取り付けることで外付けチューナのコントロールも実現します。 <br />35 録画した番組は自動的に MPEG4に変換され、iPodに自動転送することが可能です。PSPに転送して視聴することも可能です。<br />34 外部オプションを取り付けることで外付けチューナのコントロールも実現します。適切な録画装置を組み合わせることでハイビジョン録画も実現します。<br /> 35 録画した番組は自動的にH.264/AVCに変換され、iPodに自動転送することが可能です。PSPに転送して視聴することも可能です。<br /> 36 36 全ての主要操作はWebベースでコントロールされます。</p> 37 37 <p><br /> … … 42 42 <li>番組名によるアニメ自動録画機能 43 43 <ul> 44 <li>最大6番組までの同時録画対応</li> 44 <li>最大6番組までの同時録画対応(アナログ)</li> 45 <li>ハイビジョンデジタル録画(同時録画数:デバイス認識するだけ)</li> 45 46 </ul> 46 47 </li> 47 48 <li>EPG番組表による番組選択録画機能</li> 48 49 <li>開始時刻、放送局など個別設定による手動録画機能</li> 50 <li>iPhoneではシンクされてない番組でも専用画面でストリーミング視聴可能 </li> 49 51 <li>USBリモコンユニットを使った外部チューナー制御機能</li> 50 <li>録画終了と同時にMPEG2からH.264/AVCへの自動変換機能(iPod Video、PSP、Webブラウザなどで視聴可能形式) </li>51 <li>video podcastの しくみを使ったiPod自動シンク機能52 <li>録画終了と同時にMPEG2からH.264/AVCへの自動変換機能(iPod 、PSP、Webブラウザなどで視聴可能形式) </li> 53 <li>video podcastの仕組を使ったiPod自動シンク機能 52 54 <ul> 53 <li> 録画番組は自動的にiPodに転送されて視聴可能状態となる 。<br />55 <li> 録画番組は自動的にiPodに転送されて視聴可能状態となる<br /> 54 56 <a href="img/foltia_vodcast.jpg"><img src="img/foltia_vodcast_s.jpg" width="320" height="240" border="2" /></a><br /> 55 57 </li> 56 58 </ul> 57 <li>現在開発中のツール「Starlight Breaker」向け番組キャプチャ画像自動生成機能</li> 59 <li>付属モジュール「Starlight Breaker」向け番組キャプチャ画像自動生成機能 60 <ul> 61 <li>Starlight BreakerはWordPressやMovable TypeなどにXMLRPCを使ってかんたんにアニメブログを投稿する機能</li> 62 </ul> 63 </li> 64 <li>環境ポリシーによるマルチユーザ対応 65 <ul> 66 <li>アカウントにより各段階のアクセス権を設定可能</li> 67 </ul> 68 </li> 58 69 </li> 59 70 </ul> … … 61 72 <h2 id="requirementhardware">・必要ハードウェア</h2> 62 73 <ul> 63 <li>Linuxの動くAT互換機:手もと開発・録画機はCeleron 2.6GHz,1GB RAMのスペックで30分番組のH.264/AVC(中画質)変換が33分程度で完了しています。</li> 64 <li>ivtvドライバで動作するビデオキャプチャカード:foltiaの機能を引きだすためには複数のエンコーダを搭載するのがおすすめです。手もとの環境ではIOデータ <a href="http://www.iodata.jp/prod/multimedia/tv/2003/gv-mvprx/">GV-MVP/RX</a>を2枚、<a href="http://www.iodata.jp/prod/multimedia/tv/2004/gv-mvprx2w/index.htm">GV-MVP/RX2W</a>を1枚で計4チャンネル同時録画環境にしています。画質の点からは複数エンコーダが一枚のカードに載ったRX2Wよりも1エンコーダのGV-MVP/RX2の方が多少有利なようです。</li> 74 <li>Linuxの動くAT互換機:筆者の環境ではPentium4(2.8GHz)/2GB RAMの環境で30分番組のハイビジョンTSをデフォルト設定でH.264にトランスコードするのに約90分程度で完了しています。</li> 75 <li>Friioなどのデジタルハイビジョン録画デバイス:HDUSもLinuxで動いているようですが未テストです。PT1は絶賛解析中らしいです。期待して待ってましょう。</li> 76 <li>(アナログ録画をする場合)ivtvドライバで動作するビデオキャプチャカード:foltiaの機能を引きだすためには複数のエンコーダを搭載するのがおすすめです。手もとの環境ではIOデータ <a href="http://www.iodata.jp/prod/multimedia/tv/2003/gv-mvprx/">GV-MVP/RX</a>を2枚、<a href="http://www.iodata.jp/prod/multimedia/tv/2004/gv-mvprx2w/index.htm">GV-MVP/RX2W</a>を1枚で計4チャンネル同時録画環境にしています。画質の点からは複数エンコーダが一枚のカードに載ったRX2Wよりも1エンコーダのGV-MVP/RX2の方が多少有利なようです。</li> 65 77 <div class="sidebar"> 66 78 IOデータ GV-MVP/RX,RX2は生産完了になり、後継として<a href = "http://www.iodata.jp/prod/multimedia/tv/2005/gv-mvprx3/index.htm">GV-MVP/RX3</a>が出ています。しかしGV-MVP/RX3はMPEG2エンコーダが変更になったため今のところ対応ドライバがありません。<br /> … … 84 96 放映テレビ局とビットレートを選択する画面に移動するので内容を確認して予約ボタンを押します。番組の録画予約は番組ごとに一度するだけで全話自動で録画することが可能です。<br /> 85 97 <br /> 86 <img src="img/screen02.png" width="800" height=" 600" /><br />98 <img src="img/screen02.png" width="800" height="500" /><br /> 87 99 <br /> 88 100 予約ボタンを押すとデータベースの録画予約テーブル[foltia_tvrecord]に番組IDと放送局、録画ビットレートが追加されます。その後、キュー入れプログラム[addatq.pl]を呼びます。addatq.plは番組IDと局IDを受け取り48時間以内の放映予定を探し、それぞれの放映ごとに録画準備のためのプログラム[folprep.pl]を放送予定時刻の5分前にキュー入れします。<br /> 89 101 予約番組の放送予定時刻の5分前になると、準備プログラム[folprep.pl]が実行されます。これは、最新の番組表データを再取得し、放映時刻が変更されてないか確認後、放送開始時刻の1分前に録画プログラム[recwrap.pl]が走るようにキューを入れます。放送時刻が15分以上先に延びていたら、再度放送予定時刻の5分前に準備プログラム[folprep.pl]をキュー入れします。<br /> 90 放送予定時刻の1分前になると録画の一連の流れを管理する録画プログラム[recwrap.pl]が起動します。このプログラムは、録画チャンネルが外部入力であれば外部チューナのチャンネルを適切なものに切り替えるためにリモコン送信プログラム[transfer.pl]を呼びだし、次に実際にビデオでバイスからファイルへの記録を行うキャプチャプログラム[tvrecording.pl]を呼び出します。<br /> 91 キャプチャプログラム[tvrecording.pl]はivtvドライバに付属のrecord-v4l2.plをベースに拡張したもので、搭載されている録画デバイスの空き状況を調べて、空いてる適切なデバイスを利用します。foltiaは特に指定をしない場合、同時録画する場合、地上波録画をキャプチャデバイスの若い番号から順番に、外部入力を一番大きいデバイスから順番に使用していきます。例としてキャプチャカードが4枚入っている場合、地上波録画は/dev/video0から、外部入力録画は/dev/video3から使われていきます。空きデバイスがない場合は、一番若い番号を持つビデオデバイスをつかんでるプロセスを止め、そのデバイスを利用します。録画は前後に10秒程度の余分な録画を行おうとするため、同一のチャネルで連続している番組を指定した場合であっても可能であれば2チューナ使用する形となります。tvrecording.plの録画チャンネルの引数に0を指定した場合はS入力が、-1を指定した場合はコンポジット入力が録画されます。外部入力はデフォルトで一番番号の大きいデバイスを利用します。録画が終了するとデータベースの放送情報テーブル[foltia_subtitle]に録画したMPEG2ファイル名を記録して親プロセスに戻ります<br /> 92 録画プログラムが終了すると、親プロセスのrecwrap.plはMPEG4への変換(トラコン)の必要があるか確認して、必要な場合変換スクリプト[vfr4psp.sh]か[ipodtranscode.pl]が呼び出されます。変換フォーマットや品質は設定ファイルであらかじめ設定しておきます。MPEG4ファイルは、MPEG2ファイル保存ディレクトリの下に番組ごとに整理されます。具体的には[TID].localized/mp4/の形を取ります。番組個別ディレクトリはMac 102 放送予定時刻の1分前になると録画の一連の流れを管理する録画プログラム[recwrap.pl]が起動します。このプログラムは、録画チャンネルが外部入力であれば外部チューナのチャンネルを適切なものに切り替えるためにリモコン送信プログラム[transfer.pl]を呼びだし、次に実際にビデオでバイスからファイルへの記録を行う録画プログラム[digitaltvrecording.pl]か[tvrecording.pl]を呼び出します。デジタル録画出来るデバイスが不足した場合は利用可能なアナログ録画デバイスがあればそちらで録画を実行するように努力します。<br /> 103 [digitaltvrecording.pl]は実際の録画プログラムを呼び出します。BS1/BS2はwineを利用してTsSplitter.exeを起動して適切な分割処理をします。<br /> 104 アナログ録画の場合はキャプチャプログラム[tvrecording.pl]はivtvドライバに付属のrecord-v4l2.plをベースに拡張したもので、搭載されている録画デバイスの空き状況を調べて、空いてる適切なデバイスを利用します。foltiaは特に指定をしない場合、同時録画する場合、地上波録画をキャプチャデバイスの若い番号から順番に、外部入力を一番大きいデバイスから順番に使用していきます。例としてキャプチャカードが4枚入っている場合、地上波録画は/dev/video0から、外部入力録画は/dev/video3から使われていきます。空きデバイスがない場合は、一番若い番号を持つビデオデバイスをつかんでるプロセスを止め、そのデバイスを利用します。録画は前後に10秒程度の余分な録画を行おうとするため、同一のチャネルで連続している番組を指定した場合であっても可能であれば2チューナ使用する形となります。tvrecording.plの録画チャンネルの引数に0を指定した場合はS入力が、-1を指定した場合はコンポジット入力が録画されます。外部入力はデフォルトで一番番号の大きいデバイスを利用します。<br /> 105 106 録画が終了するとデータベースの放送情報テーブル[foltia_subtitle]に録画したMPEG2ファイル名を記録して親プロセスに戻ります<br /> 107 録画プログラムが終了すると、Starlight Breaker用キャプチャ画像をmplayerを利用して作成し、親プロセスの[recwrap.pl]はMPEG4への変換(トラコン)の必要があるか確認して、必要な場合変換スクリプト[ipodtranscode.pl]が呼び出して自分は終了します。変換フォーマットや品質は設定ファイルであらかじめ設定しておきます。MPEG4ファイルは、MPEG2ファイル保存ディレクトリの下に番組ごとに整理されます。具体的には[TID].localized/mp4/の形を取ります。番組個別ディレクトリはMac 93 108 OS Xのローカライズ機構に準拠しているため、例えば665.localizedディレクトリはMac OS XのFinderでマウントすると「魔法少女リリカルなのはA's」と表示されます。<br /> 94 MPEG4への変換が終わるとpsp用MPEG4オプティマイザ[mp4psp]でタイトル入れとヘッダ組み立てをして最適化したあと、mplayerとImageMagickを利用してサムネールを作成します。サムネールはPSPの仕様に準拠して120x160で拡張子が.THMのjpegファイルです。そしてデータベースの放送情報テーブル[foltia_subtitle]に変換ファイル名を書き込んで録画の一連の流れが終了します。<br />95 図に示すとこうなります。 <br />109 [ipodtranscode.pl]は起動されると録画が古い順に順番にトラコンを実行し、サムネールを作成して、すべての録画ファイルを変換すると終了します。サムネールはPSPの仕様に準拠して120x160で拡張子が.THMのjpegファイルです。そしてデータベースの放送情報テーブル[foltia_subtitle]に変換ファイル名を書き込んで録画の一連の流れが終了します。<br /> 110 図に示すとこうなります。(ごめん、ちょっと古いまま)<br /> 96 111 <img src="img/blockdiagram.png" width="800" height="399" /> <br /> 97 112 </p> … … 113 128 <hr> 114 129 <h2 id="install">・インストール</h2> 115 <p> foltiaの動作にはLinux,Apache,PHP,Perl,PostgreSQLと ビデオキャプチャ用ivtvドライバなどが必要です。<br />130 <p> foltiaの動作にはLinux,Apache,PHP,Perl,PostgreSQLと録画プログラム、mplayer,ffmpeg,faac,iui,などが必要です。<br /> 116 131 インストールはおおまかにOS,Apache,ivtvドライバ、PostgreSQL、foltiaの順で進めて行くとよいでしょう。<br /> 117 132 phpPgAdminやSambaなども必要に応じて入れておくと便利かもしれません。<br /> 118 foltiaのダウンロードは公式ページまたはSubversionで入手することが可能です。<br />133 foltiaのダウンロードは公式ページのtarボールまたはSubversionで入手することが可能です。<br /> 119 134 Subversionを使う場合は下記のコマンドで最新versionを入手できます。</p> 120 135 <p class="command">$svn co http://svn.dcc-jpl.com/foltia/trunk foltia</p> 121 <p class="screen">またインストールについては「<a href="manual/index.html">foltiaインストールマニュアル</a>」も参考になります。 </p>136 <p class="screen">またインストールについては「<a href="manual/index.html">foltiaインストールマニュアル</a>」も参考になります。(内容はやや古くなっています)</p> 122 137 <h3>・配線</h3> 123 <p> あらかじめキャプチャカード を取り付け、に外部チューナを外部入力端子につないでおきます。</p>138 <p> あらかじめキャプチャカード、録画装置を取り付け、アンテナ線をつなぎ、外部チューナを外部入力端子につないでおきます。</p> 124 139 <h3>・OSインストール</h3> 125 <p> 手もとの開発環境ではFedora Coreを使っています。一通りインストールを終えたらfoltiaを動作させるアカウント「foltia」を作ります。</p>140 <p> 筆者の環境ではFedora Coreを使っています。一通りインストールを終えたらfoltiaを動作させるアカウント「foltia」を作ります。</p> 126 141 <h3>・Apacheインストール</h3> 127 142 <p>Apacheは2.2以降が2GBを越えるファイルの転送にも対応していて便利です。<br /> 128 143 ポイントは、Apacheを動かすユーザをfoltiaにすることと、「.THM」のmime typeをimage/jpegにする設定を追加することです。</p> 129 144 <h3>・ivtvドライバインストール</h3> 130 <p>「<a href="http://linux.matchy.net/FedoraGV-MVPRX.html">FEDORA 131 CORE で GV-MVP/RX を使う</a>」のrpmパッケージを使用すると早いです。<br /> 132 複数エンコーダを搭載している場合には/etc/modprobe.confに<br /> 133 <span class="screen">options ivtv tuner=46,46</span><br /> 134 と、エンコーダの数だけ「46」を書き足します。<br /> 135 ビデオキャプチャデバイスが利用できるようになったら<br /> 136 <span class="screen">chmod 0666 /dev/video*</span><br /> 137 でroot以外でも利用できるようにパーミッションを変更します。</p> 145 <p>最近のLinuxのディストリビューションだと標準で使えるようになっていることが多いようです。</p> 138 146 <h3>・PostgreSQLインストール</h3> 139 147 <p>ポイントは文字コードをEUC-JPでデータベースをつくることです。foltiaという名前でデータベースを作ったら、foltiaパッケージ付属のmktable.txtでテーブルを作成します。</p> 140 <h3>・各種 ツールインストール</h3>148 <h3>・各種アプリインストール</h3> 141 149 <p>以下のアプリケーションを利用します。インストールされてなければyumやaptなどからインストールして下さい。 142 150 <br /> 143 mplayer:サムネール作成に利用<br /> 144 ImageMagick:サムネール作成に利用</p> 151 mplayer:サムネール作成、トラコンに利用<br /> 152 ImageMagick:サムネール作成に利用 153 <br /> 154 wine:TS分割ツールTsSplitter起動に利用 155 <br /> 156 <a href="http://gpac.sourceforge.net/index.php">MP4Box</a>:各トラックをまとめてMP4ピルドに利用</p> 145 157 <h3>・各種Perlモジュールのインストール</h3> 146 158 <p>以下のPerlモジュールを利用します。インストールされてなければCPANなどからインストールして下さい。<br /> … … 153 165 <p>EPG番組表取得に必要なXMLTV日本語版をインストールします。<a href="http://linux.paken.org/index.php?XMLTV%C6%FC%CB%DC%C2%D0%B1%FE%C8%C7">ぱ研</a>が制作したものがすでに本家にマージされているようです。</p> 154 166 <h3>・ffmpegインストール</h3> 155 <p> iPod H.264/AVCを作れる拡張をされたffmpegをインストールします。<br />167 <p>最近のffmpegはiPod用H.264作成オプション(-f ipod)をもっていますが、ディストリビューション付属のffmpegがうまく動かなかったら作り直してインストールします。<br /> 156 168 <br /> 157 169 1.ffmpegのソースを入手する 158 <p class="command">$svn checkout --revision {"2006-03-28 22:00"}svn://svn.mplayerhq.hu/ffmpeg/trunk170 <p class="command">$svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk 159 171 ffmpeg 160 <p>2.ここにあるiPodパッチをあてる<br> 161 <a href = "http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-March/009814.html" target = "_blank">http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-March/009814.html</a><br><br> 162 環境によっては更にx264.cのアップデートが必要という情報が寄せられた。(From <a href="http://www.dcc-jpl.com/soft/foltia/bbs/minibbs.php">foltia BBS TTTさん</a>) 163 <p class="command">svn cat --revision 6711 ffmpeg/libavcodec/x264.c > ffmpeg/libavcodec/x264.c</p> 164 3.メイクする<br> 172 <p>2.メイクする<br> 165 173 手もとでは下記オプションでビルドしています。 166 <p class="command">$./configure --enable- mp3lame --enable-x264 --enable-gpl --enable-a52167 --enable-xvid --enable-faac --enable-faad --enable-amr_nb --enable-amr_wb --enable-pthreads 174 <p class="command">$./configure --enable-libmp3lame --enable-libx264 --enable-libxvid 175 --enable-libfaac --enable-libfaad --enable-pthreads --enable-gpl 168 176 <h3>・foltia本体</h3> 169 177 <p>installディリクトリの中にある「perl」と「php」をそれぞれ適当なところに配置します。<br /> 170 178 手もとの環境では/home/foltia/perl/と/home/foltia/php/に配置しています。</p> 171 <h3>・mp4psp</h3> 172 <p>MPEG4のトラコンに利用しているツール「mp4psp」をインストールします。「<a href="http://hetima.com/">ヘチマコンピュータ</a>」によって作られたコードの「<a href="http://www.kokone.to/~kgt/diary.shtml?200501#23_3_1">作業日誌と云う名の不定記 173 2005/01/23</a> 」によるLinux版をベースにしたツールです。PSP用にタイトルを入力してATOMヘッダを組み立てて最適化するのに使用します。またファーストスタート形式にも最適化します。</p> 179 <h3>・各種ツールインストール</h3> 180 <p>以下のプログラムを利用します。<br /> 181 recfriio:Friioを使ったデジタルハイビジョン録画に利用 http://2sen.dip.jp/cgi-bin/friioup/source/up0777.zip 182 <br /> 183 TsSplitter:MPEG-2 184 TS streamを分割するwindows用プログラム http://2sen.dip.jp/cgi-bin/friioup/source/up0827.zip<br /> 185 <a href="http://allegro.10.dtiblog.com/blog-entry-177.html">tss.py</a>:TSを分割するPythonスクリプト、正確にはHD以外のストリームを捨てるスクリプト<br /> 186 <a href="http://www.nero8.com/jpn/nero-aac-codec.html">Nero AAC コーデック</a>:オーディオトラックのAACエンコードに使う。FAACと比べて品質がとても良い。<br /> 187 上記のneroAacEnc, 188 recfriio, 189 TsSplitter.exe,tss.pyは~/perl/tool/あたりに入れて下さい。<br /> 190 <a href="http://code.google.com/p/iui/"><br /> 191 iui</a>:iPhone用UIライブラリ <br /> 192 iuiは~/php/iui/として入れて下さい。</p> 193 174 194 <h3>・外部チューナコントロール(オプション)</h3> 175 195 <p>Home Electronics社製USB 赤外線トランスミッタ <a href="http://www.home-electro.com/tira2.php">Tira-2.1</a>を利用することにより、外部チューナのコントロールを行うことが可能です。<br /> … … 186 206 <span class="screen"><br /> 187 207 $recunits = '4';<br /> 188 </span> 搭載エンコーダの数。GV-MVP/RX2Wを一枚刺しの場合は2になります。<br />208 </span>アナログ録画の設定です。搭載エンコーダの数を指定します。GV-MVP/RX2Wを一枚刺しの場合は2になります。デジタルハイビジョン録画のみの場合は0になります。<br /> 189 209 <br /> 190 210 <span class="screen">$recfolderpath = '/home/foltia/php/tv';<br /> … … 192 212 <br /> 193 213 <span class="screen">$uhfbandtype = 0;<br /> 194 </span> UHF帯なら0、CATVなら1を指定します。それぞれivtvのntsc-bcast-jpとntsc-cable-jpに対応します。<br />214 </span>アナログ録画の設定です。UHF帯なら0、CATVなら1を指定します。それぞれivtvのntsc-bcast-jpとntsc-cable-jpに対応します。<br /> 195 215 <span class="screen"><br /> 196 216 $rapidfiledelete = 1;</span><br /> 197 217 1なら削除ファイルは「mita」ディレクトリに移動、0なら即時削除します。mitaディレクトリはゴミ箱のように機能しますが自動的に削除はしません。らくちんな運用をしたければ0、安全のため保存しておきたければ1でよいでしょう。</p> 198 <p><span class="screen">$tunerinputnum = 6;<br />199 $svideoinputnum = 7;<br />200 $comvideoinputnum = 8;</span><br />218 <p><span class="screen">$tunerinputnum = 0;<br /> 219 $svideoinputnum = 1;<br /> 220 $comvideoinputnum = 2;</span><br /> 201 221 上記3行にキャプチャカードごとに固有な映像入力のパラメータを示すivtvのinput numperを指示します。それぞれ、チューナ入力、S映像入力、コンポジット入力を指定します。デフォルトはIO 202 DATA製 GV-MVP/RX,RX2,RX2Wカードで利用できる設定となっています。<br /> 203 カード固有の値を調べるにはivtvドライバをインストールした状態で</p> 204 <p><span class="command">$/usr/bin/ivtvctl.paken 205 --list-inputs --device=/dev/video0</span></p> 206 <p>などで可能です。<br /> 222 DATA製 GV-MVP/RX,RX2,RX2Wカードで利用できる設定となっています。 223 <br /> 207 224 <span class="screen"><br /> 208 225 $haveirdaunit = 1;</span><br /> … … 216 233 <span class="screen">$trconqty = 2;</span><br /> 217 234 MPEG4変換の品質を指定します。デフォルトはH.264/AVCの中画質となっています。<br /> 218 3の高画質はファイルサイズは小さく画質もよいのですが処理時間がかかりすぎているのでデフォルトには指定していません。<br /> 219 手もとのCeleron2.6GHzのパソコンで、3の設定で実尺の3.4倍、2の設定で1.1倍、1の設定で0.77倍位の処理時間で完了しています。<br /> 220 0:PSP/iPod XviD MPEG4(旧式):faacとMPEG4IPを使って変換<br /> 221 1:iPod Xvid MPEG4 標準画質 15fps 300kbps<br /> 222 2:iPod H.264 中画質 24fps 300kbps<br /> 223 3:iPod H.264 高画質 30fps 300kbps<br /> 224 4:iPhone/iPod 480x320 H.264 高画質 24fps 350kbps<br /> 225 5:iPhone/iPod 480x320 H.264 高画質 30fps 350kbps<br /> 235 デフォルトでバランスのよい2が選択されています。<br /> 236 アナログソースとデジタルソースで設定が若干異なります。<br /> 237 アナログソースでは 238 手もとのCeleron2.6GHzのパソコンで、3の設定で実尺の3.4倍、2の設定で1.1倍、1の設定で0.77倍位の処理時間で完了しています。<br /> 239 0:PSP/iPod XviD MPEG4(旧式):faacとMPEG4IPを使って変換(古い設定)<br /> 240 1:iPod Xvid MPEG4 標準画質 15fps 300kbps / デジタル 360x202 24.00fps 300kbps<br /> 241 2:iPod H.264 中画質 24fps 300kbps / デジタル 360x202 24.00fps 300kbps<br /> 242 3:iPod H.264 高画質 30fps 300kbps/ デジタル 480x272 29.97fps 400kbps<br /> 243 4:iPhone/iPod 480x320 H.264 高画質 24fps 350kbps / デジタル 640x352 29.97fps 600kbps 244 <br /> 226 245 <br /> 227 246 <span class="screen">$phptoolpath = $toolpath ;</span><br /> … … 250 269 <h4>・設定3:foltia_stationテーブル</h4> 251 270 <p>録画の重要な設定となる項目です。インストールが無事に終了してれば首都圏の放送局設定サンプルが入っていますのでそれを参考に設定して下さい。<br /> 252 foltia_stationテーブルのそれぞれの項目について説明します。 <br />271 foltia_stationテーブルのそれぞれの項目について説明します。しょぼいカレンダーの情報によって放送局は自動的に追加されていきます。<br /> 253 272 <br /> 254 273 <span class="screen">stationid</span>:ユニークなID値です。<br /> … … 266 285 foltia_epgにデータがインポートされていて<br /> 267 286 3.foltia_stationテーブルのontvcodeフィールドにfoltia_epgテーブルのontvchannelフィールドと同じ放送局識別名が記入されている<br /> 268 局になります。デフォルトで関東キー局とBS、BSデジタル局、CS局が設定されています。</p> 287 局になります。デフォルトで関東キー局とBS、BSデジタル局、CS局が設定されています。<br /> 288 <span class="screen">digitalch</span>:地デジの物理チャンネルを入れます。BSデジタルは日本全国共通なので変更の必要はありません。<br /> 289 <span class="screen">digitalstationband:</span>地デジなら0、BSデジタルなら1、CSデジタルなら2を入れます。(現在未使用)</p> 269 290 <h3>・Tira2準備(オプション)</h3> 270 291 <p> USBトランスミッタであるTira2を動作させるために必要な準備を行います。<br /> … … 276 297 <h3>・動作確認</h3> 277 298 <p> ここまで設定できたらあと一息で完了します。まず単純な録画ができるか動作確認していきましょう。<br /> 299 【デジタルハイビジョン編】<br /> 300 ~/perl/toolにインストールしたrecfriioが正しく動作するか確かめます。</p> 301 <p><span class="command">recfriio --b25 27 60 /home/foltia/php/tv/test-mpeg2-ts.m2t </span></p> 302 <p>これで27チャンネルのvlcで視聴出来る状態のMPEG2-tsファイルが60秒ぶん、指定した位置にでき上がれば録画成功です。<br /> 303 エラーがでた場合はインストールを見直して下さい。<br /> 304 【アナログ編】<br /> 278 305 最初に</p> 279 306 <p><span class="command">$head /dev/video0</span></p> … … 281 308 つぎに、録画試験を~/perl/tvrecording.plを使って行います。</p> 282 309 <p><span class="command">$./tvrecording.pl 1 60 0 test.m2p 5 0 0 /dev/video0</span></p> 283 <p>としてみましょう。この例は1chを60秒5Mbpsでtest.m2pというファイル名で/dev/video0から録画することを意味しています。2分程度でプロンプトに戻ります。録画ファイル保存フォルダ(デフォルトだと/home/foltia/tv/)にtest.m2pが出来ていて、ファイルを再生して期待通りならば第1段階成功です。うまくいかなかった場合には~/debug.txtに書かれる情報も参考にして原因を突き止めて下さい。<br /> 310 <p>としてみましょう。この例は1chを60秒5Mbpsでtest.m2pというファイル名で/dev/video0から録画することを意味しています。2分程度でプロンプトに戻ります。録画ファイル保存フォルダ(デフォルトだと/home/foltia/tv/)にtest.m2pが出来ていて、ファイルを再生して期待通りならば第1段階成功です。うまくいかなかった場合には~/debug.txtに書かれる情報も参考にして原因を突き止めて下さい。</p> 311 <p><br /> 284 312 つぎに、しょぼいカレンダーから番組データをインポートできるかを確認します。</p> 285 313 <p><span class="command">$./perl/getxml2db.pl</span></p> … … 287 315 ここまでできたらWebブラウザでインストールしたphpのディレクトリを開いてみましょう。<br /> 288 316 <img src="img/screen03.png" width="800" height="600" /><br /> 289 番組表が表示されているのが確認できます。実際に予約をして見ましょう。一番左のTIDの数字をクリックするとそのタイトルの予約画面になります。例では690のCanvas2 290 〜虹色のスケッチ〜をクリックした画面です。<br /> 291 <img src="img/screen04.png" width="800" height="600" /><br /> 292 放送局とビットレートを選択して予約を押すと予約キューが入ります。放送局の設定で[全局]を選択すると文字通り放送スケジュールが入ってる局を全局録画しようとします。いまのところ受信可能不可能に関係なく録画します。想定してる用途は『千葉テレビとテレビ埼玉とtvkでリリカルなのはA'sを録画しておこう!』というものではなくしょぼいカレンダーが持つ*声優関連*や*アニメ特番*などの放送局が特定できない番組グループを録画するためのものです。<br /> 317 番組表が表示されているのが確認できます。実際に予約をして見ましょう。一番左のTIDの数字をクリックするとそのタイトルの予約画面になります。例は画面外の1546版のマリア様がみてる 4thシーズンをクリックした画面です。<br /> 318 <img src="img/screen02.png" width="800" height="500" /><br /> 319 放送局を選択して予約を押すと予約キューが入ります。デジタル録画優先オプションとアナログビットレートは必要に応じて変更して下さい。放送局の設定で[全局]を選択すると文字通り放送スケジュールが入ってる局を全局録画しようとします。想定してる用途は『千葉テレビとテレビ埼玉とtvkでリリカルなのはA'sを録画しておこう!』というものではなくしょぼいカレンダーが持つ*声優関連*や*アニメ特番*などの放送局が特定できない番組グループを録画するためのものです。<br /> 293 320 予約が完了したらシェルでatqコマンドでキューが入ったを確認します。</p> 294 321 <p class="command">$atq<br /> 295 182194 200 6-01-31 00:40 a foltia</p>322 182194 2009-01-08 01:10 a foltia</p> 296 323 <p>放映予定の5分前に起動するプロセスが入ってることが確認できます。<br /> 297 この例だと0 0:40にfolprep.plが起動します。<br />324 この例だと01:10にfolprep.plが起動します。<br /> 298 325 folprep.plが起動すると放映予定1分前にrecwrap.plがキューに入ります。</p> 299 326 <p class="command">$atq<br /> 300 182195 200 6-01-31 00:44 a foltia</p>301 <p> 番組が終了したらMPEG2が録画されたか確認してみましょう。デフォルトで~/php/tv/ 690-16-20060131-0045.m2pというファイルが出来ているはずです。ファイル名はそれぞれ以下のルールで命名されます。<br />327 182195 2009-01-08 01:14 a foltia</p> 328 <p> 番組が終了したらMPEG2が録画されたか確認してみましょう。デフォルトで~/php/tv/1546-1-20090108-0115.m2tというファイルが出来ているはずです。ファイル名はそれぞれ以下のルールで命名されます。<br /> 302 329 TID:しょぼいカレンダーと共通の番組IDです。<br /> 303 330 話数:番組が第何話かを示します。該当しない場合は空白になります。<br /> 304 331 放映日:YYYYmmddスタイルの放映日です。<br /> 305 332 放映時刻:0000-2359の間での開始時刻になります。しょぼいカレンダーでは24:00以降の時刻を扱いますがfoltiaでは暦通り24:00以降の時刻は次の日として取り扱います。<br /> 306 MPEG2の録画が完了するとfoltiaはffmpegを利用してH.264/AVCへの変換を開始します。所要時間はCeleron2.6GHz環境で実尺の1.2倍程度の時間です。この例の場合~/php/tv/690.localized/mp4/MAQ-690-16-20060131-0045.MP4という動画ファイルと同じ階層にMAQ-690-16-20060131-0045.THMファイルができ上がります。ファイル名は、先頭がM4Vの場合MPEG4(XviD)、MAQの場合H.264/AVC、そのあとに続くのはMPEG2と同じルールです。</p> 333 拡張子:デジタルハイビジョンの場合.m2t、アナログ録画の場合m2pになります。<br /> 334 MPEG2の録画が完了するとfoltiaはffmpegを利用してH.264/AVCへの変換を開始します。この例の場合~/php/tv/1546.localized/mp4/MAQ-1546-1-20090108-0115.MP4という動画ファイルと同じ階層にMAQ-690-16-20060131-0045.THMファイルができ上がります。ファイル名は、先頭がM4Vの場合MPEG4(XviD)、MAQの場合H.264/AVC、そのあとに続くのはMPEG2と同じルールです。</p> 307 335 <p> 番組指定による自動録画が動いたら、つぎにEPGによる個別番組録画の動作確認に移りましょう。<br /> 308 336 まず番組データをXMLTVを用いてインポートします。</p> … … 349 377 <p> </p> 350 378 <h3>予約一覧:</h3> 351 <p> 大きく上下のふたつのエリアに分かれていて、予約されている番組の放映予定と番組名を一覧表示します。ここでも[TID]をクリックすると番組予約画面へ、[タイトル]をクリックすると「しょぼいカレンダー」の該当番組詳細画面へそれぞれ移動します。録画予約の解除は下半分のタイトルリストの項目から行います。EPG予約の解除もここから行います。「画質」項目は録画ビットレートをMbps単位で表示しています。 <br />379 <p> 大きく上下のふたつのエリアに分かれていて、予約されている番組の放映予定と番組名を一覧表示します。ここでも[TID]をクリックすると番組予約画面へ、[タイトル]をクリックすると「しょぼいカレンダー」の該当番組詳細画面へそれぞれ移動します。録画予約の解除は下半分のタイトルリストの項目から行います。EPG予約の解除もここから行います。「画質」項目は録画ビットレートをMbps単位で表示しています。(いまのところデジタル録画の重複表示には対応していません)<br /> 352 380 色が付いている番組は重複警告です。搭載された録画ユニットで録画し切れない場合に色がつきます。赤色はカードに搭載されたアナログチューナーの重複、青色は外部入力の重複を示します。重複警告がでている番組は録画が欠ける可能性があります。また、アナログチューナー、外部チューナーともに00:00-00:30 番組A ,00:30-01:00 番組Bという番組が連続している場合は重複とは判断しません。<br /> 353 381 引数rでエンコーダ数を変更して予約状況を調べる事が出来ます。listreserve.php?r=6で6台エンコーダを搭載したときの予約状況を調べる事が出来ます。<br /> … … 401 429 <img src="img/screen15.png" width="800" height="600" /><br /> 402 430 「キャプ」でキャプチャ画面一覧を開きます。<br /> 403 <img src="img/screen17.png" width="800" height="600" /><br /> 431 <img src="img/screen17.png" width="800" height="600" /><br /> 432 <br /> 433 この一連の画面をiPhoneで開くとこのようになります。<br /> 434 <img src="img/iPhone_20080928-23.jpg" width="213" height="320" /><img src="img/iPhone_20080928-30.jpg" width="213" height="320" /><img src="img/iPhone_20080928-27.jpg" width="213" height="320" /><img src="img/iPhone_20080928-25.jpg" width="213" height="320" /><br /> 404 435 </p> 405 436 <h3>Folcast(RSS):</h3> … … 468 499 <p>今後ユーザごとにFolcastを編集出来る機能などを開発予定です。</p> 469 500 <h2 id="colophon">・おわりに</h2> 470 <p> 以上、駆け足でfoltiaの概要を説明してきました。今のところfoltiaには視聴に関する機能は一切ありませんが、 使用例として自宅では富士通T90Hというパソコンにfoltia録画ボリュームをSambaでマウントし、WinDVDでMPEG2を再生、外ではiPod471 VideoでMPEG4を視聴しています。DVDPlayerソフトでファイルを選んで再生するのがいまひとつめんどくさい操作なので、今後の改良点としたいところです。<br />501 <p> 以上、駆け足でfoltiaの概要を説明してきました。今のところfoltiaには視聴に関する機能は一切ありませんが、パソコンにfoltia録画ボリュームをSambaでマウントし、VLCでMPEG2を再生、外ではiPhoneでfolcastかストリーミングで視聴しています。DVD 502 Playerソフトでファイルを選んで再生するのがいまひとつめんどくさい操作なので、今後の改良点としたいところです。<br /> 472 503 foltiaはまだまだ開発途上のソフトウェアです。今後の計画は以下の様なものを考えています。<br /> 473 504 ・未読番組管理機能<br /> 474 505 ・ロケーションフリーテレビのようなライブストリーミング機能<br /> 475 ・デジタル放送のデジタル録画機能<br />476 詳しくはfoltia Development Central wiki:「<a href = "http://www.dcc-jpl.com/foltia/wiki/futuretodo">foltia のToDoやらゆめを適当に書くwik</a>i」に。 <br />477 506 詳しくはfoltia Development Central wiki:「<a href = "http://www.dcc-jpl.com/foltia/wiki/futuretodo">foltia 507 のToDoやらゆめを適当に書くwik</a>i」に書かれる予定です。 <br /> 508 今後も全ての情報はDCC-JPL Japanの公式ページ<<a href="http://www.dcc-jpl.com/soft/foltia/">http://www.dcc-jpl.com/soft/foltia/</a>>に掲載していきます。</p> 478 509 <p>・謝辞<br /> 479 510 以下の数々のサイトを利用、参考にさせていただいております。改めましてお礼申し上げます。<br />