[Ffmpeg-devel] Streaming from camera segfaults on Ubuntu Dapper

Timo Rantalaiho Timo.Rantalaiho
Tue Oct 10 14:27:50 CEST 2006


Hello,

I'm trying to stream video from a Logitech Quickcam 8000 
that I had working with older machine, Linux version and 
ffmpeg some years ago.

ffmpeg crashes right away in a segmentation fault. This 
happens both with the package coming with Dapper 
(0.cvs20050918-) and with the Subversion snapshot I just 
build.

Below are the details.

Linux toro 2.6.15-27-686 #1 SMP PREEMPT Sat Sep 16 02:13:27 UTC 2006 i686 GNU/Linux


thrantal at toro:~/downloads/ffmpeg$ ./ffserver & [1] 26614
thrantal at toro:~/downloads/ffmpeg$ ffserver started.

thrantal at toro:~/downloads/ffmpeg$
thrantal at toro:~/downloads/ffmpeg$ gdb ./ffmpeg_g GNU gdb 6.4-debian
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".

(gdb) r -an http://localhost:8090/feed1.ffm
Starting program: /home/thrantal/downloads/ffmpeg/ffmpeg_g -an http://localhost:8090/feed1.ffm
FFmpeg version SVN-r6624, Copyright (c) 2000-2006 Fabrice Bellard, et al.
  configuration:
  libavutil version: 49.0.1
  libavcodec version: 51.16.0
  libavformat version: 50.5.0
  built on Oct 10 2006 15:00:07, gcc: 4.0.3 (Ubuntu 4.0.3-1ubuntu5)
127.0.0.1 - - [Tue Oct 10 15:16:26 2006] "GET /feed1.ffm HTTP/1.0" 200 4165
[video4linux2 @ 0x8348fa0][7]Capabilities: 5000001
The V4L2 driver changed the video from 352x240 to 320x240
Input #0, video4linux2, from '':
  Duration: N/A, bitrate: N/A
  Stream #0.0: Video: rawvideo, yuv420p, 320x240, 13823 kb/s, 15.00 fps(r)
Input #1, audio_device, from '':
  Duration: N/A, bitrate: N/A
  Stream #1.0: Audio: pcm_s16le, 22050 Hz, mono, 352 kb/s
Output #0, ffm, to 'http://localhost:8090/feed1.ffm':
  Stream #0.0: Audio: mp2, 22050 Hz, mono, 64 kb/s
  Stream #0.1: Video: msmpeg4, yuv420p, 352x240, q=3-31, 256 kb/s, 15.00 fps(c)
Stream mapping:
  Stream #1.0 -> #0.0
  Stream #0.0 -> #0.1
[msmpeg4 @ 0x83e18dc]removing common factors from framerate
Press [q] to stop encoding

Program received signal SIGSEGV, Segmentation fault.
0xb7ecb9dc in memcpy () from /lib/tls/i686/cmov/libc.so.6
(gdb)   bt
#0  0xb7ecb9dc in memcpy () from /lib/tls/i686/cmov/libc.so.6
#1  0x080b435c in v4l2_read_packet (s1=0x8456070, pkt=0x8516000) at v4l2.c:313
#2  0x08062bbb in av_read_frame_internal (s=0x8456070, pkt=0xbfad8028)
    at utils.c:551
