Allegro Moderatoな日常

PC、音楽、食事など、その時はまっている事柄についてそこはかとなく。

ネットプリント

突然にプリントアウトの必要に迫られたのですが…
家のプリンタは目詰まりしたままずっと放置していたので、ちゃんと印刷できるか微妙です。
で…セブンイレブンのネットプリントサービスを利用してみました。

net print

印刷の手順はとても簡単です。

1) 印刷したいファイルをサーバにアップして8桁の登録番号を得る。
2) セブンイレブンへ行く。
3) マルチコピー機のタッチパネルでネットプリントを選び、8桁の登録番号を入力。
4) お金(白黒20円/枚、カラー60円/枚)を投入。

ちなみに全国のセブンイレブンのどこでも印刷できます。

近くにセブンイレブンがあり、年に数回しか印刷しないような人にはかなり便利かも。
印刷結果は綺麗ですし、インク交換や紙補充等のメンテナンスがいらないですし。

プリンターを捨てようと思いましたw

PATの解析

前回の追記に貼り付けたtss.pyの説明をおりまぜながら、PATの解析の話をば。

mpeg2tsは、TSパケットと呼ばれる188バイトのデータの羅列でできています。
その中でも、まず一番最初に参照しなければならないのが、PATとよばれるTSパケットです。

実際にPATを見てみると…
PAT1
こんな感じになってます。
TSパケットの先頭4バイトはTSヘッダーと呼ばれています。
PATの中身のデータは6バイト以降の水色でくくった部分で、
それ以外の不要部分は0xFFで埋められています。

PAT2
TSヘッダーの最先頭には同期ワード0x47が必ず入っていて、本来これを
基準にパケットの先頭位置を特定します。が、b25の出力後のデータは、
そこまでの処理のどこかで同期がとられていて、必ずTSパケットの先頭から出力されるようなので、
tss.pyには同期処理が入っていません。

2バイト、3バイト目はそのTSパケットの素性を現すID(PID)が入っています。
2バイト目を上位、3バイト目を下位として、下位から13ビットを取り出すとPIDになります。
ちなみにPATのPIDは0x0000と決まっています。(0x6000 & 0x1FFF = 0x0000)

4バイト目の下位4bitは巡回カウンタになっており、この次のPATでは0x5にカウントアップしています。
このカウンタ値が不連続になっていた場合、パケットの欠落があったことがわかります。

PATデータの中身を見ていきましょう。
PAT3
AV-LS300DWで再生できるようにするためにいじらなければならないのは、
?PMT情報、?セクション長、?CRCの3箇所です。

TSにはハイビジョンやワンセグなど複数の映像が多重されていますが、
それぞれの映像はPMTとよばれるTSパケットで管理されています。
このPMTのPIDは固有の値ではないので、どこかに記録されていないと判別できません。
そのPMTのPIDが記録されている部分が、PAT内の?PMT情報です。

PMT情報は4バイトでひとまとまりになっています。
上のPATの例では、3つのPMTがあり、3つの映像が多重されていることがわかります。
3バイト目を上位、4バイト目を下位として、下位から13ビットを取り出すとPIDになります。
上の例の3番目のPMT情報を例にとると、3、4バイト目は0xFFC8で、下位13ビットをとりだせば、
このPMTのPIDは0xFFC8 & 0x1FFF = 0x1FC8となります。
(ちなみに0x1FC8だけはワンセグと決まっているらしいです。)

しかし…AV-LS300DWは、PATに複数のPMT情報があると、なぜか映像を再生してくれません。
ということで、ハイビジョンのPMT情報1つだけ残します。
ハイビジョンかどうかの判定は、本来PMTを見て判別すべきなのかもしれませんが…
tss.pyでは先頭のPMT情報のみ残すようにしています。これでいままでのところは問題ありません。

?のセクション長は、その次のバイトからCRCの終わりまでのバイト数が書かれています。
当然PAT情報が減っているので、このセクション長も減らす必要があります。
セクション長は12ビットありますが、PATが255バイトを超えるようなことは無さそうなので、
tss.pyでは0x19を0x11に書きかえています。

最後に?CRCを計算しなおします。
CRCへはPATデータの頭からPMT情報のお尻までを入力します。
CRCの仕様は一般的なCCITTの32ビットCRCです。
詳細は以下の付録Bにかかれています(チェック側ですが)。

■ 参考文献
ARIB標準規格:デジタル放送に使用する番組配列情報
http://www.arib.or.jp/english/html/overview/doc/2-STD-B10v4_6.pdf

???を書き換えると、最終的に↓のようになります。
PAT4
後はこれを、全PATに対して差し替えればいいのですが、TSヘッダーの巡回カウンタ値は
保存しなければならないので、書き換えないようにご注意を。

次回はPMTの解析の話でも。

その場でマーチ

噂のコアリズムをちょっとやってみましたが…

とにかく難しい!

動きを覚えるので必死…
ブートキャンプ以上に、他人にやっているところを見られたくありませんw

でも、ほとんどできて無くてもそれなりに動くので、
いい運動になっているようです。結構汗をかきました。

基本編は40分程度で、ブートキャンプで言えば応用編と同じくらいの長さ。
一般的には丁度いい長さでしょう。(精鋭には物足りないかもw)

オートホーン

最近、クラクションのパッドに軽く触れただけで音が鳴るようになっていたのですが…
とうとう、下り坂できつめにブレーキを踏んだだけで鳴るようになってしまいました…w
車の荷重が前にかかるとなるのか、ハンドルに私の体重がかかるとなるのか。
よくわかりません。

とてもポジティブに考えれば、自動で危険を知らせてくれてこりゃ便利!なんですが…

…そのうち鳴り止まなくなったらどうしようw

パパでちゅよ〜〜

ぱぱでちゅよー
…いえいえ、隠し子ではありませんw

先週末は、提督の3人目のお子さんを見にいってきました。
提督の家へおじゃまするのは実に5年ぶり。
一番上の、5歳のおねぇーちゃんもまだ誕生していなかったんですよねー。
自分の中では時の流れはほとんど止まっているのですが…5年の
月日というものを実感しました。

それにしても、赤ちゃんはかわいい。
抱かせてもらったらより一層で…自然に、
「パパでちゅよ〜〜」
と話しかけてましたw

 | HOME |  »

Calendar

08 | 2008-09 | 10
S M T W T F S
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 - - - -

Categories

Recent Comments

Profile

son

son

ババ〜〜トリック♪

Monthly

Recent Entries

Recent Trackbacks

Appendix

顔文字教室

DTIブログポータルへ
このブログを通報
Report Abuse