Hi everyone. I've been communicating through the V4L mailing lists about getting VBI support through the hardware encoder of cx88 blackbird devices. I learned that there is no such support, and I'm wondering what the current status is for VBI support in the IVTV drivers.
I've read from posts dated back to 2005 that there is unreliable support for VBI in hardware cards such as the pvr 350. I'm wondering if the process that you've used to get support would work for cx88 blackbird devices. I determined that support didn't exist for embedding VBI in the stream of cx88-blackbird devices with your v4l2-ctl program. When I used the same steps as was described here: http://www.gossamer-threads.com/lists/ivtv/devel/37060?page=last I learned that "stream_vbi_format" only accepts a value of "0" I'll include past emails below for review. I know it's a lot of reading. Sorry. Thank you very much, Sam Logen Sam Logen wrote: > I came across directions for querying all available > info from PVR cards with the utility 'v4l2-ctl' from > the ivtv driver package. > > (By the way, this is all NTSC, USA) > > So I downloaded the svn trunk, and built the > 'v4l2-ctl' utility. Please check the results below > (Note the VBI sections). > > For my DViCO FusionHDTV5 RT card - capable of > displaying Closed Captioning in Mythtv > > ./v4l2-ctl --all -d /dev/v4l/video0 > Driver Info: > Driver name : cx8800 > Card type : DViCO FusionHDTV 5 Gold > Bus info : PCI:0000:04:08.0 > Driver version: 6 > Capabilities : 0x05010011 > Video Capture > VBI Capture << Note this > Tuner > Read/Write > Streaming > Format Video Capture: > Width/Height : 320/240 > Pixel Format : BGR3 > Field : Interlaced > Bytes per Line: 960 > Size Image : 230400 > Colorspace : Unknown (00000000) > Format VBI Capture: > Sampling Rate : 28636363 Hz > Offset : 244 samples (8.52064e-06 > secs after leading edge) > Samples per Line: 2048 > Sample Format : GREY > Start 1st Field : 10 > Count 1st Field : 17 > Start 2nd Field : 273 > Count 2nd Field : 17 > Video input : 0 (Television) > Frequency: 0 (0.000000 MHz) > Video Standard = 0x00001000 > NTSC-M > Tuner: > Capabilities : 62.5 kHz multi-standard > Frequency range : 0.0 MHz - 268435455.9 > MHz > Signal strength : 0% > Current audio mode : mono > Available subchannels: > > > > For my Avermedia M150-D card - unable to view Closed > Captioning while card is in Hardware encoder mode. > > ./v4l2-ctl --all -d /dev/v4l/video2 > Driver Info: > Driver name : cx88_blackbird > Card type : ASUS PVR-416 > Bus info : PCI:0000:04:0a.2 > Driver version: 6 > Capabilities : 0x05010001 > Video Capture > Tuner \> Read/Write > Streaming > Format Video Capture: > Width/Height : 720/480 > Pixel Format : MPEG > Field : Interlaced > Bytes per Line: 0 > Size Image : 0 > Colorspace : Unknown (00000000) > Video input : 0 (Television) > Frequency: 7796 (487.250000 MHz) > Video Standard = 0x00003000 > NTSC-M/M-JP > Tuner: > Capabilities : 62.5 kHz multi-standard > Frequency range : 0.0 MHz - 268435455.9 > MHz > Signal strength : 100% > Current audio mode : mono > Available subchannels: > > > This suggests that embedded VBI, and hence Closed > captioning streaming is not supported with this > device/driver. If you run the v4l2-ctl on the video device instead of the mpeg device (of the same card, probably /dev/v4l/video1 in your case), you will see a 'VBI' part for that same card. How would VBI pixels be 'embedded' in MPEG compressed video anyway? In compressed video, there are no pixels, lines, or samples for the VBI samples to be embedded in... Jelle. > > plus, in the VIDIOC_S_EXT_CTRLS, stream_vbi_format > only accepts a value of 0 (off) > > It'd have been nice to have been told of this lack of > support a long time ago. > > Is this support being worked on currently? > > Much regards, > Sam > > Well, I'm no expert on this, but it seems that something in the driver tells the card to embed the vbi stream. I saw a post where people use a few commands to switch on/off this embedding for a pvr-350 http://www.gossamer-threads.com/lists/ivtv/devel/37060?page=last As for /dev/v4l/video1, that has no reliance on the blackbird driver, and mythtv anyway doesn't make the connection that they are one and the same card. I think what is missing is sliced vbi support. See section 4.8 of this website http://www.linuxtv.org/downloads/video4linux/API/V4L2_API/spec-single/v4l2.html It states that V4L2 drivers are supposed to tell the hardware to demodulate the VBI, instead of doing it in software. I don't know, maybe I'm up a wrong tree with this. Sam Sam Logen wrote: > I do appreciate your help and input with this, Jelle. > I wish we could get more input on this topic from the > developers. That is kinda why I've been broadcasting > on the V4L lists. Maybe I'll check with the IVTV > developers. Devices couldn't possibly handle VBI too > differently, could they? > I wouldn't be surprised if it's the same as in the ivtv driver, because the only relevant difference between ivtv and blackbird for the mpeg encoder is that in ivtv, the mpeg encoder is directly on the PCI bus, and in blackbird it's attached to a the cx23880x on the 'mpegport' bus and 'transportstream' interface. So if the encoder can be told to insert vbi data into the mpeg-stream, then the api calls to do so are the same for both configurations... However, if in ivtv the vbi is sent on a separate dma channel, then that won't be possible in the blackbird configuration (because the encoder can only output the 'transport stream'), so in that case the driver would probably have to somehow use the vbi capabilities of the cx23880x chip to provide vbi to the blackbird device... Jelle.. ____________________________________________________________________________________ Be a better sports nut! Let your teams follow you with Yahoo Mobile. Try it now. http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ _______________________________________________ ivtv-devel mailing list [email protected] http://ivtvdriver.org/mailman/listinfo/ivtv-devel
