diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2007-08-25 14:09:52 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-10-09 21:07:14 -0400 |
commit | effa0b08633122cc63d2b7f098434d359d5767ef (patch) | |
tree | da7c8adb8e011921df45d77c07bad85cb7927c52 /drivers/media/video/ivtv/ivtv-driver.h | |
parent | 2f3a98931f51be6093df7c6cc2633bf238778b7d (diff) |
V4L/DVB (6117): ivtv: finish VBI related cleanup
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/ivtv/ivtv-driver.h')
-rw-r--r-- | drivers/media/video/ivtv/ivtv-driver.h | 67 |
1 files changed, 40 insertions, 27 deletions
diff --git a/drivers/media/video/ivtv/ivtv-driver.h b/drivers/media/video/ivtv/ivtv-driver.h index 748ef66bd945..5400ccef4dfb 100644 --- a/drivers/media/video/ivtv/ivtv-driver.h +++ b/drivers/media/video/ivtv/ivtv-driver.h | |||
@@ -499,7 +499,8 @@ struct vbi_vps { | |||
499 | }; | 499 | }; |
500 | 500 | ||
501 | struct vbi_info { | 501 | struct vbi_info { |
502 | /* VBI general fixed card data */ | 502 | /* VBI general data, does not change during streaming */ |
503 | |||
503 | u32 raw_decoder_line_size; /* raw VBI line size from digitizer */ | 504 | u32 raw_decoder_line_size; /* raw VBI line size from digitizer */ |
504 | u8 raw_decoder_sav_odd_field; /* raw VBI Start Active Video digitizer code of odd field */ | 505 | u8 raw_decoder_sav_odd_field; /* raw VBI Start Active Video digitizer code of odd field */ |
505 | u8 raw_decoder_sav_even_field; /* raw VBI Start Active Video digitizer code of even field */ | 506 | u8 raw_decoder_sav_even_field; /* raw VBI Start Active Video digitizer code of even field */ |
@@ -507,27 +508,42 @@ struct vbi_info { | |||
507 | u8 sliced_decoder_sav_odd_field; /* sliced VBI Start Active Video digitizer code of odd field */ | 508 | u8 sliced_decoder_sav_odd_field; /* sliced VBI Start Active Video digitizer code of odd field */ |
508 | u8 sliced_decoder_sav_even_field; /* sliced VBI Start Active Video digitizer code of even field */ | 509 | u8 sliced_decoder_sav_even_field; /* sliced VBI Start Active Video digitizer code of even field */ |
509 | 510 | ||
510 | u32 dec_start; | 511 | u32 start[2]; /* start of first VBI line in the odd/even fields */ |
511 | u32 enc_start, enc_size; | 512 | u32 count; /* number of VBI lines per field */ |
512 | int fpi; | 513 | u32 raw_size; /* size of raw VBI line from the digitizer */ |
513 | u32 frame; | 514 | u32 sliced_size; /* size of sliced VBI line from the digitizer */ |
514 | struct vbi_cc cc_payload[256]; /* Sliced VBI CC payload array. It is an array to | 515 | |
516 | u32 dec_start; /* start in decoder memory of VBI re-insertion buffers */ | ||
517 | u32 enc_start; /* start in encoder memory of VBI capture buffers */ | ||
518 | u32 enc_size; /* size of VBI capture area */ | ||
519 | int fpi; /* number of VBI frames per interrupt */ | ||
520 | |||
521 | struct v4l2_format in; /* current VBI capture format */ | ||
522 | struct v4l2_sliced_vbi_format *sliced_in; /* convenience pointer to sliced struct in vbi.in union */ | ||
523 | int insert_mpeg; /* if non-zero, then embed VBI data in MPEG stream */ | ||
524 | |||
525 | /* Raw VBI compatibility hack */ | ||
526 | |||
527 | u32 frame; /* frame counter hack needed for backwards compatibility | ||
528 | of old VBI software */ | ||
529 | |||
530 | /* Sliced VBI output data */ | ||
531 | |||
532 | struct vbi_cc cc_payload[256]; /* sliced VBI CC payload array: it is an array to | ||
515 | prevent dropping CC data if they couldn't be | 533 | prevent dropping CC data if they couldn't be |
516 | processed fast enough. */ | 534 | processed fast enough */ |
517 | int cc_payload_idx; /* Index in cc_payload */ | 535 | int cc_payload_idx; /* index in cc_payload */ |
518 | u8 cc_missing_cnt; /* Counts number of frames without CC for passthrough mode */ | 536 | u8 cc_missing_cnt; /* counts number of frames without CC for passthrough mode */ |
519 | int wss_payload; /* Sliced VBI WSS payload */ | 537 | int wss_payload; /* sliced VBI WSS payload */ |
520 | u8 wss_missing_cnt; /* Counts number of frames without WSS for passthrough mode */ | 538 | u8 wss_missing_cnt; /* counts number of frames without WSS for passthrough mode */ |
521 | struct vbi_vps vps_payload; /* Sliced VBI VPS payload */ | 539 | struct vbi_vps vps_payload; /* sliced VBI VPS payload */ |
522 | struct v4l2_format in; | 540 | |
523 | /* convenience pointer to sliced struct in vbi_in union */ | 541 | /* Sliced VBI capture data */ |
524 | struct v4l2_sliced_vbi_format *sliced_in; | 542 | |
525 | int insert_mpeg; | 543 | struct v4l2_sliced_vbi_data sliced_data[36]; /* sliced VBI storage for VBI encoder stream */ |
526 | 544 | struct v4l2_sliced_vbi_data sliced_dec_data[36];/* sliced VBI storage for VBI decoder stream */ | |
527 | /* Buffer for the maximum of 2 * 18 * packet_size sliced VBI lines. | 545 | |
528 | One for /dev/vbi0 and one for /dev/vbi8 */ | 546 | /* VBI Embedding data */ |
529 | struct v4l2_sliced_vbi_data sliced_data[36]; | ||
530 | struct v4l2_sliced_vbi_data sliced_dec_data[36]; | ||
531 | 547 | ||
532 | /* Buffer for VBI data inserted into MPEG stream. | 548 | /* Buffer for VBI data inserted into MPEG stream. |
533 | The first byte is a dummy byte that's never used. | 549 | The first byte is a dummy byte that's never used. |
@@ -544,12 +560,9 @@ struct vbi_info { | |||
544 | This pointer array will allocate 2049 bytes to store each VBI frame. */ | 560 | This pointer array will allocate 2049 bytes to store each VBI frame. */ |
545 | u8 *sliced_mpeg_data[IVTV_VBI_FRAMES]; | 561 | u8 *sliced_mpeg_data[IVTV_VBI_FRAMES]; |
546 | u32 sliced_mpeg_size[IVTV_VBI_FRAMES]; | 562 | u32 sliced_mpeg_size[IVTV_VBI_FRAMES]; |
547 | struct ivtv_buffer sliced_mpeg_buf; | 563 | struct ivtv_buffer sliced_mpeg_buf; /* temporary buffer holding data from sliced_mpeg_data */ |
548 | u32 inserted_frame; | 564 | u32 inserted_frame; /* index in sliced_mpeg_size of next sliced data |
549 | 565 | to be inserted in the MPEG stream */ | |
550 | u32 start[2], count; | ||
551 | u32 raw_size; | ||
552 | u32 sliced_size; | ||
553 | }; | 566 | }; |
554 | 567 | ||
555 | /* forward declaration of struct defined in ivtv-cards.h */ | 568 | /* forward declaration of struct defined in ivtv-cards.h */ |