#3  0x0805e774 in main (argc=3, argv=0x8456f80) at ffmpeg.c:1902
(gdb)   disass $pc-32 $pc+32
Dump of assembler code from 0xb7ecb9bc to 0xb7ecb9fc:
0xb7ecb9bc <__memcpy_chk+12>:   pop    %es
0xb7ecb9bd <__memcpy_chk+13>:   add    %cl,0x244c8bf6(%ecx)
0xb7ecb9c3 <memcpy+3>:  or     $0x89,%al
0xb7ecb9c5 <memcpy+5>:  clc
0xb7ecb9c6 <memcpy+6>:  mov    0x4(%esp),%edi
0xb7ecb9ca <memcpy+10>: mov    %esi,%edx
0xb7ecb9cc <memcpy+12>: mov    0x8(%esp),%esi
0xb7ecb9d0 <memcpy+16>: cld
0xb7ecb9d1 <memcpy+17>: shr    %ecx
0xb7ecb9d3 <memcpy+19>: jae    0xb7ecb9d6 <memcpy+22>
0xb7ecb9d5 <memcpy+21>: movsb  %ds:(%esi),%es:(%edi)
0xb7ecb9d6 <memcpy+22>: shr    %ecx
0xb7ecb9d8 <memcpy+24>: jae    0xb7ecb9dc <memcpy+28>
0xb7ecb9da <memcpy+26>: movsw  %ds:(%esi),%es:(%edi)
0xb7ecb9dc <memcpy+28>: repz movsl %ds:(%esi),%es:(%edi)
0xb7ecb9de <memcpy+30>: mov    %eax,%edi
0xb7ecb9e0 <memcpy+32>: mov    %edx,%esi
0xb7ecb9e2 <memcpy+34>: mov    0x4(%esp),%eax
0xb7ecb9e6 <memcpy+38>: ret
0xb7ecb9e7 <memcpy+39>: nop
0xb7ecb9e8 <memcpy+40>: nop
0xb7ecb9e9 <memcpy+41>: nop
---Type <return> to continue, or q <return> to quit---
0xb7ecb9ea <memcpy+42>: nop
0xb7ecb9eb <memcpy+43>: nop
0xb7ecb9ec <memcpy+44>: nop
0xb7ecb9ed <memcpy+45>: nop
0xb7ecb9ee <memcpy+46>: nop
0xb7ecb9ef <memcpy+47>: nop
0xb7ecb9f0 <memcpy+48>: push   %ebp
0xb7ecb9f1 <memcpy+49>: mov    %esp,%ebp
0xb7ecb9f3 <memcpy+51>: sub    $0xc,%esp
0xb7ecb9f6 <memcpy+54>: mov    %esi,0x4(%esp)
0xb7ecb9fa <memcpy+58>: mov    0x10(%ebp),%esi
End of assembler dump.
(gdb)   info all-registers
eax            0x8456f80        138768256
ecx            0x13ef4  81652
edx            0x8457010        138768400
ebx            0x84f53d0        139416528
esp            0xbfad793c       0xbfad793c
ebp            0x8456070        0x8456070
esi            0xb7e04c30       -1210037200
edi            0x8516000        139550720
eip            0xb7ecb9dc       0xb7ecb9dc <memcpy+28>
eflags         0x10206  66054
cs             0x73     115
ss             0x7b     123
ds             0x7b     123
es             0x7b     123
fs             0x0      0
gs             0x33     51
st0            0        (raw 0x00000000000000000000)
st1            0        (raw 0x00000000000000000000)
st2            0        (raw 0x00000000000000000000)
st3            0        (raw 0x00000000000000000000)
st4            1160482587544901 (raw 0x403183ee7d0cc1a8a000)
st5            0        (raw 0x00000000000000000000)
st6            0        (raw 0x00000000000000000000)
---Type <return> to continue, or q <return> to quit---
st7            0        (raw 0x00000000000000000000)
fctrl          0x37f    895
fstat          0x4032   16434
ftag           0xffff   65535
fiseg          0x73     115
fioff          0x805ea99        134605465
foseg          0x7b     123
fooff          0x8457660        138770016
fop            0x5d8    1496
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
---Type <return> to continue, or q <return> to quit---
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm5           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm6           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
mxcsr          0x1f80   8064
mm0            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm1            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
---Type <return> to continue, or q <return> to quit---
mm2            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm3            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm4            {uint64 = 0x83ee7d0cc1a8a000, v2_int32 = {0xc1a8a000,
    0x83ee7d0c}, v4_int16 = {0xa000, 0xc1a8, 0x7d0c, 0x83ee}, v8_int8 = {0x0,
    0xa0, 0xa8, 0xc1, 0xc, 0x7d, 0xee, 0x83}}
mm5            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm6            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm7            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
(gdb)





More information about the ffmpeg-devel mailing list