[FFmpeg-trac] #249(avfilter:open): Fix the filter remove-logo
FFmpeg
trac at avcodec.org
Fri May 27 13:24:18 CEST 2011
#249: Fix the filter remove-logo
------------------------+-----------------------
Reporter: pbasista | Owner: michael
Type: enhancement | Status: open
Priority: minor | Component: avfilter
Version: git-master | Resolution:
Keywords: remove-logo | Blocked By:
Blocking: | Reproduced: 1
Analyzed: 0 |
------------------------+-----------------------
Comment (by pbasista):
Okay, here is the complete ffmpeg output with the segmentation fault:
ffmpeg -i input.avi -vcodec mpeg2video -sameq -acodec copy -vf mp=remove-
logo:logo.pgm -y output.avi
ffmpeg version git-N-30306-g6b899e1, Copyright (c) 2000-2011 the FFmpeg
developers
built on May 27 2011 12:55:55 with gcc 4.5.2
configuration: --enable-gpl
libavutil 51. 2. 2 / 51. 2. 2
libavcodec 53. 6. 0 / 53. 6. 0
libavformat 53. 2. 0 / 53. 2. 0
libavdevice 53. 0. 0 / 53. 0. 0
libavfilter 2. 11. 0 / 2. 11. 0
libswscale 0. 14. 0 / 0. 14. 0
libpostproc 51. 2. 0 / 51. 2. 0
Input #0, avi, from 'input.avi':
Metadata:
encoder : Lavf53.2.0
Duration: 00:01:00.04, start: 0.000000, bitrate: 3798 kb/s
Stream #0.0: Video: mpeg2video (Main), yuv420p, 720x576 [PAR 16:15 DAR
4:3], 15000 kb/s, PAR 64:45 DAR 16:9, 25 fps, 25 tbr, 25 tbn, 50 tbc
Stream #0.1: Audio: mp2, 48000 Hz, stereo, s16, 192 kb/s
[buffer @ 0x29a1c00] w:720 h:576 pixfmt:yuv420p tb:1/1000000 sar:64/45
sws_param:
[mp @ 0x29ccda0] This is a unholy filter, it will be purified by the
ffmpeg exorcist team
which will change its syntax from dark -vf mp to light -vf.
Thou shalst not make spells or scripts that depend on it
Segmentation fault
And here is the gdb output:
gdb ffmpeg_g
GNU gdb (Ubuntu/Linaro 7.2-1ubuntu11) 7.2
Copyright (C) 2010 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-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/peter/code/ffmpeg/ffmpeg_g...done.
(gdb) r -i input.avi -vcodec mpeg2video -sameq -acodec copy -vf mp=remove-
logo:logo.pgm -y output.avi
Starting program: /home/peter/code/ffmpeg/ffmpeg_g -i input.avi -vcodec
mpeg2video -sameq -acodec copy -vf mp=remove-logo:logo.pgm -y output.avi
[Thread debugging using libthread_db enabled]
ffmpeg version git-N-30306-g6b899e1, Copyright (c) 2000-2011 the FFmpeg
developers
built on May 27 2011 12:55:55 with gcc 4.5.2
configuration: --enable-gpl
libavutil 51. 2. 2 / 51. 2. 2
libavcodec 53. 6. 0 / 53. 6. 0
libavformat 53. 2. 0 / 53. 2. 0
libavdevice 53. 0. 0 / 53. 0. 0
libavfilter 2. 11. 0 / 2. 11. 0
libswscale 0. 14. 0 / 0. 14. 0
libpostproc 51. 2. 0 / 51. 2. 0
Input #0, avi, from 'input.avi':
Metadata:
encoder : Lavf53.2.0
Duration: 00:01:00.04, start: 0.000000, bitrate: 3798 kb/s
Stream #0.0: Video: mpeg2video (Main), yuv420p, 720x576 [PAR 16:15 DAR
4:3], 15000 kb/s, PAR 64:45 DAR 16:9, 25 fps, 25 tbr, 25 tbn, 50 tbc
Stream #0.1: Audio: mp2, 48000 Hz, stereo, s16, 192 kb/s
[buffer @ 0x12b8c00] w:720 h:576 pixfmt:yuv420p tb:1/1000000 sar:64/45
sws_param:
[mp @ 0x12e3da0] This is a unholy filter, it will be purified by the
ffmpeg exorcist team
which will change its syntax from dark -vf mp to light -vf.
Thou shalst not make spells or scripts that depend on it
Program received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()
(gdb) bt
#0 0x0000000000000000 in ?? ()
#1 0x000000000044ad6b in query_formats (ctx=0x12e3da0)
at libavfilter/vf_mp.c:796
#2 0x0000000000444c42 in query_formats (graph=0x12e2f60, log_ctx=0x0)
at libavfilter/avfiltergraph.c:147
#3 0x0000000000445296 in ff_avfilter_graph_config_formats
(graph=0x12e2f60,
log_ctx=<value optimized out>) at libavfilter/avfiltergraph.c:220
#4 0x000000000044540b in avfilter_graph_config (graphctx=0x12e2f60,
log_ctx=0x0) at libavfilter/avfiltergraph.c:236
#5 0x0000000000438173 in configure_video_filters (nb_output_files=1,
input_files=0x12e3530, nb_input_files=1, stream_maps=0x0,
nb_stream_maps=<value optimized out>, output_files=0xd55f20)
at ffmpeg.c:428
#6 transcode (nb_output_files=1, input_files=0x12e3530, nb_input_files=1,
stream_maps=0x0, nb_stream_maps=<value optimized out>,
output_files=0xd55f20) at ffmpeg.c:2277
#7 0x000000000043d44e in main (argc=<value optimized out>,
argv=<value optimized out>) at ffmpeg.c:4530
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0xffffffffffffffe0 to 0x20:
End of assembler dump.
(gdb) info all-registers
rax 0x0 0
rbx 0x32315659 842094169
rcx 0x7fffffffd350 140737488343888
rdx 0x990091 10027153
rsi 0x32315659 842094169
rdi 0x12cc920 19712288
rbp 0x9905d0 0x9905d0
rsp 0x7fffffffd428 0x7fffffffd428
r8 0x7ffff7207288 140737339486856
r9 0x7ffff7207228 140737339486760
r10 0x60 96
r11 0x8 8
r12 0x12cc6e0 19711712
r13 0x12e3da0 19807648
r14 0x12e2f60 19804000
r15 0x0 0
rip 0x0 0
eflags 0x10246 [ PF ZF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
---Type <return> to continue, or q <return> to quit---
gs 0x0 0
st0 -nan(0x7f80808183858687) (raw 0xffff7f80808183858687)
st1 -nan(0x7f008000800081) (raw 0xffff007f008000800081)
st2 -nan(0x8181818384868889) (raw 0xffff8181818384868889)
st3 -nan(0x81008100810083) (raw 0xffff0081008100810083)
st4 -nan(0x8181818283858687) (raw 0xffff8181818283858687)
st5 -nan(0x81008100810082) (raw 0xffff0081008100810082)
st6 -nan(0x8080808081828283) (raw 0xffff8080808081828283)
st7 -nan(0x80008000800080) (raw 0xffff0080008000800080)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xffff 65535
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x0, 0x0, 0x0,
0xff,
0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff},
v8_int16 = {0x0, 0xff00, 0x0, 0xffff, 0x0, 0x0, 0x0, 0xffff}, v4_int32 =
{
0xff000000, 0xffff0000, 0x0, 0xffff0000}, v2_int64 =
{0xffff0000ff000000,
0xffff000000000000}, uint128 = 0xffff000000000000ffff0000ff000000}
---Type <return> to continue, or q <return> to quit---
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0xff, 0xff, 0xff, 0x0 <repeats 13 times>}, v8_int16 =
{0xffff,
0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0xffffff, 0x0, 0x0,
0x0},
v2_int64 = {0xffffff, 0x0}, uint128 =
0x00000000000000000000000000ffffff}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x6f, 0x75, 0x74, 0x0 <repeats 13 times>}, v8_int16 =
{0x756f,
0x74, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x74756f, 0x0, 0x0,
0x0},
v2_int64 = {0x74756f, 0x0}, uint128 =
0x0000000000000000000000000074756f}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
0x8000000000000000}, v16_int8 = {0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0,
0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff}, v8_int16 = {0xff, 0x0, 0x0,
0x0, 0x0, 0xff, 0x0, 0xff00}, v4_int32 = {0xff, 0x0, 0xff0000,
0xff000000}, v2_int64 = {0xff, 0xff00000000ff0000},
uint128 = 0xff00000000ff000000000000000000ff}
xmm4 {v4_float = {0x0, 0x1, 0x3, 0x3}, v2_double = {0x0, 0x20},
v16_int8 = {0x0, 0x0, 0x0, 0xe0, 0x95, 0x9c, 0xe7, 0x3f, 0x40, 0x40,
0x40,
0x40, 0x40, 0x40, 0x40, 0x40}, v8_int16 = {0x0, 0xe000, 0x9c95,
0x3fe7,
0x4040, 0x4040, 0x4040, 0x4040}, v4_int32 = {0xe0000000, 0x3fe79c95,
0x40404040, 0x40404040}, v2_int64 = {0x3fe79c95e0000000,
0x4040404040404040}, uint128 = 0x40404040404040403fe79c95e0000000}
xmm5 {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0},
v16_int8 = {0x6d, 0x7d, 0xbf, 0xbb, 0x27, 0xaf, 0xf5, 0x3f, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x7d6d, 0xbbbf, 0xaf27, 0x3ff5,
0x0,
---Type <return> to continue, or q <return> to quit---
0x0, 0x0, 0x0}, v4_int32 = {0xbbbf7d6d, 0x3ff5af27, 0x0, 0x0},
v2_int64 = {
0x3ff5af27bbbf7d6d, 0x0}, uint128 =
0x00000000000000003ff5af27bbbf7d6d}
xmm6 {v4_float = {0x0, 0xfffffffd, 0x0, 0x0}, v2_double = {
0xffffffffffffffd2, 0x0}, v16_int8 = {0x5b, 0xaa, 0xa2, 0x2a, 0x9e,
0x6,
0x47, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 =
{0xaa5b,
0x2aa2, 0x69e, 0xc047, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x2aa2aa5b,
0xc047069e, 0x0, 0x0}, v2_int64 = {0xc047069e2aa2aa5b, 0x0},
uint128 = 0x0000000000000000c047069e2aa2aa5b}
xmm7 {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf0, 0x3f, 0x0, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x3ff0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x3ff00000, 0x0, 0x0}, v2_int64 = {
0x3ff0000000000000, 0x0}, uint128 =
0x00000000000000003ff0000000000000}
xmm8 {v4_float = {0x0, 0xfffffffd, 0x0, 0x0}, v2_double = {
0xffffffffffffffd2, 0x0}, v16_int8 = {0xe0, 0xe6, 0x35, 0x67, 0x9e,
0x6,
0x47, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 =
{0xe6e0,
0x6735, 0x69e, 0xc047, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x6735e6e0,
0xc047069e, 0x0, 0x0}, v2_int64 = {0xc047069e6735e6e0, 0x0},
uint128 = 0x0000000000000000c047069e6735e6e0}
xmm9 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x68, 0xc8, 0xbc, 0x3b, 0x0, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0xc868, 0x3bbc, 0x0, 0x0,
0x0,
0x0}, v4_int32 = {0x0, 0x3bbcc868, 0x0, 0x0}, v2_int64 = {
---Type <return> to continue, or q <return> to quit---
0x3bbcc86800000000, 0x0}, uint128 =
0x00000000000000003bbcc86800000000}
xmm10 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x46, 0x84, 0x24, 0x59, 0xd6, 0x3e, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x8446, 0x5924, 0x3ed6,
0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x84460000, 0x3ed65924, 0x0, 0x0},
v2_int64 = {
0x3ed6592484460000, 0x0}, uint128 =
0x00000000000000003ed6592484460000}
xmm11 {v4_float = {0x9689a800, 0x0, 0x0, 0x0}, v2_double = {0x0,
0x0}, v16_int8 = {0x6a, 0xa2, 0x65, 0x50, 0xf2, 0xea, 0x8f, 0xbd, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0xa26a, 0x5065,
0xeaf2,
0xbd8f, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x5065a26a, 0xbd8feaf2, 0x0,
0x0}, v2_int64 = {0xbd8feaf25065a26a, 0x0},
uint128 = 0x0000000000000000bd8feaf25065a26a}
xmm12 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc4, 0x3c, 0x0, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x3cc4, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x3cc40000, 0x0, 0x0}, v2_int64 = {
0x3cc4000000000000, 0x0}, uint128 =
0x00000000000000003cc4000000000000}
xmm13 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x59, 0xbc, 0x0, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x8000, 0xbc59, 0x0, 0x0,
0x0,
0x0}, v4_int32 = {0x0, 0xbc598000, 0x0, 0x0}, v2_int64 = {
0xbc59800000000000, 0x0}, uint128 =
0x0000000000000000bc59800000000000}
xmm14 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
---Type <return> to continue, or q <return> to quit---
v16_int8 = {0x8e, 0x85, 0x83, 0xe8, 0xf0, 0x24, 0x53, 0x3c, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x858e, 0xe883, 0x24f0, 0x3c53,
0x0,
0x0, 0x0, 0x0}, v4_int32 = {0xe883858e, 0x3c5324f0, 0x0, 0x0},
v2_int64 = {
0x3c5324f0e883858e, 0x0}, uint128 =
0x00000000000000003c5324f0e883858e}
xmm15 {v4_float = {0x0, 0x3, 0x0, 0x0}, v2_double = {0x2d, 0x0},
v16_int8 = {0xc0, 0x9, 0xf2, 0x16, 0xb5, 0xdf, 0x46, 0x40, 0x0, 0x0,
0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x9c0, 0x16f2, 0xdfb5, 0x4046,
0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x16f209c0, 0x4046dfb5, 0x0, 0x0},
v2_int64 = {
0x4046dfb516f209c0, 0x0}, uint128 =
0x00000000000000004046dfb516f209c0}
mxcsr 0x1fa0 [ PE IM DM ZM OM UM PM ]
(gdb)
I would also like to note that the gdb disass command presented here:
http://ffmpeg.org/bugreports.html
is not working. Here is what I get when I run it:
(gdb) disass $pc-32 $pc+32
A syntax error in expression, near `$pc+32'.
Instead, a little different syntax, with a comma, appears to work:
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0xffffffffffffffe0 to 0x20:
End of assembler dump.
But I am not sure if this is what you wanted.
--
Ticket URL: <https://avcodec.org/trac/ffmpeg/ticket/249#comment:2>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list