OSDN Git Service

stop using trunk directory in rectool
[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の実行時にチャンネルのスキャンと初期化が行われます。
118                         これでエラーが出なければインストールは完了です。
119                         次にrectoolのインストールを行ってください。
120 \chapter{rectool}
121         \section{rectoolについて}
122                 rectoolはlong.inus氏によって書かれたrec10管理スクリプトです。
123                 単体での配布は行っておらず、rec10に最新版が同梱されるという形で
124                 配布されています。rec10は現在rectool以外の録画ツールがないため、
125                 rectoolを使ってWEB上から予約するのが唯一の録画方法になります。
126                 rectoolはLGPL ver.3ライセンスであり、long.inusが著作権を持ちます。
127         \section{必須環境}
128                 \begin{itemize}
129                         \setlength{\itemsep}{-3pt}
130                         \item perl
131                         \item perlライブラリ(下記)
132                         \item apatchなどのhttpサーバ(perl対応のもの)
133                 \end{itemize}
134                 \subsection{perlライブラリ}
135                         \begin{itemize}
136                                 \setlength{\itemsep}{-4pt}
137                                 \item CGI::Carp
138                                 \item Time::Piece
139                                 \item Date::Simple
140                                 \item DateTime
141                                 \item CGI::Minimal
142                                 \item MIME::Base64
143                                 \item Config::Simple
144                                 \item Time::Hires
145                                 \item Data::Dumper
146                                 \item Tie::IxHash
147                                 \item Perl6::Slurp
148                                 \item Sort::Naturally
149                         \end{itemize}
150                 \section{インストール}
151                 rec10の圧縮ファイルのwwwフォルダにあるrectool.plを設置したい
152                 場所においてください。ブラウザからrectool.plを表示すれば
153                 予約ができるようになります。
154                 \section{使い方}
155                 \includegraphics[width=10cm]{./eps/rectool_top.eps}
156
157
158                 一番上の一行が全体のメニュー、その下が各々の機能に応じた画面となります。
159                 \begin{description}
160                         \setlength{\itemsep}{-2pt}
161                         \item [トップ]\mbox{}\\この画面。番組表の確認や予約を行う画面。
162                         \item [予約確認]\mbox{}\\予約の変更、確認、削除などを行う画面。
163                         \item [予約状況(画像版)]\mbox{}\\画像でどの程度予約が入っているかを確認する画面。
164                         \item [録画一覧]\mbox{}\\録画済みのファイルの処理状況を確認する画面。
165                         \item [おまかせ]\mbox{}\\これまでの録画履歴から好みだと思われる番組を
166                         ピックアップします。
167                         \item [玄人使用]\mbox{}\\rec10のDBの内容などを確認します。
168                         \item [復旧支援]\mbox{}\\途中から処理をやり直す場合に使います。
169                         \item [地引]\mbox{}\\字引によるキーワード録画候補を提案します。
170                         \item [録画履歴]\mbox{}\\これまでに録画された番組の履歴を表示します。
171                         \item [新規予約]\mbox{}\\番組表からではなく直に新たな予約を行います。
172                 \end{description}
173         \subsection{トップ画面}
174                 \includegraphics[width=10cm]{./eps/rectool_top_chlist.eps}
175
176                 左からチャンネル名、日時、ジャンル、キーワードの条件を設定し、番組表から該当
177                 する番組を検索することができます。検索可能なのは先の一週間分となります。
178
179
180                 \includegraphics[width=10cm]{./eps/rectool_top_searchCh.eps}
181
182                 図のように検索結果が表示されるため録画したい番組をクリックしてください。
183
184
185
186                 \includegraphics[width=10cm]{./eps/rectool_top_reserve.eps}
187
188
189                 録画の詳細を設定する画面です。
190                 \begin{description}
191                     \setlength{\itemsep}{-2pt}
192                     \item [録画のサイズ]\mbox{}\\ 縦横比維持のリサイズもしく
193                     はインターレース保持
194                     \begin{description}
195                                 \setlength{\itemsep}{-3pt}
196                         \item [H 1280x720]\mbox{}\\ リサイズして1280x720に収まる大きさにします
197                         \item [W 854x480]\mbox{}\\ 854x480に収まる大きさにします
198                         \item [F 1920x1080]\mbox{}\\ 1920x1080に収まる大きさにします。
199                         地デジの放送されている大きさです
200                         \item [I インタレ保持]\mbox{}\\ リサイズせずにインターレース保持(60i)します
201                     \end{description}
202                     \item [画質]\mbox{}\\ 画質を調整します(x264のcrfを増減)
203                     \item [圧縮率]\mbox{}\\ 圧縮率を調整します(x264のpresetを変更)
204                     \item [コンテナ]\mbox{}\\ 保存するコンテナ(MP4/MKV)の設定。そのままだと
205                     rec10の設定に従います。
206                     \item [24fps]\mbox{}\\ 一部アニメや映画など用に24fps化を行います
207                     \item [二か国語放送]\mbox{}\\ 二か国語放送用に音声を取り扱います。\\
208                     題名に[二]などが含まれているもの用です。
209                     だいたいの場合主音声に英語、副音声に日本語がはいります。vlcなどでは切り替えられます。
210                     \item [5.1ch放送]\mbox{}\\ 5.1ch用に音声を取り扱います。題名に[5.1]がつく場合などです。
211                     \item [移動オプション]\mbox{}\\ 設定した処理の後にrec10のmovepathで
212                     設定された場所へファイルを送ります。
213                     \item [ファイル名日時追加]\mbox{}\\ 録画の日時を録画ファイル名に加えます。
214                     シリーズものなどで便利です。
215                     \item [隔週録画]\mbox{}\\ 毎週この時間に予約する
216                 \end{description} 
217
218                 特に触るべきなのは録画サイズ、ファイル名日時追加、隔週予約ぐらいです。
219                 録画サイズはマシンのスペックなどに応じて変えてください。Hが使いやすい程度です。
220
221                 これで録画予約が完了しました。
222         \subsection{おまかせ画面}
223
224                 \includegraphics[width=10cm]{./eps/rectool_bravia.eps}
225
226                 左のような画面がおまかせ画面です。これまでの録画履歴から好みだと思われる
227                 タイトルをピックアップします。\textbf{薦められているタイトルを自動で予約したい場合は、
228                 玄人仕様内のオプション
229                 (自動ベイズ)を設定してください。}
230         \subsection{字引モード}
231
232                 \includegraphics[width=10cm]{./eps/rectool_jbk.eps}
233
234                 左の画面がキーワード画面です。設定されたキーワードをチェックし、設定に従って
235                 提示もしくは自動で録画します。\textbf{キーワードごとに自動で録画するかどうかを設定
236                 するのではなく、一括で自動録画にしたい場合は玄人仕様の内部オプション(自動地引)
237                 を設定してください。}
238 \chapter{周辺ツール}
239         \section{jTsSplitter(TSスプリッタ)}
240                 \subsection{概要}
241                 jTsSplitterはgn64\_jp(gn64\_jp@users.sourceforge.jp)によって開発されたMpeg2Ts Splitterです。
242                 rec10内部でチャンネルスキャン時の番組番号の解析、TSからの必要チャンネルの抜き出しなどに使用されています。
243                 ライセンスはLGPL ver.3です。
244
245                 \subsection{使い方}
246                 \begin{verbatim}
247                         java -jar jTsSplitter <入力TSファイル名> <出力TSファイル名> [オプション<番組番号>]
248                 \end{verbatim}
249                 
250                 \begin{description}
251                         \item [$<$入力TSファイル名$>$]\mbox{}\\ 入力するtsのファイル名を指定します。
252                         \item [$<$出力TSファイル名$>$]\mbox{}\\ スプリットされたtsの出力ファイル名を指定します。
253                         \item [番組番号]\mbox{}\\ {\textbf{オプションです}CSやBSの場合チャンネル番号が内部の番組番号になっているため
254                         切り出したい番組のチャンネルを指定します。指定しない場合は一つ目の番組を切り出します。}
255                 \end{description} 
256         \section{epgdump(番組表取得ソフト)}
257                 \subsection{概要}
258                 デジタル放送のTSファイルから番組表を読みだし、xmlに書き出すソフトです。tomyさんがLinux用にSoloris版から移植したもの
259                 をrec10用に改変したものです。ライセンスはGPLとなります。細かな情報はreadme.txtを参照してください。
260                 \subsection{使い方}
261                 \begin{verbatim}
262                         epgdump {/BS|/CS} <tsFile> <outfile>
263                         epgdump <ID> <tsFile> <outfile>
264                         recpt1 ... [>10] - | epgdump /TIME - /dev/null
265                 \end{verbatim}
266                 \begin{description}
267                         \item [$<$ID$>$]\mbox{}\\ チャンネル識別子。地上波の物理チャンネルを与えます。(rec10内部使用用)
268                         \item [\slash BS]\mbox{}\\ BSモード。一つのTSからBS全局のデータを読み込みます。
269                         \item [\slash CS]\mbox{}\\ CSモード。一つのTSから複数局のデータを読み込みます。
270                         \item [\slash TIME]\mbox{}\\ {時刻合わせモード。TSからTOT(Time Offset Table)を読み込みます。
271                         \begin{verbatim}recpt1 <任意> 10(秒以上) - | epgdump /TIME - <任意>\end{verbatim}の形で使用してください。
272                         TOTは5秒に1回しか来ないため、recpt1に与える時間をある程度長くしてください。}
273                 \end{description} 
274         \section{b25remote}
275                 b25remoteはWindowsにおけるBonCasLinkのような機能をもったソフトウェアです。
276                 細かな情報は付属のreadmeを参照してください。
277                 \subsection{使い方}
278                         \verb|/etc/rec10.conf|の\verb|[path]|以下に\verb|b25_remote = 1|と
279                         \begin{verbatim}
280                                 b25_env = "export B25_SERVER_IP=<IP> && export LD_PRELOAD=/~/b25-client.so"
281                         \end{verbatim}
282                         を環境にあわせて書き加えてください。
283         \section{classify.py(自動仕分け機能)}
284                 \subsection{概要}
285                 録画ファイルを自動で仕分けする機能です。名前からの推測仕分けを行います。
286                 この機能をつかってどこにファイルが移動されたかを確認するにはrectoolの「録画一覧」を参照してください。
287                 \subsection{使い方}
288                 まずrec10.confの\verb|[path]|以下のrecorded = に移動先のパスを書き加えてください。
289                 なお書かれたパスの子フォルダも検索対象になります。移動先のフォルダはrec10実行ユーザーに書き込み権限を与えておいてください。
290                 \begin{verbatim}
291                         python classify.py -A
292                         python classify.py -D
293                 \end{verbatim}
294                 \begin{description}
295                         \item [-A 自動移動]\mbox{}\\ 自動移動開始。移動された動画の関連ファイルは削除されます。
296                         \item [-D 関連ファイル削除]\mbox{}\\ 動画以外の関連ファイル(tsなど)を削除しファイル容量をへらします。容量圧迫の緊急時用に
297                 \end{description} 
298 \chapter{FAQ}
299         \section{その他}
300                 \begin{description}
301                         \setlength{\itemsep}{-2pt}
302                         \item [解読予約のまま時間が進むだけで、解読が始まらない]\mbox{}\\{rec10は録画、解読、エンコードに実行可能最大数
303                         を設けています。そのためエラーなどで作業途中で以上に終了した場合などはその値をリセットできないためrec10が最大数に達した
304                         と勘違いして終了待ちの状態になることがあります。そのようなときはrectoolの玄人仕様からDBの数値をリセットしてください。}
305                 \end{description}
306 \chapter{仕様}
307         \section{rec10}
308                 \subsection{コマンドオプション}
309                         \begin{description}
310                         \setlength{\itemsep}{-2pt}
311                         \item [サイズ] {S(720x480)/W(854x480)/H(1280x720)/F(1920x1080)/I(Interlaced)}
312                         \item [画質(x264のcrf,小さい方が高画質)] {u(+2)/i(+1)/default(設定値)/o(-1)/p(-2)}
313                         \item [圧縮率(x264のpreset)] {q(veryfast)/w(fast)/default(medium)/e(slow)/r(slower)}
314                         \item [コンテナ] {m(mkv mkvmergeが必要)/default(設定値)/4(mp4 MP4Boxが必要)}
315                         \item [音声] {d(二ヶ国語)/default(通常音声)/5(5.1ch)}
316                         \item [フレームレート] {a(24fps)/default(30fps)}
317                         \item [移動opt] {R(録画後移動)/D(復号後移動)/E(エンコード後移動)/default(移動なし)}
318                         \item [その他] {N(自動命名オプション)}
319                         \end{description}
320                         
321 \end{document}