diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2006-12-20 04:50:18 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-02-21 10:34:14 -0500 |
commit | d84e2bdca6e168557639b29c9244cbcf2500fe21 (patch) | |
tree | 99114140c76dc665b8abd9791308062efe03fadc /Documentation/video4linux | |
parent | 75558ab92dc95c3b5a99df7c77e95a6e8484e05c (diff) |
V4L/DVB (4987): Improve cx2341x documentation
Document the program index table format, removed unused interrupt documentation
and improve the documentation regarding the audio mode (stereo/joint/dual/mono).
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'Documentation/video4linux')
-rw-r--r-- | Documentation/video4linux/cx2341x/fw-decoder-api.txt | 2 | ||||
-rw-r--r-- | Documentation/video4linux/cx2341x/fw-encoder-api.txt | 24 | ||||
-rw-r--r-- | Documentation/video4linux/cx2341x/fw-memory.txt | 4 |
3 files changed, 21 insertions, 9 deletions
diff --git a/Documentation/video4linux/cx2341x/fw-decoder-api.txt b/Documentation/video4linux/cx2341x/fw-decoder-api.txt index 1345d267c5fc..8c317b7a4fc9 100644 --- a/Documentation/video4linux/cx2341x/fw-decoder-api.txt +++ b/Documentation/video4linux/cx2341x/fw-decoder-api.txt | |||
@@ -236,7 +236,7 @@ Description | |||
236 | Setup firmware to notify the host about a particular event. | 236 | Setup firmware to notify the host about a particular event. |
237 | Counterpart to API 0xD5 | 237 | Counterpart to API 0xD5 |
238 | Param[0] | 238 | Param[0] |
239 | Event: 0=Audio mode change between stereo and dual channel | 239 | Event: 0=Audio mode change between mono, (joint) stereo and dual channel. |
240 | Event: 3=Decoder started | 240 | Event: 3=Decoder started |
241 | Event: 4=Unknown: goes off 10-15 times per second while decoding. | 241 | Event: 4=Unknown: goes off 10-15 times per second while decoding. |
242 | Event: 5=Some sync event: goes off once per frame. | 242 | Event: 5=Some sync event: goes off once per frame. |
diff --git a/Documentation/video4linux/cx2341x/fw-encoder-api.txt b/Documentation/video4linux/cx2341x/fw-encoder-api.txt index 2412718c3d0b..fe02bdb84598 100644 --- a/Documentation/video4linux/cx2341x/fw-encoder-api.txt +++ b/Documentation/video4linux/cx2341x/fw-encoder-api.txt | |||
@@ -322,9 +322,7 @@ Param[0] | |||
322 | '01'=JointStereo | 322 | '01'=JointStereo |
323 | '10'=Dual | 323 | '10'=Dual |
324 | '11'=Mono | 324 | '11'=Mono |
325 | Note: testing seems to indicate that Mono and possibly | 325 | Note: the cx23415 cannot decode Joint Stereo properly. |
326 | JointStereo are not working (default to stereo). | ||
327 | Dual does work, though. | ||
328 | 326 | ||
329 | 10:11 Mode Extension used in joint_stereo mode. | 327 | 10:11 Mode Extension used in joint_stereo mode. |
330 | In Layer I and II they indicate which subbands are in | 328 | In Layer I and II they indicate which subbands are in |
@@ -403,16 +401,34 @@ Name CX2341X_ENC_SET_PGM_INDEX_INFO | |||
403 | Enum 199/0xC7 | 401 | Enum 199/0xC7 |
404 | Description | 402 | Description |
405 | Sets the Program Index Information. | 403 | Sets the Program Index Information. |
404 | The information is stored as follows: | ||
405 | |||
406 | struct info { | ||
407 | u32 length; // Length of this frame | ||
408 | u32 offset_low; // Offset in the file of the | ||
409 | u32 offset_high; // start of this frame | ||
410 | u32 mask1; // Bits 0-1 are the type mask: | ||
411 | // 1=I, 2=P, 4=B | ||
412 | u32 pts; // The PTS of the frame | ||
413 | u32 mask2; // Bit 0 is bit 32 of the pts. | ||
414 | }; | ||
415 | u32 table_ptr; | ||
416 | struct info index[400]; | ||
417 | |||
418 | The table_ptr is the encoder memory address in the table were | ||
419 | *new* entries will be written. Note that this is a ringbuffer, | ||
420 | so the table_ptr will wraparound. | ||
406 | Param[0] | 421 | Param[0] |
407 | Picture Mask: | 422 | Picture Mask: |
408 | 0=No index capture | 423 | 0=No index capture |
409 | 1=I frames | 424 | 1=I frames |
410 | 3=I,P frames | 425 | 3=I,P frames |
411 | 7=I,P,B frames | 426 | 7=I,P,B frames |
427 | (Seems to be ignored, it always indexes I, P and B frames) | ||
412 | Param[1] | 428 | Param[1] |
413 | Elements requested (up to 400) | 429 | Elements requested (up to 400) |
414 | Result[0] | 430 | Result[0] |
415 | Offset in SDF memory of the table. | 431 | Offset in the encoder memory of the start of the table. |
416 | Result[1] | 432 | Result[1] |
417 | Number of allocated elements up to a maximum of Param[1] | 433 | Number of allocated elements up to a maximum of Param[1] |
418 | 434 | ||
diff --git a/Documentation/video4linux/cx2341x/fw-memory.txt b/Documentation/video4linux/cx2341x/fw-memory.txt index 0cf24918c9fc..d445e457fc1b 100644 --- a/Documentation/video4linux/cx2341x/fw-memory.txt +++ b/Documentation/video4linux/cx2341x/fw-memory.txt | |||
@@ -123,12 +123,8 @@ Bit | |||
123 | 29 Encoder VBI capture | 123 | 29 Encoder VBI capture |
124 | 28 Encoder Video Input Module reset event | 124 | 28 Encoder Video Input Module reset event |
125 | 27 Encoder DMA complete | 125 | 27 Encoder DMA complete |
126 | 26 | ||
127 | 25 Decoder copy protect detection event | ||
128 | 24 Decoder audio mode change detection event (through event notification) | 126 | 24 Decoder audio mode change detection event (through event notification) |
129 | 23 | ||
130 | 22 Decoder data request | 127 | 22 Decoder data request |
131 | 21 Decoder I-Frame? done | ||
132 | 20 Decoder DMA complete | 128 | 20 Decoder DMA complete |
133 | 19 Decoder VBI re-insertion | 129 | 19 Decoder VBI re-insertion |
134 | 18 Decoder DMA err (linked-list bad) | 130 | 18 Decoder DMA err (linked-list bad) |