aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx18
diff options
context:
space:
mode:
authorAndy Walls <awalls@radix.net>2008-12-14 17:21:35 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-12-30 06:39:07 -0500
commitaafc77066f4cc8b6de4af1a7d643c9646e19bad9 (patch)
tree0db630a699bf8c73d93768e77144273ba65ab5a6 /drivers/media/video/cx18
parent0ef0289264e8f278312909f1639a7764cc9cf580 (diff)
V4L/DVB (9892): cx18: VBI comment corrections and comments about VBI issues
VBI comment corrections to avoid future confusion about standards. Comments on cx18 VBI implementation shortcomings that need resolution. Signed-off-by: Andy Walls <awalls@radix.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx18')
-rw-r--r--drivers/media/video/cx18/cx18-driver.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/drivers/media/video/cx18/cx18-driver.c b/drivers/media/video/cx18/cx18-driver.c
index 863ebf06a829..d7baf1b97cb8 100644
--- a/drivers/media/video/cx18/cx18-driver.c
+++ b/drivers/media/video/cx18/cx18-driver.c
@@ -609,18 +609,21 @@ static int __devinit cx18_init_struct1(struct cx18 *cx)
609 * We use a BT.656 pxiel clock of 13.5 MHz and a BT.656 active line 609 * We use a BT.656 pxiel clock of 13.5 MHz and a BT.656 active line
610 * length of 720 pixels @ 4:2:2 sampling. Thus... 610 * length of 720 pixels @ 4:2:2 sampling. Thus...
611 * 611 *
612 * For NTSC: 612 * For systems that use a 15.734 kHz horizontal rate, such as
613 * NTSC-M, PAL-M, PAL-60, and other 60 Hz/525 line systems, we have:
613 * 614 *
614 * (1/15,734 kHz) * 2 * 13.5 MHz = 1716 samples/line = 615 * (1/15.734 kHz) * 2 * 13.5 MHz = 1716 samples/line =
615 * 4 bytes SAV + 268 bytes anc data + 4 bytes SAV + 1440 active samples 616 * 4 bytes SAV + 268 bytes anc data + 4 bytes SAV + 1440 active samples
616 * 617 *
617 * For PAL: 618 * For systems that use a 15.625 kHz horizontal rate, such as
619 * PAL-B/G/H, PAL-I, SECAM-L and other 50 Hz/625 line systems, we have:
618 * 620 *
619 * (1/15,625 kHz) * 2 * 13.5 MHz = 1728 samples/line = 621 * (1/15.625 kHz) * 2 * 13.5 MHz = 1728 samples/line =
620 * 4 bytes SAV + 280 bytes anc data + 4 bytes SAV + 1440 active samples 622 * 4 bytes SAV + 280 bytes anc data + 4 bytes SAV + 1440 active samples
621 * 623 *
622 */ 624 */
623 625
626 /* FIXME: init these based on tuner std & modify when std changes */
624 /* CX18-AV-Core number of VBI samples output per horizontal line */ 627 /* CX18-AV-Core number of VBI samples output per horizontal line */
625 cx->vbi.raw_decoder_line_size = 1444; /* 4 byte SAV + 2 * 720 */ 628 cx->vbi.raw_decoder_line_size = 1444; /* 4 byte SAV + 2 * 720 */
626 cx->vbi.sliced_decoder_line_size = 272; /* 60 Hz: 268+4, 50 Hz: 280+4 */ 629 cx->vbi.sliced_decoder_line_size = 272; /* 60 Hz: 268+4, 50 Hz: 280+4 */
@@ -924,6 +927,11 @@ static int __devinit cx18_probe(struct pci_dev *dev,
924 } 927 }
925 cx->params.video_gop_size = cx->is_60hz ? 15 : 12; 928 cx->params.video_gop_size = cx->is_60hz ? 15 : 12;
926 929
930 /*
931 * FIXME: setting the buffer size based on the tuner standard is
932 * suboptimal, as the CVBS and SVideo inputs could use a different std
933 * and the buffer could end up being too small in that case.
934 */
927 vbi_buf_size = cx->vbi.raw_size * (cx->is_60hz ? 24 : 36) / 2; 935 vbi_buf_size = cx->vbi.raw_size * (cx->is_60hz ? 24 : 36) / 2;
928 cx->stream_buf_size[CX18_ENC_STREAM_TYPE_VBI] = vbi_buf_size; 936 cx->stream_buf_size[CX18_ENC_STREAM_TYPE_VBI] = vbi_buf_size;
929 937