24時間ワンセグ野郎プロジェクトに参加しなくなって1年以上.... 完全に忘却の彼方であるが、自分の作った分は公開しなければ ならないという使命感で書き始めようと思います。
ぶっちゃけ....
「生きている人、いますか?」byCROSS†CHANNEL
まだ続けてる人いますかね?もしかして、ガラポンとかARecX6とか出てきたから要らないですかね.....
苦労しても自作するメリットをあげればこんな感じでしょうか。
うーん、まだイケると思うんだが...やはり 対応チューナーの入手難易度と電気工作 が壁になっているよなあ。
今、本当に後悔しているのは、日○Linuxから原稿依頼あったとき、 断らなければよかったということです。当時はまだUOT-100(LOG-J200)派生品が入手可能だったので、一通りの文章にしたためて おくことはワンセグ野郎ファミリーの拡充に多少役立ったと 思うからです。
ま、 全てはアフターカーニバルですが!
この連載が終わったら、ワンセグ8チャンネルチューナー工作済み、かつLinuxサーバインストール済みのPCを1台、 ヤフオクにでも流そうかと思います。誰かに引き継いでもらえれば。
Linuxでワンセグ野郎といえば oneseg24 project1択 の状況でした。しかしこれも丸2年以上目立った更新がないという....
特にPerlベースのパーサであるため(とても読みやすいが)、ARMベースのNAS(ネットワークHDD)に詰め込もうとすると性能が足りなくなります。
そこで、拙作の字幕/EPG解析ソフトdumpeitにパイプ入力とファイル分割機能をつけました。dvbstreamなどの標準出力にTSストリームを出すコマンドと組み合わせれば、所定のディレクトリ下に1時間ごとに自動分割して
-rw-r--r-- 1 root root 8380 2011-07-18 16:00 /mnt/ts/110718/11071815_Ch20.eit -rw-r--r-- 1 root root 6480 2011-07-18 15:59 /mnt/ts/110718/11071815_Ch20.idx -rw-r--r-- 1 root root 30224 2011-07-18 15:56 /mnt/ts/110718/11071815_Ch20.sub -rw-r--r-- 1 root root 187239164 2011-07-18 16:00 /mnt/ts/110718/11071815_Ch20.ts
という4種類のファイル、24時間ワンセグ野郎互換の.ts, .idxファイルに加え、.eit(番組情報), .sub(字幕情報)のファイルを作ります。
oneseg24 projectのts.plを使わず、全てC言語で書かれており、バッファリングも考慮してありますので、負荷は激減します。 手元の玄柴(SheevaPlug SATA)で、暫定的ながら6チャンネル記録が実現できています。 8チャンネルはそれでも重くてたまに取りこぼしをしていましたが...
このバージョンからWin32サポートを外しました(もう自宅にコンパイル環境がないため)。追加した機能もLinux専用なのでご注意。 →ダウンロード:dumpeit_20110718.zip
ソースを展開したらコンパイルして適当なディレクトリに置くだけです。
# unzip dumpeit_20110718.zip # cd dumpeit # make # cp dumpeit /usr/sbin
例えば物理チャンネル27、NHK総合の、ワンセグTS数時間分のhoge.tsを用意したとすると(前提がいきなりハードですが)、
# cat hoge.ts | dumpeit -h 27 -d /mnt/ts -t 5 -e 0 -fhd 65536
という風に指定すれば、/mnt/tsへ分割されたTSファイルが番組&字幕データ付きで解析されて格納されます。このcatコマンドの部分をdvbstream, recfriio, recpt1に置換すれば、ストリームのリアルタイム処理が可能になるというわけ。
「oneseg24 project」の不満点の一つに 東京MXのマルチ編成に対応できない ということがありました。常に若い方のプログラムNo.の番組しか出てこないのですね(勘違いだったら指摘してください)。驚くことに、市販品であるARecX6でさえ、MXワンセグ1とワンセグ2を指定するには 物理チューナーを2個使わなければなりません でした。 ガラポンに至ってはそもそも東京MXが録画できないらしい ....
1TSに含まれてるものをわざわざ2チャンネル分で受信する意味は ないのです。実際、 拙作のffmpegARIB対応版でPATダンプすると....
# ffmpeg -i /mnt/ts/110718/11071819_Ch20.ts (省略) Duration: N/A, start: 92714.560144, bitrate: N/A Program 23608 TOKYO MX1 Program 23609 TOKYO MX2 Program 23615 TOKYO MX臨時 Program 23992 MXワンセグ1 Program 23993 MXワンセグ2
このように(フルセグを含めた)複数サービス(プログラム)が記載 されてることがわかると思います。この番号は、よほど編成が代わらない限りは局ごとに不変ですから、
# dumpeit -fhd 23993 ....
というように指定することで、プログラムを排他選択できるようにした、ということです。まあ予想通り動けばの話ですが。