vigasin <iviga...@gmail.com> added the comment: The sample is compiled with the latest trunk revision (r26400).
(gdb) run ..... got picture got picture Program received signal SIGSEGV, Segmentation fault. 0x00479fe0 in av_bswap32 (h=0xdb0050, h0=<value optimized out>) at /home/ivan/sdk/ffmpeg/svn/libavutil/x86/bswap.h:42 42 /home/ivan/sdk/ffmpeg/svn/libavutil/x86/bswap.h: No such file or directory. in /home/ivan/sdk/ffmpeg/svn/libavutil/x86/bswap.h (gdb) bt #0 0x00479fe0 in av_bswap32 (h=0xdb0050, h0=<value optimized out>) at /home/ivan/sdk/ffmpeg/svn/libavutil/x86/bswap.h:42 #1 get_bits (h=0xdb0050, h0=<value optimized out>) at /home/ivan/sdk/ffmpeg/svn/libavcodec/get_bits.h:365 #2 decode_slice_header (h=0xdb0050, h0=<value optimized out>) at /home/ivan/sdk/ffmpeg/svn/libavcodec/h264.c:1755 #3 0x004825ac in decode_nal_units (h=0xdb0050, buf=<value optimized out>, buf_size=<value optimized out>) at /home/ivan/sdk/ffmpeg/svn/libavcodec/h264.c:2725 #4 0x00482d03 in decode_frame (avctx=0xee0fc0, data=0xee13b0, data_size=0x22fed8, avpkt=0x22fd50) at /home/ivan/sdk/ffmpeg/svn/libavcodec/h264.c:2887 #5 0x00403748 in avcodec_decode_video2 (avctx=0xee0fc0, picture=0xee13b0, got_picture_ptr=0x22fed8, buf=0xef0020 "", buf_size=75979) at /home/ivan/sdk/ffmpeg/svn/libavcodec/utils.c:638 #6 avcodec_decode_video (avctx=0xee0fc0, picture=0xee13b0, got_picture_ptr=0x22fed8, buf=0xef0020 "", buf_size=75979) at /home/ivan/sdk/ffmpeg/svn/libavcodec/utils.c:621 #7 0x00401588 in main (argc=1, argv=0xee0f90) at test.cpp:61 (gdb) disass $pc-32,$pc+32 Dump of assembler code from 0x479fc0 to 0x47a000: 0x00479fc0 <decode_slice_header+2208>: mov 0x283c(%ebp),%edx 0x00479fc6 <decode_slice_header+2214>: mov 0x2e08(%ebp),%edi 0x00479fcc <decode_slice_header+2220>: mov 0x2834(%ebp),%esi 0x00479fd2 <decode_slice_header+2226>: mov %edx,%eax 0x00479fd4 <decode_slice_header+2228>: mov %edx,%ecx 0x00479fd6 <decode_slice_header+2230>: mov %edi,%ebx 0x00479fd8 <decode_slice_header+2232>: and $0x7,%ecx 0x00479fdb <decode_slice_header+2235>: neg %ebx 0x00479fdd <decode_slice_header+2237>: shr $0x3,%eax => 0x00479fe0 <decode_slice_header+2240>: mov (%esi,%eax,1),%eax 0x00479fe3 <decode_slice_header+2243>: lea (%edi,%edx,1),%edx 0x00479fe6 <decode_slice_header+2246>: bswap %eax 0x00479fe8 <decode_slice_header+2248>: shl %cl,%eax 0x00479fea <decode_slice_header+2250>: mov %ebx,%ecx 0x00479fec <decode_slice_header+2252>: mov 0x84(%esp),%ebx 0x00479ff3 <decode_slice_header+2259>: mov 0x2e34(%ebp),%edi 0x00479ff9 <decode_slice_header+2265>: shr %cl,%eax 0x00479ffb <decode_slice_header+2267>: mov %edx,0x283c(%ebp) End of assembler dump. (gdb) info all-registers eax 0x1 1 ecx 0x1 1 edx 0x9 9 ebx 0xfffffffc -4 esp 0x22fb30 0x22fb30 ebp 0xdb0050 0xdb0050 esi 0x112a4c0 17999040 edi 0x4 4 eip 0x479fe0 0x479fe0 <decode_slice_header+2240> eflags 0x210212 [ AF IF RF ID ] cs 0x1b 27 ss 0x23 35 ds 0x23 35 es 0x23 35 fs 0x3b 59 gs 0x0 0 st0 -nan(0x101010101010101) (raw 0xffff0101010101010101) st1 -nan(0x101010101010101) (raw 0xffff0101010101010101) st2 -nan(0x8181818181818181) (raw 0xffff8181818181818181) st3 -nan(0x8181818181818181) (raw 0xffff8181818181818181) st4 -nan(0x8181818181818181) (raw 0xffff8181818181818181) st5 -nan(0x8181818181818181) (raw 0xffff8181818181818181) st6 0 (raw 0x00000000000000000000) st7 -inf (raw 0xffff0000000000000000) fctrl 0x37f 895 fstat 0x4020 16416 ftag 0xffff 65535 fiseg 0x1b 27 fioff 0x58817e 5800318 foseg 0x23 35 fooff 0x22fd08 2293000 fop 0x77c 1916 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 = {0x8000000000000000, 0x0}, v16_int8 = {0xfc, 0xff, 0xfd, 0xff, 0xfd, 0xff, 0xfc, 0xff, 0xf6, 0xff, 0xfb, 0xff, 0xf6, 0xff, 0x1, 0x0}, v8_int16 = {0xfffc, 0xfffd, 0xfffd, 0xfffc, 0xfff6, 0xfffb, 0xfff6, 0x1}, v4_int32 = {0xfffdfffc, 0xfffcfffd, 0xfffbfff6, 0x1fff6}, v2_int64 = {0xfffcfffdfffdfffc, 0x1fff6fffbfff6}, uint128 = 0x0001fff6fffbfff6fffcfffdfffdfffc} xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x0}, v16_int8 = {0xd1, 0xff, 0x6, 0x0, 0x6, 0x0, 0xd1, 0xff, 0xf6, 0xff, 0x5, 0x0, 0xc9, 0xff, 0x1, 0x0}, v8_int16 = {0xffd1, 0x6, 0x6, 0xffd1, 0xfff6, 0x5, 0xffc9, 0x1}, v4_int32 = {0x6ffd1, 0xffd10006, 0x5fff6, 0x1ffc9}, v2_int64 = {0xffd100060006ffd1, 0x1ffc90005fff6}, uint128 = 0x0001ffc90005fff6ffd100060006ffd1} xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x0}, v16_int8 = {0xe0, 0xff, 0x3, 0x0, 0x3, 0x0, 0xe0, 0xff, 0xf6, 0xff, 0x1, 0x0, 0xd8, 0xff, 0x1, 0x0}, v8_int16 = {0xffe0, 0x3, 0x3, 0xffe0, 0xfff6, 0x1, 0xffd8, 0x1}, v4_int32 = {0x3ffe0, 0xffe00003, 0x1fff6, 0x1ffd8}, v2_int64 = {0xffe000030003ffe0, 0x1ffd80001fff6}, uint128 = 0x0001ffd80001fff6ffe000030003ffe0} xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0xb, 0x0, 0xfa, 0xff, 0xfa, 0xff, 0xb, 0x0, 0xf6, 0xff, 0xf7, 0xff, 0x5, 0x0, 0x1, 0x0}, v8_int16 = { 0xb, 0xfffa, 0xfffa, 0xb, 0xfff6, 0xfff7, 0x5, 0x1}, v4_int32 = {0xfffa000b, 0xbfffa, 0xfff7fff6, 0x10005}, v2_int64 = {0xbfffafffa000b, 0x10005fff7fff6}, uint128 = 0x00010005fff7fff6000bfffafffa000b} xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0xf, 0x46, 0x11, 0x9, 0x43, 0x81, 0x19, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = { 0x460f, 0x911, 0x8143, 0x119, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x911460f, 0x1198143, 0x0, 0x0}, v2_int64 = {0x11981430911460f, 0x0}, uint128 = 0x0000000000000000011981430911460f} xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0}, v8_int16 = {0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4}, v4_int32 = {0x40004, 0x40004, 0x40004, 0x40004}, v2_int64 = { 0x4000400040004, 0x4000400040004}, uint128 = 0x00040004000400040004000400040004} 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 [ IM DM ZM OM UM PM ] mm0 {uint64 = 0x101010101010101, v2_int32 = {0x1010101, 0x1010101}, v4_int16 = {0x101, 0x101, 0x101, 0x101}, v8_int8 = {0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1}} mm1 {uint64 = 0x101010101010101, v2_int32 = {0x1010101, 0x1010101}, v4_int16 = {0x101, 0x101, 0x101, 0x101}, v8_int8 = {0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1}} mm2 {uint64 = 0x8181818181818181, v2_int32 = {0x81818181, 0x81818181}, v4_int16 = { 0x8181, 0x8181, 0x8181, 0x8181}, v8_int8 = {0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81}} mm3 {uint64 = 0x8181818181818181, v2_int32 = {0x81818181, 0x81818181}, v4_int16 = { 0x8181, 0x8181, 0x8181, 0x8181}, v8_int8 = {0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81}} mm4 {uint64 = 0x8181818181818181, v2_int32 = {0x81818181, 0x81818181}, v4_int16 = { 0x8181, 0x8181, 0x8181, 0x8181}, v8_int8 = {0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81}} mm5 {uint64 = 0x8181818181818181, v2_int32 = {0x81818181, 0x81818181}, v4_int16 = { 0x8181, 0x8181, 0x8181, 0x8181}, v8_int8 = {0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81}} 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) There is no problem on linux, only on win32. ________________________________________________ FFmpeg issue tracker <iss...@roundup.ffmpeg.org> <https://roundup.ffmpeg.org/issue2393> ________________________________________________