Crash when capturing to disk but not displaying

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Like several others on this list I've been running into trouble with an AVerTV
card (AVerTV Studio), but my system only crashes when capturing to disk. XawTV
is rock-solid stable with good picture quality, but as soon as I try anything
that involves saving to disk (xawtv capture, nuppelvideo, streamer, vcr) the
system has even odds of hard locking on the spot or during capture.

I've reproduced this in single-user mode with both NVdriver and agpgart
unloaded, so this has NOTHING to do with XFree86.

System specs: Celeron 850, 1G RAM, 440BX mobo, Linux 2.4.21-pre1 with V4L2 API
patches applied, on Debian sid. Video is NVidia GF2MX with 32MB RAM, NVidia's
1.0-3123 drivers, XFree86 4.2.1.1 and bttv 0.9.23 with the V4L2 patch to the
kernel.  I've also tried bttv 0.7.100 with similar results, as well as an
unpatched 2.4.21-pre1 (which I'm using now). Audio is alsa 0.9.0rc5 with
emu10k1.

The locking behavior is NOT a utter freeze of the system - the magic SysRq
commands still work, although syncing/remounting RO does not appear to trigger
any disk activity (so maybe this means a hang in bottom-half handling?). 

Other notes: 

- The 878 apparantly shares an interrupt with both the USB controller and the
  ACPI controller. 
- CPU usage is typically pretty minimal
- No kernel messages when the system hangs or any errors reported by the
  capture utility as far as I can tell. 
- Video input is via Composite1, audio bypasses the capture card entirely and
  is routed directly to the source (a digital cable box).
- Smaller capture resolutions appear to be more stable than resolutions closer
  to full NTSC - 640x480  consistenly crashes before it even gets off the
  ground - but 320x240 is still really touchy.
- I think some hangs may be triggered by disk access - I noticed that
  one otherwise fine capture hung when I opened up a sawfish root menu.
- I'm using alsa drivers but recording with OSS via compatibility layers.

Any suggestions on how to stabilize captures, or even looking harder at
specific configs I've already tried (ie v4l2), or debugging questions,
would be greatly appreciated.  I'm agonizingly close to getting this
running perfectly :)

Relevant kernel logs:

/sbin/modprobe bttv:

Linux video capture interface: v1.00
i2c-core.o: i2c core module
i2c-algo-bit.o: i2c bit algorithm module
bttv: driver version 0.7.96 loaded
bttv: using 4 buffers with 2080k (8320k total) for capture
bttv: Host bridge is Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge
bttv: Host bridge needs ETBF enabled.
bttv: Bt8xx card found (0).
PCI: Found IRQ 5 for device 00:09.0
PCI: Sharing IRQ 5 with 00:07.2
PCI: Sharing IRQ 5 with 00:09.1
bttv0: Bt878 (rev 17) at 00:09.0, irq: 5, latency: 32, mmio: 0xdb002000
bttv0: detected: AVerMedia TVPhone98 [card=41], PCI subsystem ID is 1461:0003
bttv0: using: BT878(AVerMedia TVPhone 98) [card=41,autodetected]
bttv0: enabling ETBF (430FX/VP3 compatibilty)
i2c-core.o: adapter bt848 #0 registered as adapter 0.
bttv0: Avermedia eeprom[0x4803]: tuner=2 radio:yes remote control:yes
bttv0: using tuner=2
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
tvaudio: TV audio decoder + audio/video mux driver
tvaudio: known chips: tda9840,tda9873h,tda9874h/a,tda9850,tda9855,tea6300,tea6420,tda8425,pic16c54 (PV951)
i2c-core.o: driver generic i2c audio driver registered.
i2c-core.o: driver i2c TV tuner driver registered.
tuner: probing bt848 #0 i2c adapter [id=0x10005]
tuner: chip found @ 0xc2
bttv0: i2c attach [client=Philips NTSC (FI1236 and compati,ok]
i2c-core.o: client [Philips NTSC (FI1236 and compati] registered to adapter [bt848 #0](pos. 0).
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: registered device radio0


cat /proc/pci:

PCI devices found:
  Bus  0, device   0, function  0:
    Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 2).
      Prefetchable 32 bit memory at 0xc0000000 [0xcfffffff].
  Bus  0, device   1, function  0:
    PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 2).
      Master Capable.  No bursts.  Min Gnt=136.
  Bus  0, device   7, function  0:
    ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 2).
  Bus  0, device   7, function  1:
    IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 1).
      I/O at 0xf000 [0xf00f].
  Bus  0, device   7, function  2:
    USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 1).
      IRQ 5.
      I/O at 0xd000 [0xd01f].
  Bus  0, device   7, function  3:
    Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 2).
      IRQ 9.
  Bus  0, device   9, function  0:
    Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 17).
      IRQ 5.
      Master Capable.  Latency=32.  Min Gnt=16.Max Lat=40.
      Prefetchable 32 bit memory at 0xdb002000 [0xdb002fff].
  Bus  0, device   9, function  1:
    Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 17).
      IRQ 5.
      Master Capable.  Latency=32.  Min Gnt=4.Max Lat=255.
      Prefetchable 32 bit memory at 0xdb000000 [0xdb000fff].
  Bus  0, device  11, function  0:
    Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 4).
      IRQ 12.
      Master Capable.  No bursts.  Min Gnt=2.Max Lat=20.
      I/O at 0xd400 [0xd41f].
  Bus  0, device  11, function  1:
    Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 1).
      I/O at 0xd800 [0xd807].
  Bus  0, device  13, function  0:
    SCSI storage controller: Adaptec AHA-2940U/UW/D / AIC-7881U (rev 0).
      IRQ 10.
      Master Capable.  Latency=8.  Min Gnt=8.Max Lat=8.
      I/O at 0xdc00 [0xdcff].
      Non-prefetchable 32 bit memory at 0xdb001000 [0xdb001fff].
  Bus  0, device  15, function  0:
    Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 48).
      IRQ 11.
      Master Capable.  Latency=8.  Min Gnt=10.Max Lat=10.
      I/O at 0xe000 [0xe07f].
      Non-prefetchable 32 bit memory at 0xdb003000 [0xdb00307f].
  Bus  1, device   0, function  0:
    VGA compatible controller: nVidia Corporation NV11 [GeForce2 MX] (rev 161).
      IRQ 11.
      Master Capable.  Latency=248.  Min Gnt=5.Max Lat=1.
      Non-prefetchable 32 bit memory at 0xd8000000 [0xd8ffffff].
      Prefetchable 32 bit memory at 0xd0000000 [0xd7ffffff].

-- 
Rich Tollerton <rtollert@xxxxxxxxxxxxxxx>





[Index of Archives]     [Linux DVB]     [Video Disk Recorder]     [Asterisk]     [Photo]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Free Photo Albums]     [Fedora Users]     [Fedora Women]     [ALSA Users]     [ALSA Devel]     [Linux USB]

Powered by Linux