[FFmpeg-trac] #5775(avdevice:new): Direct show webcam video capture fails in Windows 10 Anniversary edition
FFmpeg
trac at avcodec.org
Fri Aug 12 11:39:27 EEST 2016
#5775: Direct show webcam video capture fails in Windows 10 Anniversary edition
-------------------------------------+------------------------------------
Reporter: ctdavids | Owner:
Type: defect | Status: new
Priority: important | Component: avdevice
Version: git-master | Resolution:
Keywords: dshow crash | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+------------------------------------
Comment (by ctdavids):
Replying to [comment:2 cehoyos]:
> And just to make sure please recompile with {{{./configure && make
ffmpeg.exe}}}.
So I tried to do {{{./configure}}} followed by {{{make ffmpeg.exe}}}, but
the compilation failed. I can provide the output from the attempt (and the
later successful one) if desired, but I think maybe it was just an issue
with not specifying cross-compilation. Unsure. Certainly not my area of
expertise.
I then tried what seemed like a reasonably minimal configure with cross
compilation
{{{./configure --enable-gpl --enable-version3 --arch=x86_64 --target-
os=mingw32 --extra-ldflags=-static --cross-prefix=x86_64-w64-mingw32-}}}
followed by
{{{make ffmpeg.exe}}}
and this produced the following gdb output which looks pretty much the
same to me
{{{
$ gdb ffmpeg_g.exe
GNU gdb (GDB) (Cygwin 7.10.1-1) 7.10.1
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-cygwin".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ffmpeg_g.exe...done.
(gdb) r -f dshow -i video="Logitech HD Webcam C310"
Starting program: /home/ctdav/Anv/ffmpeg/ffmpeg_g.exe -f dshow -i
video="Logitech HD Webcam C310"
[New Thread 37908.0x50cc]
[New Thread 37908.0x1d9c]
[New Thread 37908.0x6324]
[New Thread 37908.0x4578]
ffmpeg version git-2016-08-12-e8b355a Copyright (c) 2000-2016 the FFmpeg
developers
built with gcc 4.9.2 (GCC)
configuration: --enable-gpl --enable-version3 --arch=x86_64 --target-
os=mingw32 --extra-ldflags=-static --cross-prefix=x86_64-w64-mingw32-
libavutil 55. 28.100 / 55. 28.100
libavcodec 57. 51.100 / 57. 51.100
libavformat 57. 46.100 / 57. 46.100
libavdevice 57. 0.102 / 57. 0.102
libavfilter 6. 51.100 / 6. 51.100
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 1.100 / 2. 1.100
libpostproc 54. 0.100 / 54. 0.100
[New Thread 37908.0x7768]
[New Thread 37908.0x2704]
[New Thread 37908.0x481c]
[Thread 37908.0x481c exited with code 0]
[New Thread 37908.0x568c]
[Thread 37908.0x568c exited with code 0]
[New Thread 37908.0x5180]
[Thread 37908.0x5180 exited with code 0]
[New Thread 37908.0x87f0]
[New Thread 37908.0x7b60]
[New Thread 37908.0x2fcc]
[New Thread 37908.0x4654]
[New Thread 37908.0x9ba0]
warning: HEAP[ffmpeg_g.exe]:
warning: Invalid address specified to RtlFreeHeap( 00000000007A0000,
0000000001209360 )
Program received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffa8eb7b61f in ntdll!RtlpNtMakeTemporaryKey () from
/cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
(gdb) bt
#0 0x00007ffa8eb7b61f in ntdll!RtlpNtMakeTemporaryKey () from
/cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
#1 0x00007ffa8eb47408 in ntdll!memset () from
/cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
#2 0x00007ffa8eb12a71 in ntdll!EtwEventProviderEnabled () from
/cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
#3 0x00007ffa8eb3cfb3 in ntdll!memset () from
/cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
#4 0x00007ffa8eabc214 in ntdll!RtlFreeHeap () from
/cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll
#5 0x00007ffa7d895f88 in Source!DllUnregisterServer () from
/cygdrive/c/Windows/System32/mfksproxy.dll
#6 0x00007ffa7d876b50 in ?? () from
/cygdrive/c/Windows/System32/mfksproxy.dll
#7 0x00007ffa69c69464 in QUARTZ!AMGetErrorTextW () from
/cygdrive/c/Windows/System32/quartz.dll
#8 0x00007ffa69c7b5f7 in QUARTZ!AMGetErrorTextW () from
/cygdrive/c/Windows/System32/quartz.dll
#9 0x00007ffa69c7ab0d in QUARTZ!AMGetErrorTextW () from
/cygdrive/c/Windows/System32/quartz.dll
#10 0x00007ffa69c7cc79 in QUARTZ!AMGetErrorTextW () from
/cygdrive/c/Windows/System32/quartz.dll
#11 0x00007ffa69c7c6e5 in QUARTZ!AMGetErrorTextW () from
/cygdrive/c/Windows/System32/quartz.dll
#12 0x0000000140025e2a in dshow_read_header (avctx=0x704f80) at
libavdevice/dshow.c:1209
#13 0x000000014026b557 in avformat_open_input (ps=ps at entry=0x5ff848,
filename=filename at entry=0x7049cb "video=Logitech HD Webcam C310",
fmt=fmt at entry=0x140bd7140 <ff_dshow_demuxer>, options=0x704d08) at
libavformat/utils.c:555
#14 0x000000014000dbe7 in open_input_file (o=o at entry=0x5ffa40,
filename=<optimized out>) at ffmpeg_opt.c:982
#15 0x000000014000f1cf in open_files (inout=0x140c1f4ff
<global_group+6879> "input", open_file=0x14000c370 <open_input_file>,
l=<optimized out>, l=<optimized out>) at ffmpeg_opt.c:3069
#16 ffmpeg_parse_options (argc=argc at entry=5, argv=argv at entry=0x704770) at
ffmpeg_opt.c:3106
#17 0x0000000140b587ee in main (argc=5, argv=0x704770) at ffmpeg.c:4325
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0x7ffa8eb7b5ff to 0x7ffa8eb7b63f:
0x00007ffa8eb7b5ff <ntdll!RtlpNtMakeTemporaryKey+17199>: int3
0x00007ffa8eb7b600 <ntdll!RtlpNtMakeTemporaryKey+17200>: int3
0x00007ffa8eb7b601 <ntdll!RtlpNtMakeTemporaryKey+17201>: int3
0x00007ffa8eb7b602 <ntdll!RtlpNtMakeTemporaryKey+17202>: int3
0x00007ffa8eb7b603 <ntdll!RtlpNtMakeTemporaryKey+17203>: int3
0x00007ffa8eb7b604 <ntdll!RtlpNtMakeTemporaryKey+17204>: int3
0x00007ffa8eb7b605 <ntdll!RtlpNtMakeTemporaryKey+17205>: int3
0x00007ffa8eb7b606 <ntdll!RtlpNtMakeTemporaryKey+17206>: int3
0x00007ffa8eb7b607 <ntdll!RtlpNtMakeTemporaryKey+17207>: int3
0x00007ffa8eb7b608 <ntdll!RtlpNtMakeTemporaryKey+17208>: mov
%gs:0x60,%rax
0x00007ffa8eb7b611 <ntdll!RtlpNtMakeTemporaryKey+17217>: cmpb
$0x0,0x2(%rax)
0x00007ffa8eb7b615 <ntdll!RtlpNtMakeTemporaryKey+17221>: je
0x7ffa8eb7b626 <ntdll!RtlpNtMakeTemporaryKey+17238>
0x00007ffa8eb7b617 <ntdll!RtlpNtMakeTemporaryKey+17223>: movb
$0x1,0x55033(%rip) # 0x7ffa8ebd0651
0x00007ffa8eb7b61e <ntdll!RtlpNtMakeTemporaryKey+17230>: int3
=> 0x00007ffa8eb7b61f <ntdll!RtlpNtMakeTemporaryKey+17231>: movb
$0x0,0x5502b(%rip) # 0x7ffa8ebd0651
0x00007ffa8eb7b626 <ntdll!RtlpNtMakeTemporaryKey+17238>: retq
0x00007ffa8eb7b627 <ntdll!RtlpNtMakeTemporaryKey+17239>: int3
0x00007ffa8eb7b628 <ntdll!RtlpNtMakeTemporaryKey+17240>: int3
0x00007ffa8eb7b629 <ntdll!RtlpNtMakeTemporaryKey+17241>: int3
0x00007ffa8eb7b62a <ntdll!RtlpNtMakeTemporaryKey+17242>: int3
0x00007ffa8eb7b62b <ntdll!RtlpNtMakeTemporaryKey+17243>: int3
0x00007ffa8eb7b62c <ntdll!RtlpNtMakeTemporaryKey+17244>: int3
0x00007ffa8eb7b62d <ntdll!RtlpNtMakeTemporaryKey+17245>: int3
0x00007ffa8eb7b62e <ntdll!RtlpNtMakeTemporaryKey+17246>: int3
0x00007ffa8eb7b62f <ntdll!RtlpNtMakeTemporaryKey+17247>: int3
0x00007ffa8eb7b630 <ntdll!RtlpNtMakeTemporaryKey+17248>: mov
%rbx,0x8(%rsp)
0x00007ffa8eb7b635 <ntdll!RtlpNtMakeTemporaryKey+17253>: mov
%r9,0x20(%rsp)
0x00007ffa8eb7b63a <ntdll!RtlpNtMakeTemporaryKey+17258>: mov
%r8b,0x18(%rsp)
End of assembler dump.
(gdb) info all-registers
rax 0x229000 2265088
rbx 0x1209350 18912080
rcx 0xfeef753b3aa40000 -76713771394662400
rdx 0x39007b005c007d 16044601959514237
rsi 0x7ffa8eb8ea38 140714113034808
rdi 0x7a0000 7995392
rbp 0x0 0x0
rsp 0x5fe048 0x5fe048
r8 0x30002d00610065 13510992161996901
r9 0x63003000610030 27866228859142192
r10 0x33003200320039 14355438563885113
r11 0x7d003600390031 35184604020801585
r12 0x70c828 7391272
r13 0x0 0
r14 0x0 0
r15 0x1209360 18912096
rip 0x7ffa8eb7b61f 0x7ffa8eb7b61f
<ntdll!RtlpNtMakeTemporaryKey+17231>
eflags 0x202 [ IF ]
cs 0x33 51
ss 0x2b 43
ds 0x2b 43
es 0x2b 43
fs 0x53 83
gs 0x2b 43
st0 <invalid float value> (raw 0x708b0000007d00300030)
st1 0 (raw 0x00000000000475e13088)
st2 <invalid float value> (raw 0x000500000000007af010)
st3 <invalid float value> (raw 0x5a4500000000005fdb40)
st4 0 (raw 0x000000007ffa75e13088)
st5 <invalid float value> (raw 0x00630000b95077933b1b)
st6 <invalid float value> (raw 0x401b0000000000709ee0)
st7 <invalid float value> (raw 0xed880000000000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0x640000 6553600
fiseg 0x32 50
fioff 0x2d0036 2949174
foseg 0x30 48
fooff 0x620064 6422628
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x50, 0xfe, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x60, 0x65, 0x43,
0x8c, 0xfa, 0x7f, 0x0, 0x0}, v8_int16 = {0xfe50, 0x80, 0x0, 0x0, 0x6560,
0x8c43, 0x7ffa, 0x0}, v4_int32 = {0x80fe50, 0x0, 0x8c436560,
0x7ffa}, v2_int64 = {0x80fe50, 0x7ffa8c436560}, uint128 =
0x00007ffa8c436560000000000080fe50}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x50, 0xfe, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x54, 0x2a,
0x8c, 0xfa, 0x7f, 0x0, 0x0}, v8_int16 = {0xfe50, 0x80, 0x0, 0x0, 0x5402,
0x8c2a, 0x7ffa, 0x0}, v4_int32 = {0x80fe50, 0x0, 0x8c2a5402,
0x7ffa}, v2_int64 = {0x80fe50, 0x7ffa8c2a5402}, uint128 =
0x00007ffa8c2a5402000000000080fe50}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x41, 0x2a,
0x8c, 0xfa, 0x7f, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x4186,
0x8c2a, 0x7ffa, 0x0}, v4_int32 = {0x0, 0x0, 0x8c2a4186, 0x7ffa},
v2_int64 = {0x0, 0x7ffa8c2a4186}, uint128 =
0x00007ffa8c2a41860000000000000000}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x50, 0x93, 0x20, 0x1, 0x0, 0x0, 0x0, 0x0, 0x65, 0xaa, 0xab,
0x8e, 0xfa, 0x7f, 0x0, 0x0}, v8_int16 = {0x9350, 0x120, 0x0, 0x0, 0xaa65,
0x8eab, 0x7ffa, 0x0}, v4_int32 = {0x1209350, 0x0,
0x8eabaa65, 0x7ffa}, v2_int64 = {0x1209350, 0x7ffa8eabaa65}, uint128 =
0x00007ffa8eabaa650000000001209350}
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x88, 0xed, 0x5f, 0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0xed88, 0x5f, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x5fed88, 0x0}, v2_int64 = {
0x0, 0x5fed88}, uint128 = 0x00000000005fed880000000000000000}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x14, 0xc2, 0xab,
0x8e, 0xfa, 0x7f, 0x0, 0x0}, v8_int16 = {0x0, 0x70, 0x0, 0x0, 0xc214,
0x8eab, 0x7ffa, 0x0}, v4_int32 = {0x700000, 0x0, 0x8eabc214,
0x7ffa}, v2_int64 = {0x700000, 0x7ffa8eabc214}, uint128 =
0x00007ffa8eabc2140000000000700000}
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}
xmm8 {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}
xmm9 {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}
xmm10 {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}
xmm11 {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}
xmm12 {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}
xmm13 {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}
xmm14 {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}
xmm15 {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 0x1fa0 [ PE IM DM ZM OM UM PM ]
(gdb)
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/5775#comment:4>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list