[FFmpeg-trac] #397(swscale:open): swscale crashes when upscaling pictures using MMX2
FFmpeg
trac at avcodec.org
Fri Aug 26 15:40:44 CEST 2011
#397: swscale crashes when upscaling pictures using MMX2
-----------------------+----------------------
Reporter: TobiX | Owner: michael
Type: defect | Status: open
Priority: normal | Component: swscale
Version: git-master | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced: 0
Analyzed: 0 |
-----------------------+----------------------
Comment (by marillat):
Replying to [comment:4 cehoyos]:
> Replying to [comment:3 marillat]:
> > ffmpeg -v 9 -loglevel 99 -i
MTV_high_res_320x240_sample_Penguin_Joke_MTV_from_WMV.amv -sws_flags
fast_bilinear -vf "scale=640:480" -vframes 1 -vcodec png output.png
> >
>
> Complete, uncut output (and backtrace) missing. Does the crash also
happen with --disable-optimizations? If yes, a backtrace would be nice.
Works fine with --disable-optimizations
Here is the previous output.
Starting program: /usr/bin/ffmpeg -v 9 -loglevel 99 -i
MTV_high_res_320x240_sample_Penguin_Joke_MTV_from_WMV.amv -sws_flags
fast_bilinear -vf scale=640:480 -vframes 1 -vcodec png output.png
[Thread debugging using libthread_db enabled]
ffmpeg version 0.8.2, Copyright (c) 2000-2011 the FFmpeg developers
built on Aug 13 2011 10:12:16 with gcc 4.6.1
configuration: --prefix=/usr --extra-cflags='-Wall -g ' --cc='ccache cc'
--enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree
--enable-libdirac --disable-decoder=libdirac --enable-libvorbis --enable-
pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-
x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-
nonfree --disable-stripping --enable-libschroedinger --disable-
encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-
libvpx --enable-librtmp --enable-avfilter --enable-frei0r --enable-
libopencv --enable-libfreetype --enable-libvo-aacenc --enable-libvo-
amrwbenc --libdir=/usr/lib/x86_64-linux-gnu --enable-libdc1394 --disable-
altivec --disable-armv5te --disable-armv6 --disable-vis
--shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 51. 9. 1 / 51. 9. 1
libavcodec 53. 7. 0 / 53. 7. 0
libavformat 53. 4. 0 / 53. 4. 0
libavdevice 53. 1. 1 / 53. 1. 1
libavfilter 2. 23. 0 / 2. 23. 0
libswscale 2. 0. 0 / 2. 0. 0
libpostproc 51. 2. 0 / 51. 2. 0
[avi @ 0x636080] Format avi probed with size=2048 and score=100
[AVI demuxer @ 0x6366a0] use odml:1
[avi @ 0x636080] scale/rate is 0/0 which is invalid. (This file has been
generated by broken software.)
st:0 removing common factor 62500 from timebase
[avi @ 0x636080] scale/rate is 0/0 which is invalid. (This file has been
generated by broken software.)
st:1 removing common factor 62500 from timebase
[amv @ 0x638120] buffer too small, expanding to 3968 bytes
[amv @ 0x638120] marker=d8 avail_size_in_buf=3968
[amv @ 0x638120] marker parser used 0 bytes (0 bits)
[amv @ 0x638120] marker=db avail_size_in_buf=3966
[amv @ 0x638120] index=0
[amv @ 0x638120] qscale[0]: 5
[amv @ 0x638120] index=1
[amv @ 0x638120] qscale[1]: 10
[amv @ 0x638120] marker parser used 132 bytes (1056 bits)
[amv @ 0x638120] marker=c4 avail_size_in_buf=3832
[amv @ 0x638120] class=0 index=0 nb_codes=12
[amv @ 0x638120] class=0 index=1 nb_codes=12
[amv @ 0x638120] class=1 index=0 nb_codes=251
[amv @ 0x638120] class=1 index=1 nb_codes=251
[amv @ 0x638120] marker parser used 418 bytes (3344 bits)
[amv @ 0x638120] marker=c0 avail_size_in_buf=3412
[amv @ 0x638120] sof0: picture: 160x120
[amv @ 0x638120] component 0 2:2 id: 0 quant:0
[amv @ 0x638120] component 1 1:1 id: 1 quant:1
[amv @ 0x638120] component 2 1:1 id: 2 quant:1
[amv @ 0x638120] pix fmt id 22111100
[amv @ 0x638120] marker parser used 17 bytes (136 bits)
[amv @ 0x638120] escaping removed 20 bytes
[amv @ 0x638120] marker=da avail_size_in_buf=3393
[amv @ 0x638120] component: 0
[amv @ 0x638120] component: 1
[amv @ 0x638120] component: 2
[amv @ 0x638120] marker parser used 3372 bytes (26973 bits)
[amv @ 0x638120] marker=d9 avail_size_in_buf=0
[amv @ 0x638120] mjpeg decode frame unused 0 bytes
[avi @ 0x636080] All info found
Input #0, avi, from
'MTV_high_res_320x240_sample_Penguin_Joke_MTV_from_WMV.amv':
Duration: 00:00:00.00, start: 0.000000, bitrate: -2147483 kb/s
Stream #0.0, 1, 1/16: Video: amv, yuvj420p, 160x120, 1/16, 16 tbr, 16
tbn, 16 tbc
Stream #0.1, 1, 1/16: Audio: adpcm_ima_amv, 22050 Hz, 1 channels, s16,
352 kb/s
Incompatible pixel format 'yuvj420p' for codec 'png', auto-selecting
format 'rgb24'
[buffer @ 0x64b500] w:160 h:120 pixfmt:yuvj420p tb:1/1000000 sar:0/1
sws_param:
[scale @ 0x637d60] w:160 h:120 fmt:yuvj420p -> w:640 h:480 fmt:rgb24
flags:0x1
Output #0, image2, to 'output.png':
Metadata:
encoder : Lavf53.4.0
Stream #0.0, 0, 1/90000: Video: png, rgb24, 640x480, 1/16, q=2-31, 200
kb/s, 90k tbn, 16 tbc
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop, [?] for help
[amv @ 0x638120] buffer too small, expanding to 3968 bytes
[amv @ 0x638120] marker=d8 avail_size_in_buf=3968
[amv @ 0x638120] marker parser used 0 bytes (0 bits)
[amv @ 0x638120] marker=db avail_size_in_buf=3966
[amv @ 0x638120] index=0
[amv @ 0x638120] qscale[0]: 5
[amv @ 0x638120] index=1
[amv @ 0x638120] qscale[1]: 10
[amv @ 0x638120] marker parser used 132 bytes (1056 bits)
[amv @ 0x638120] marker=c4 avail_size_in_buf=3832
[amv @ 0x638120] class=0 index=0 nb_codes=12
[amv @ 0x638120] class=0 index=1 nb_codes=12
[amv @ 0x638120] class=1 index=0 nb_codes=251
[amv @ 0x638120] class=1 index=1 nb_codes=251
[amv @ 0x638120] marker parser used 418 bytes (3344 bits)
[amv @ 0x638120] marker=c0 avail_size_in_buf=3412
[amv @ 0x638120] sof0: picture: 160x120
[amv @ 0x638120] component 0 2:2 id: 0 quant:0
[amv @ 0x638120] component 1 1:1 id: 1 quant:1
[amv @ 0x638120] component 2 1:1 id: 2 quant:1
[amv @ 0x638120] pix fmt id 22111100
[amv @ 0x638120] marker parser used 17 bytes (136 bits)
[amv @ 0x638120] escaping removed 20 bytes
[amv @ 0x638120] marker=da avail_size_in_buf=3393
[amv @ 0x638120] component: 0
[amv @ 0x638120] component: 1
[amv @ 0x638120] component: 2
[amv @ 0x638120] marker parser used 3372 bytes (26973 bits)
[amv @ 0x638120] marker=d9 avail_size_in_buf=0
[amv @ 0x638120] mjpeg decode frame unused 0 bytes
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff64e3fb4 in hyscale (c=0x7ffff64fe97f, src=<value optimized
out>, srcStride=0x7fffffffc9b0, srcSliceY=0, srcSliceH=120,
dst=0x7fffffffc990, dstStride=0x7fffffffc9c0) at libswscale/swscale.c:2031
2031 libswscale/swscale.c: No such file or directory.
in libswscale/swscale.c
(gdb) bt
#0 0x00007ffff64e3fb4 in hyscale (c=0x7ffff64fe97f, src=<value optimized
out>, srcStride=0x7fffffffc9b0, srcSliceY=0, srcSliceH=120,
dst=0x7fffffffc990, dstStride=0x7fffffffc9c0) at libswscale/swscale.c:2031
#1 swScale (c=0x7ffff64fe97f, src=<value optimized out>,
srcStride=0x7fffffffc9b0, srcSliceY=0, srcSliceH=120, dst=0x7fffffffc990,
dstStride=0x7fffffffc9c0) at libswscale/swscale.c:2327
#2 0x00007ffff64ea966 in sws_scale (c=0x651ca0, src=<value optimized
out>, srcStride=0x7fffffffca60, srcSliceY=0, srcSliceH=120, dst=<value
optimized out>, dstStride=0x7fffffffca70) at
libswscale/swscale_unscaled.c:793
#3 0x00007ffff79a9eca in scale_slice (sws=<value optimized out>, y=<value
optimized out>, h=<value optimized out>, mul=<value optimized out>,
field=0, link=<value optimized out>) at libavfilter/vf_scale.c:290
#4 0x00007ffff79aa03d in draw_slice (link=0x639e80, y=0, h=120,
slice_dir=1) at libavfilter/vf_scale.c:307
#5 0x00007ffff796cac3 in avfilter_draw_slice (link=0x639e80, y=0, h=120,
slice_dir=1) at libavfilter/avfilter.c:586
#6 0x00007ffff79ad430 in request_frame (link=<value optimized out>) at
libavfilter/vsrc_buffer.c:196
#7 0x00007ffff796c5c3 in avfilter_request_frame (link=0x639e80) at
libavfilter/avfilter.c:475
#8 0x00007ffff796c5e4 in avfilter_request_frame (link=0x649860) at
libavfilter/avfilter.c:477
#9 0x00007ffff79ad31d in av_vsink_buffer_get_video_buffer_ref (ctx=<value
optimized out>, picref=<value optimized out>, flags=<value optimized out>)
at libavfilter/vsink_buffer.c:83
#10 0x00000000004059db in output_packet (ist=<value optimized out>,
ist_index=0, ost_table=0x635fa0, nb_ostreams=1, pkt=<value optimized out>)
at ffmpeg.c:1715
#11 0x000000000040c63a in transcode (nb_output_files=1,
input_files=0x63e6e0, nb_input_files=1, stream_maps=0x0,
nb_stream_maps=<value optimized out>, output_files=0x617ee0) at
ffmpeg.c:2782
#12 0x0000000000407d0f in main (argc=<value optimized out>,
argv=0x7fffffffe398) at ffmpeg.c:4583
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/397#comment:5>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list