2006年09月07日

Write Parameters Page

MODE SENSE で所得し、MODE SELECT で変更できる Write Parameters Page では、 ±R/Wメディアへの書き込みの設定を扱います。

Write Parameters Page のデータフォーマットは次の通りです。

BYTE\bit 7 6 5 4 3 2 1 0
0PS予約Page Code = 0x05
1データ長さ = 0x32
2予約BUFELS_VTest WriteWrite Type
3Multi-sessionFPCopyTrack Mode
4予約Data Block Type
5Link Size
6予約
7予約Initiator Application Code
8Session Format
9予約
10
(MSB)
Packet Size
 
(LSB)
11
12
13
14
(MSB)
Audio Pause Length
(LSB)
16
17
(MSB)
Media Catalog Number
(LSB)
31
32
(MSB)
International Standard Recording Code
(LSB)
47
48Sub-header Byte 0
49Sub-header Byte 1
50Sub-header Byte 2
51Sub-header Byte 3
52
 
Vendor Specific
 
55


BUFE を1に設定すると、バッファアンダーランを防止します。 (CD Manipulator のソースコードをみる限りではこの表現で正しいと思うのだが、 MMCの英文を眺めているとひょっとして間違っているのではないかと不安になってきた。)

Write Type は以下の通りです

Write Type方法備考
0x00Packet/Incremental使ったことがない…
0x01Track At Once
トラックアットワンス
DVDは不可。
使ったことがない…
0x02Session At Once
セッションアットワンス
リードインからリードアウトまで通して記録する方法。 リードインは最初のデータエリアを書き込むよう指示したときに、 リードアウトは最後のデータエリアを書き込んだ後で直ぐに書き込まれる。 DVD では Disc at Once (ディスクアットワンス)ともいう。
0x03RAWCDでリードインやリードアウト、 サブチャネルまでドライブ(ドライバーもしくはファームウェア)に任せず 自分で(プログラム側で)指定する場合に用いる。 DVDは不可
0x04Layer Jump Recording使ったことがない…


Test Write を1に設定すると、書き込みテストを行います、が、 CD では Track at Once か Session at Once、 DVD では Incremental か Disc-at-once でしか動作しません。

ほかにも多くのパラメータがありますが、 その多くはデータをトラック毎、もしくは追記して書き込むための方法だと思われます。 CDの Session At Once の場合は書き込みを開始する前に別のコマンド(SEND CUE SHEET)で トラック毎に指定します。 また、CDの RAWモードで書き込む場合は、 各セクタを書き込むときに逐一指定する(と同じ)ことになります。 DVD は情報不足ですが、多分ほとんど制御できません。 デフォルトのまま送っておけば大丈夫でしょう。

気になるのは、LS_V (Link Size Valid) と Link Size あたりですが…。
posted by 七癖 at 10:19| Comment(0) | TrackBack(0) | Multimedia Commands | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。