OSDN Git Service

make 0.9.9 manual.
[rec10/rec10-git.git] / manual / trunk / rec10Manual.tex
1 \documentclass[12pt,a4j]{jreport}
2 \usepackage{ascmac}
3 \usepackage[dvipdfm]{graphicx}
4 \title{Rec10Suiteマニュアル ver0.9.9}
5 \author{gn64\_jp}
6 \date{\today}
7 \topmargin=-0.6in
8 \textheight=8.2in
9 \begin{document}
10 \maketitle
11 \tableofcontents
12 \chapter{Rec10Suite}
13         \section{Rec10Suiteとは}
14                 Rec10Suiteはデジタル時代のテレビに対応した録画・エンコードツールで
15                 レコーダーの代わりとなるようなプログラムを作れないかというところから
16                 出発したプログラムです。
17                 
18                 Rec10Suiteは中核ともいうべき録画管理ソフトのrec10と録画管理クライアント
19                 であるrectool、そのほかの補助ツールからなります。
20                 rec10はcronを使って定期動作することで番組表チェックや時間変更に対応し、
21                 rectoolを使うことで携帯からでも予約を行うことが可能です。
22         \section{特徴}
23                 本ツール以外にもデジタル放送を録画するソフトはepgrecやfoltiaなどが存在しますが、
24                 Rec10SuiteはBS/CS放送のサポート、二か国語対応、エンコードの実行などが違う点です。
25                 見る人が少ないためかBS/CSの話は巷ではあまり出てこないようです。
26 \chapter{rec10}
27         \section{概要}
28                 rec10は放送波を受信してmpeg2-tsにできる環境下で使用するために作られたソフトで、
29                 tsをh.264などの形式を用いてファイルサイズを小さくし、パソコンや携帯などのデバイスで
30                 使いやすい形式にするものです。rectoolとあわせることで録画予約から録画管理までできる
31                 ようになります。
32                 rec10のライセンスはLGPL v3で著作権はgn64\_jp(gn64\_jp@users.sourceforge.jp)に属します。
33         \subsection{構成}
34                 rec10は録画ツール(recpt1やrecfriioなど)、復号ツール(b25)、
35                 BonTsDemux(同梱、wineで使用)、epgdump(改造版同梱)などを内部で使用します。
36                 録画ツールと復号ツールは同梱されていないため、入手してインストールした後にrec10.conf
37                 に書き込んでください。
38         \section{依存環境}
39                 \paragraph{必須環境}
40                         \begin{itemize}
41                                 \setlength{\itemsep}{-3pt}
42                                 \item python2(2.6以上、2.5でも可能かもしれません)
43                                 \item python-mysqlモジュール
44                                 \item mencoder
45                                 \item x264(最新版のビルド推奨)
46                                 \item ffmpeg
47                                 \item wine
48                                 \item MySQL
49                         \end{itemize}
50                 \paragraph{推奨環境}
51                         \begin{itemize}
52                                 \setlength{\itemsep}{-3pt}
53                                 \item MP4Box(GPAC) mp4サポートに必要
54                                 \item mkvmerge mkvサポートに必要
55                                 \item Caption2Ass 字幕サポートに必要
56                         \end{itemize}
57         \section{インストール}
58                 \paragraph{必須環境の用意}
59                         上記の必須環境を用意してください。x264は最新版をビルドすることを推奨します。
60                         (画質、エンコード速度が向上します)
61                         次にrec10が使用するためのMySQLのデーターベース、ユーザーを用意してください。
62                         次次項の設定中に必要になります。
63                 \paragraph{b25とrecpt1のインストール}
64                         rec10はchardev版とよばれるドライバを使用します。friioだとrecfriio,pt1だとrecpt1が必要になります。
65                         それとは別にb25とよばれるソフトもインストールされている必要があります。ここではrecpt1について解説します。
66                         b25は\texttt{b25最新版 http://2sen.dip.jp/cgi-bin/pt1up/source/up0215.zip}から、
67                         recpt1は以下のコマンドで取得、インストールしてください。
68                         \begin{verbatim}
69                                 $hg clone http://hg.honeyplanet.jp/pt1/ pt1
70                                 $cd pt1/driver
71                                 $make
72                                 $sudo make install      ←インストール
73                                 $cd ../recpt1/
74                                 $make
75                                 $$sudo make install
76                         \end{verbatim}
77                         \begin{itembox}[l]{最新のLinux環境}
78                                 最新のLinux環境では標準でDVB方式のPT1ドライバが同梱されていますが、
79                                 rec10はこの方式に対応していないため、以下の方法で無効化してください
80                                 \begin{verbatim}
81                                         /etc/modprbe.d/blacklist-pt1.confに
82                                         blacklist earth-pt1
83                                         と書き込んだ上で再起動してください。
84                                 \end{verbatim}
85                         \end{itembox}
86                 \paragraph{ダウンロードとインストール}
87                         \texttt{rec10のサイト http://sourceforge.jp/projects/rec10/}から
88                         最新版のrec10Suiteをダウンロードします。
89                         ここではrec10Suite0.9.9.tar.bz2とします
90                         \begin{verbatim}
91                                 $tar jxvf rec10Suite0.9.9.tar.bz2  ←ファイルの解凍
92                                 $cd rec10\ 0.9.9        ←解凍したフォルダへ移動
93                                 $bash ./install.sh      ←設定スクリプトの実行
94                                 ・・・(質問されるため答えてください)
95                                 $make
96                                 $sudo make install      ←インストール
97                         \end{verbatim}
98                         \begin{itembox}[l]{AACサポートについて}
99                         AACサポートを追加したい場合はNeroAACEncをインストール前に
100                         tstoolsフォルダ内に入れておくか、インストール後に
101                         /usr/local/binに入れてください。
102                         なおneroAacEncは\texttt{Nero AAC Codec http://www.nero.com/jpn/technologies-aac-codec.html}から手に入ります
103                         \end{itembox}
104                         \begin{itembox}[l]{字幕サポートについて}
105                         字幕サポートを追加したい場合はCaption2Ass.exeをインストール前に
106                         tstoolsフォルダ内に入れておくか、インストール後に
107                         /usr/local/share/rec10/tstoolsに入れてください。
108                         \end{itembox}
109                 \paragraph{cronの設定}
110                         rec10を実行したいユーザーでcronの設定を行います。
111                         五分ごとに実行されるようにしてください。
112                         \begin{verbatim}
113                                 $/usr/local/bin/rec10           ←必ず一度実行してください、アップデート処理などが入ります。
114                                 $crontab -e
115                                 */5 * * * * /usr/local/bin/rec10を追加
116                         \end{verbatim}
117                         このあと、必ず一度rec10を実行してください。(\$rec10)
118                         チャンネルのスキャンと初期化が行われます。
119                         これでエラーが出なければインストールは完了です。
120                         次にrectoolのインストールを行ってください。
121                         
122 \chapter{rectool}
123         \section{rectoolについて}
124                 rectoolはlong.inus氏によって書かれたrec10管理スクリプトです。
125                 単体での配布は行っておらず、rec10に最新版が同梱されるという形で
126                 配布されています。rec10は現在rectool以外の録画ツールがないため、
127                 rectoolを使ってWEB上から予約するのが唯一の録画方法になります。
128                 rectoolはLGPL ver.3ライセンスであり、long.inusが著作権を持ちます。
129         \section{必須環境}
130                 \begin{itemize}
131                         \setlength{\itemsep}{-3pt}
132                         \item perl
133                         \item perlライブラリ(下記)
134                         \item apatchなどのhttpサーバ(perl対応のもの)
135                 \end{itemize}
136                 \subsection{perlライブラリ}
137                         \begin{itemize}
138                                 \setlength{\itemsep}{-4pt}
139                                 \item CGI::Carp
140                                 \item Time::Piece
141                                 \item Date::Simple
142                                 \item DateTime
143                                 \item CGI::Minimal
144                                 \item MIME::Base64
145                                 \item Config::Simple
146                                 \item Time::Hires
147                                 \item Data::Dumper
148                                 \item Tie::IxHash
149                                 \item Perl6::Slurp
150                                 \item Sort::Naturally
151                         \end{itemize}
152                 \section{インストール}
153                 rec10の圧縮ファイルのwwwフォルダにあるrectool.plを設置したい
154                 場所においてください。ブラウザからrectool.plを表示すれば
155                 予約ができるようになります。
156                 <図を入れる予定>
157                 \section{使い方}
158                 \includegraphics[width=10cm]{./eps/rectool_top.eps}
159
160
161                 一番上の一行が全体のメニュー、その下が各々の機能に応じた画面となります。
162                 \begin{description}
163                         \setlength{\itemsep}{-2pt}
164                         \item [トップ]\mbox{}\\この画面。番組表の確認や予約を行う画面。
165                         \item [予約確認]\mbox{}\\予約の変更、確認、削除などを行う画面。
166                         \item [予約状況(画像版)]\mbox{}\\画像でどの程度予約が入っているかを確認する画面。
167                         \item [録画一覧]\mbox{}\\録画済みのファイルの処理状況を確認する画面。
168                         \item [おまかせ]\mbox{}\\これまでの録画履歴から好みだと思われる番組を
169                         ピックアップします。
170                         \item [玄人使用]\mbox{}\\rec10のDBの内容などを確認します。
171                         \item [復旧支援]\mbox{}\\途中から処理をやり直す場合に使います。
172                         \item [地引]\mbox{}\\字引によるキーワード録画候補を提案します。
173                         \item [録画履歴]\mbox{}\\これまでに録画された番組の履歴を表示します。
174                         \item [新規予約]\mbox{}\\番組表からではなく直に新たな予約を行います。
175                 \end{description}
176         \subsection{トップ画面}
177                 \includegraphics[width=10cm]{./eps/rectool_top_chlist.eps}
178
179                 左からチャンネル名、日時、ジャンル、キーワードの条件を設定し、番組表から該当
180                 する番組を検索することができます。検索可能なのは先の一週間分となります。
181
182
183                 \includegraphics[width=10cm]{./eps/rectool_top_searchCh.eps}
184
185                 図のように検索結果が表示されるため録画したい番組をクリックしてください。
186
187
188
189                 \includegraphics[width=10cm]{./eps/rectool_top_reserve.eps}
190
191
192                 録画の詳細を設定する画面です。
193                 \begin{description}
194                     \setlength{\itemsep}{-2pt}
195                     \item [録画のサイズ]\mbox{}\\ 縦横比維持のリサイズもしく
196                     はインターレース保持
197                     \begin{description}
198                                 \setlength{\itemsep}{-3pt}
199                         \item [H 1280x720]\mbox{}\\ リサイズして1280x720に収まる大きさにします
200                         \item [W 854x480]\mbox{}\\ 854x480に収まる大きさにします
201                         \item [F 1920x1080]\mbox{}\\ 1920x1080に収まる大きさにします。
202                         地デジの放送されている大きさです
203                         \item [I インタレ保持]\mbox{}\\ リサイズせずにインターレース保持(60i)します
204                     \end{description}
205                     \item [画質]\mbox{}\\ 画質を調整します(x264のcrfを増減)
206                     \item [圧縮率]\mbox{}\\ 圧縮率を調整します(x264のpresetを変更)
207                     \item [コンテナ]\mbox{}\\ 保存するコンテナ(MP4/MKV)の設定。そのままだと
208                     rec10の設定に従います。
209                     \item [24fps]\mbox{}\\ 一部アニメや映画など用に24fps化を行います
210                     \item [二か国語放送]\mbox{}\\ 二か国語放送用に音声を取り扱います。\\
211                     題名に[二]などが含まれているもの用です。
212                     だいたいの場合主音声に英語、副音声に日本語がはいります。vlcなどでは切り替えられます。
213                     \item [5.1ch放送]\mbox{}\\ 5.1ch用に音声を取り扱います。題名に[5.1]がつく場合などです。
214                     \item [移動オプション]\mbox{}\\ 設定した処理の後にrec10のmovepathで
215                     設定された場所へファイルを送ります。
216                     \item [ファイル名日時追加]\mbox{}\\ 録画の日時を録画ファイル名に加えます。
217                     シリーズものなどで便利です。
218                     \item [隔週録画]\mbox{}\\ 毎週この時間に予約する
219                 \end{description} 
220
221                 特に触るべきなのは録画サイズ、ファイル名日時追加、隔週予約ぐらいです。
222                 録画サイズはマシンのスペックなどに応じて変えてください。Hが使いやすい程度です。
223
224                 これで録画予約が完了しました。
225         \subsection{おまかせ画面}
226
227                 \includegraphics[width=10cm]{./eps/rectool_bravia.eps}
228
229                 左のような画面がおまかせ画面です。これまでの録画履歴から好みだと思われる
230                 タイトルをピックアップします。\textbf{薦められているタイトルを自動で予約したい場合は、
231                 玄人仕様内のオプション
232                 (自動ベイズ)を設定してください。}
233         \subsection{字引モード}
234
235                 \includegraphics[width=10cm]{./eps/rectool_jbk.eps}
236
237                 左の画面がキーワード画面です。設定されたキーワードをチェックし、設定に従って
238                 提示もしくは自動で録画します。\textbf{キーワードごとに自動で録画するかどうかを設定
239                 するのではなく、一括で自動録画にしたい場合は玄人仕様の内部オプション(自動地引)
240                 を設定してください。}
241 \chapter{周辺ツール}
242         \section{jTsSplitter}
243                 \subsection{概要}
244                 jTsSplitterはgn64\_jp(gn64\_jp@users.sourceforge.jp)によって開発されたMpeg2Ts Splitterです。
245                 rec10内部でチャンネルスキャン時の番組番号の解析、TSからの必要チャンネルの抜き出しなどに使用されています。
246                 ライセンスはLGPL ver.3です。
247
248                 \subsection{使い方}
249                 \begin{verbatim}
250                         java -jar jTsSplitter <入力TSファイル名> <出力TSファイル名> [オプション<番組番号>]
251                 \end{verbatim}
252                 
253                 \begin{description}
254                         \item [$<$入力TSファイル名$>$]\mbox{}\\ 入力するtsのファイル名を指定します。
255                         \item [$<$出力TSファイル名$>$]\mbox{}\\ スプリットされたtsの出力ファイル名を指定します。
256                         \item [番組番号]\mbox{}\\ {\textbf{オプションです}CSやBSの場合チャンネル番号が内部の番組番号になっているため
257                         切り出したい番組のチャンネルを指定します。指定しない場合は一つ目の番組を切り出します。}
258                 \end{description} 
259         \section{epgdump}
260                 \subsection{概要}
261                 デジタル放送のTSファイルから番組表を読みだし、xmlに書き出すソフトです。tomyさんがLinux用にSoloris版から移植したもの
262                 をrec10用に改変したものです。ライセンスはGPLとなります。細かな情報はreadme.txtを参照してください。
263                 \subsection{使い方}
264                 \begin{verbatim}
265                         epgdump {/BS|/CS} <tsFile> <outfile>
266                         epgdump <ID> <tsFile> <outfile>
267                         recpt1 ... [>10] - | epgdump /TIME - /dev/null
268                 \end{verbatim}
269                 \begin{description}
270                         \item [$<$ID$>$]\mbox{}\\ チャンネル識別子。地上波の物理チャンネルを与えます。(rec10内部使用用)
271                         \item [\slash BS]\mbox{}\\ BSモード。一つのTSからBS全局のデータを読み込みます。
272                         \item [\slash CS]\mbox{}\\ CSモード。一つのTSから複数局のデータを読み込みます。
273                         \item [\slash TIME]\mbox{}\\ {時刻合わせモード。TSからTOT(Time Offset Table)を読み込みます。
274                         recpt1 <任意> 10(秒以上) - | epgdump /TIME - <任意>の形で使用してください。
275                         TOTは5秒に1回しか来ないため、recpt1に与える時間をある程度長くしてください。}
276                 \end{description} 
277         \section{b25remote}
278                 b25remoteはWindowsにおけるBonCasLinkのような機能をもったソフトウェアです。
279                 細かな情報は付属のreadmeを参照してください。
280 \end{document}