/dev/vbi is not a raw device

OP1234
2009-07-12
2012-11-15
  • OP1234

    OP1234 - 2009-07-12

    I'm using the HVR 900 driven by an analog TV (cable) signal. Using nxtveg 2.8.1 I get the error:

    Failed to open the VBI (i.e. teletext) device:
    /dev/vbi1 (Hauppauge WinTV HVR 900 (R2)) ist kein VBI-Gerät.

    or even using zvbi osc:

    $ osc -d /dev/vbi1
    Cannot capture vbi data with v4l interface:
    /dev/vbi1 (Hauppauge WinTV HVR 900 (R2)) is not a raw vbi device.
    VBI read error: 11, Resource temporarily unavailable

    The devices video1 and vbi1 exist, analog TV I can watch using e.g. xawtv. video0 etc. are used by another card.

    Is there no support for vbi on this Tuner em28xxx? Or does something gone wrong?

    Here /var/log/messages:

    Jul 12 19:19:00 htpc kernel: [   90.256014] usb 1-3: new high speed USB device using ehci_hcd and address 3
    Jul 12 19:19:00 htpc kernel: [   90.393493] usb 1-3: configuration #1 chosen from 1 choice
    Jul 12 19:19:00 htpc kernel: [   90.413437] em28xx v4l2 driver version 0.1.0 loaded
    Jul 12 19:19:00 htpc kernel: [   90.413470] em28xx Doesn't have usb audio class
    Jul 12 19:19:00 htpc kernel: [   90.413472] em28xx #0: Alternate settings: 8
    Jul 12 19:19:00 htpc kernel: [   90.413473] em28xx #0: Alternate setting 0, max size= 0
    Jul 12 19:19:00 htpc kernel: [   90.413475] em28xx #0: Alternate setting 1, max size= 0
    Jul 12 19:19:00 htpc kernel: [   90.413476] em28xx #0: Alternate setting 2, max size= 1448
    Jul 12 19:19:00 htpc kernel: [   90.413478] em28xx #0: Alternate setting 3, max size= 2048
    Jul 12 19:19:00 htpc kernel: [   90.413479] em28xx #0: Alternate setting 4, max size= 2304
    Jul 12 19:19:00 htpc kernel: [   90.413481] em28xx #0: Alternate setting 5, max size= 2580
    Jul 12 19:19:00 htpc kernel: [   90.413482] em28xx #0: Alternate setting 6, max size= 2892
    Jul 12 19:19:00 htpc kernel: [   90.413484] em28xx #0: Alternate setting 7, max size= 3072
    Jul 12 19:19:00 htpc kernel: [   90.413707] em28xx #0: chip ID is em2882/em2883
    Jul 12 19:19:00 htpc kernel: [   90.576956] tuner' 7-0061: chip found @ 0xc2 (em28xx #0)
    Jul 12 19:19:00 htpc kernel: [   90.609078] em28xx #0: i2c eeprom 00: 1a eb 67 95 40 20 02 65 d0 12 5c 03 82 1e 6a 18
    Jul 12 19:19:00 htpc kernel: [   90.609087] em28xx #0: i2c eeprom 10: 00 00 24 57 66 07 01 00 00 00 00 00 00 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609094] em28xx #0: i2c eeprom 20: 46 00 01 00 f0 10 02 00 b8 00 00 00 5b e0 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609102] em28xx #0: i2c eeprom 30: 00 00 20 40 20 6e 02 20 10 01 01 01 00 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609109] em28xx #0: i2c eeprom 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609117] em28xx #0: i2c eeprom 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609124] em28xx #0: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 18 03 34 00 30 00
    Jul 12 19:19:00 htpc kernel: [   90.609131] em28xx #0: i2c eeprom 70: 33 00 30 00 34 00 36 00 36 00 34 00 39 00 37 00
    Jul 12 19:19:00 htpc kernel: [   90.609138] em28xx #0: i2c eeprom 80: 00 00 1e 03 57 00 69 00 6e 00 54 00 56 00 20 00
    Jul 12 19:19:00 htpc kernel: [   90.609146] em28xx #0: i2c eeprom 90: 48 00 56 00 52 00 2d 00 39 00 30 00 30 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609153] em28xx #0: i2c eeprom a0: 84 12 00 00 05 50 1a 7f d4 78 23 fa fd d0 38 89
    Jul 12 19:19:00 htpc kernel: [   90.609160] em28xx #0: i2c eeprom b0: ff 00 00 00 04 84 0a 00 01 01 20 77 00 40 c1 09
    Jul 12 19:19:00 htpc kernel: [   90.609168] em28xx #0: i2c eeprom c0: 3c f0 74 02 01 00 01 79 34 00 00 00 00 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609175] em28xx #0: i2c eeprom d0: 84 12 00 00 05 50 1a 7f d4 78 23 fa fd d0 38 89
    Jul 12 19:19:00 htpc kernel: [   90.609183] em28xx #0: i2c eeprom e0: ff 00 00 00 04 84 0a 00 01 01 20 77 00 40 c1 09
    Jul 12 19:19:00 htpc kernel: [   90.609190] em28xx #0: i2c eeprom f0: 3c f0 74 02 01 00 01 79 34 00 00 00 00 00 00 00
    Jul 12 19:19:00 htpc kernel: [   90.609198] EEPROM ID= 0x9567eb1a, hash = 0xc5bf33dd
    Jul 12 19:19:00 htpc kernel: [   90.609200] Vendor/Product ID= 2040:6502
    Jul 12 19:19:00 htpc kernel: [   90.609201] AC97 audio (5 sample rates)
    Jul 12 19:19:00 htpc kernel: [   90.609202] 500mA max power
    Jul 12 19:19:00 htpc kernel: [   90.609203] Table at 0x24, strings=0x1e82, 0x186a, 0x0000
    Jul 12 19:19:00 htpc kernel: [   90.610240] tveeprom 7-0050: Hauppauge model 65018, rev B3C0, serial# 3934657
    Jul 12 19:19:00 htpc kernel: [   90.610242] tveeprom 7-0050: tuner model is Xceive XC3028 (idx 120, type 71)
    Jul 12 19:19:00 htpc kernel: [   90.610245] tveeprom 7-0050: TV standards PAL(B/G) PAL(I) PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xd4)
    Jul 12 19:19:00 htpc kernel: [   90.610247] tveeprom 7-0050: audio processor is None (idx 0)
    Jul 12 19:19:00 htpc kernel: [   90.610248] tveeprom 7-0050: has radio
    Jul 12 19:19:00 htpc kernel: [   90.687269] xc2028 7-0061: creating new instance
    Jul 12 19:19:00 htpc kernel: [   90.687272] xc2028 7-0061: type set to XCeive xc2028/xc3028 tuner
    Jul 12 19:19:00 htpc kernel: [   90.687278] i2c-adapter i2c-7: firmware: requesting xc3028-v27.fw
    Jul 12 19:19:00 htpc kernel: [   90.691047] xc2028 7-0061: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
    Jul 12 19:19:00 htpc kernel: [   90.748006] xc2028 7-0061: Loading firmware for type=BASE MTS (5), id 0000000000000000.
    Jul 12 19:19:01 htpc kernel: [   91.641311] xc2028 7-0061: Loading firmware for type=MTS (4), id 000000000000b700.
    Jul 12 19:19:01 htpc kernel: [   91.655682] xc2028 7-0061: Loading SCODE for type=MTS LCD NOGD MONO IF SCODE HAS_IF_4500 (6002b004), id 000000000000b700.
    Jul 12 19:19:02 htpc kernel: [   91.932427] tvp5150 7-005c: tvp5150am1 detected.
    Jul 12 19:19:02 htpc kernel: [   92.081249] em28xx #0: V4L2 device registered as /dev/video1 and /dev/vbi1
    Jul 12 19:19:02 htpc kernel: [   92.081252] em28xx #0: Found Hauppauge WinTV HVR 900 (R2)
    Jul 12 19:19:02 htpc kernel: [   92.081274] usbcore: registered new interface driver em28xx
    Jul 12 19:19:02 htpc kernel: [   92.087489] em28xx-audio.c: probing for em28x1 non standard usbaudio
    Jul 12 19:19:02 htpc kernel: [   92.087491] em28xx-audio.c: Copyright (C) 2006 Markus Rechberger
    Jul 12 19:19:02 htpc kernel: [   92.087758] Em28xx: Initialized (Em28xx Audio Extension) extension
    Jul 12 19:19:02 htpc kernel: [   92.204423] tvp5150 7-005c: tvp5150am1 detected.

    and

    $ lsmod |grep -i em28
    em28xx_alsa            17800  0
    em28xx                 81452  1 em28xx_alsa
    videobuf_vmalloc       16004  1 em28xx
    videobuf_core          29828  2 em28xx,videobuf_vmalloc
    ir_common              56068  1 em28xx
    snd_pcm                99336  3 em28xx_alsa,snd_hda_intel,snd_pcm_oss
    compat_ioctl32         18304  2 em28xx,ivtv
    snd                    78792  10 em28xx_alsa,snd_hda_intel,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
    videodev               45184  5 em28xx,msp3400,tuner,ivtv,compat_ioctl32
    tveeprom               23428  2 em28xx,ivtv

    em28xx-dvb is'nt loaded which is imo correct. Maybe useful:

    $ lsb_release -a
    No LSB modules are available.
    Distributor ID:    Ubuntu
    Description:    Ubuntu 9.04
    Release:    9.04
    Codename:    jaunty

    How can I get nxtvepg get running?

    Thanks
    Olaf

     
    • Tom Zoerner

      Tom Zoerner - 2009-07-12

      The em28xx driver apparently only supports VIDIOC_G_SLICED_VBI_CAP, but not V4L2_CAP_VBI_CAPTURE (i.e. raw VBI capture.) The "sliced" API is currently supported neither by nxtvepg, nor by any other open source application, according to google code search.

      Maybe you can add support for this API to nxtvepg or libzvbi yourself? The documentation is here: http://v4l2spec.bytesex.org/spec-single/v4l2.html

      -tom

       
      • OP1234

        OP1234 - 2009-07-13

        Why doesn't have the em28xx driver apparently only VIDIOC_G_SLICED_VBI_CAP, but not V4L2_CAP_VBI_CAPTURE ?? Is there a reason? The former seems to be even more complicated. Further more, I have more experience in C++ as in plain C.

        How much time I would spend on writing "sliced" API for nxtvepg or even VBI (raw) capture for  the em28xx driver ? Does exist some reference implementatins on the later one?

        Olaf

         
        • Tom Zoerner

          Tom Zoerner - 2009-07-14

          > only VIDIOC_G_SLICED_VBI_CAP, but not V4L2_CAP_VBI_CAPTURE ??
          > Is there a reason?

          Probably because raw data requires about 50 times more bandwidth compared to the already digitized "sliced" data (apx. 2000 bytes per raw VBI scan line compared to apx. 15 - 45 bytes for VPS, teletext packets, etc.)

          > How much time I would spend on writing "sliced" API for nxtvepg
          > Does exist some reference implementatins

          This would probably take me no more than a few days (assuming the driver actually works - who knows if this was ever tested.) No idea how long it would take you.  As I said, I didn't find any application supporting this capture mode yet, but you can google once more for yourself.

          > or even VBI (raw) capture for  the em28xx driver?

          Do you have documentation for the device? Does the hardware even support transferring raw data to the host?  A good starting place is the cideo4linux mailing list http://www.redhat.com/mailman/listinfo/video4linux-list

          -tom

           
      • OP1234

        OP1234 - 2009-07-13

        Why doesn't have the em28xx driver apparently only VIDIOC_G_SLICED_VBI_CAP, but not V4L2_CAP_VBI_CAPTURE ?? Is there a reason? The former seems to be even more complicated. Further more, I have more experience in C++ as in plain C.

        How much time I would spend on writing "sliced" API for nxtvepg or even VBI (raw) capture for  the em28xx driver ? Does exist some reference implementatins on the later one?

        Olaf

         

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks