Opened 5 years ago

Closed 4 years ago

#2639 closed defect (fixed)

FFmpeg hangs when trying to seek on a certain wmv file

Reported by: testn Owned by:
Priority: important Component: avformat
Version: git-master Keywords: asf regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

FFmpeg hangs and not responding to SIGTERM when trying to extract thumbnails with seek on certain wmv file. The source file can be downloaded from http://cmsu2.ucmo.edu/public/classes/Dudley/tsunami%20videos/Thailand-Wave.wmv

How to reproduce:

% ffmpeg -ss 0:0:1 -loglevel verbose  -i Downloads/Thailand-Wave.wmv  -vframes 1 -an -y -map 0  -s 320x240 /tmp/video4130912621780479849.jpg
ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
  built on Mar 19 2013 10:25:50 with Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfdk-aac
  libavutil      52. 18.100 / 52. 18.100
  libavcodec     54. 92.100 / 54. 92.100
  libavformat    54. 63.104 / 54. 63.104
  libavdevice    54.  3.103 / 54.  3.103
  libavfilter     3. 42.103 /  3. 42.103
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
[asf @ 0x7fc239818e00] parser not found for codec wmav2, packets or times may be invalid.
    Last message repeated 1 times
[asf @ 0x7fc239818e00] max_analyze_duration 5000000 reached at 5200000 microseconds
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeated 2 times
[asf @ 0x7fc239818e00] freeing incomplete packet size 2106, new 971
[asf @ 0x7fc239818e00] asf_read_pts failed
[asf @ 0x7fc239818e00] freeing incomplete packet size 2994, new 3224
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeated 3 times
[asf @ 0x7fc239818e00] freeing incomplete packet size 1802, new 2044
[asf @ 0x7fc239818e00] asf_read_pts failed
[asf @ 0x7fc239818e00] freeing incomplete packet size 3036, new 2891
[asf @ 0x7fc239818e00] asf_read_pts failed
[asf @ 0x7fc239818e00] freeing incomplete packet size 3105, new 3227
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeated 1 times
[asf @ 0x7fc239818e00] ignoring invalid packet_obj_size (271 1164 1375 1497)
[asf @ 0x7fc239818e00] freeing incomplete packet size 1497, new 1375
[asf @ 0x7fc239818e00] freeing incomplete packet size 1375, new 1308
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeate    Last message repeated 6187252 times
asf_read_pts failed
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeated 302253 timeses
asf_read_pts failed
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeated 60331 timeses
[asf @ 0x7fc239818e00] asf_read_pts failed
    Last message repeated 30056 times
Received signal 2: terminating.

Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.

Change History (6)

comment:1 Changed 5 years ago by testn

  • Component changed from undetermined to FFmpeg
  • Version unspecified deleted

comment:2 Changed 5 years ago by cehoyos

  • Component changed from FFmpeg to avformat
  • Keywords asf regression added
  • Priority changed from normal to important
  • Reproduced by developer set
  • Status changed from new to open
  • Summary changed from FFmpeg hangs and not responding to SIGTERM when trying to extract thumbnails with seek on certain wmv file to FFmpeg hangs when trying to seek on a certain wmv file
  • Version set to git-master

Regression since 6cd650d.

comment:3 Changed 5 years ago by cehoyos

For future tickets: Please always test current git head.

(gdb) r -ss 1 -i Thailand-Wave.wmv -vframes 1 -f null -
Starting program: /home/cehoyos/test/cehoyos/FFmpeg/ffmpeg_g -ss 1 -i Thailand-Wave.wmv -vframes 1 -f null -
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
ffmpeg version N-53824-gf5d5bc3 Copyright (c) 2000-2013 the FFmpeg developers
  built on Jun  4 2013 19:30:13 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack
  libavutil      52. 34.100 / 52. 34.100
  libavcodec     55. 15.100 / 55. 15.100
  libavformat    55.  8.102 / 55.  8.102
  libavdevice    55.  2.100 / 55.  2.100
  libavfilter     3. 74.101 /  3. 74.101
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
[asf @ 0x1690880] max_analyze_duration 5000000 reached at 5200000 microseconds
[asf @ 0x1690880] asf_read_pts failed
    Last message repeated 2 times
[asf @ 0x1690880] freeing incomplete packet size 2106, new 971
[asf @ 0x1690880] asf_read_pts failed
[asf @ 0x1690880] freeing incomplete packet size 2994, new 3224
[asf @ 0x1690880] asf_read_pts failed
    Last message repeated 3 times
[asf @ 0x1690880] freeing incomplete packet size 1802, new 2044
[asf @ 0x1690880] asf_read_pts failed
[asf @ 0x1690880] freeing incomplete packet size 3036, new 2891
[asf @ 0x1690880] asf_read_pts failed
[asf @ 0x1690880] freeing incomplete packet size 3105, new 3227
[asf @ 0x1690880] asf_read_pts failed
    Last message repeated 1 times
[asf @ 0x1690880] ignoring invalid packet_obj_size (271 1164 1375 1497)
[asf @ 0x1690880] freeing incomplete packet size 1497, new 1375
[asf @ 0x1690880] freeing incomplete packet size 1375, new 1308
[asf @ 0x1690880] asf_read_pts failed
    Last message repeated 159822 times
Program received signal SIGINT, Interrupt.
0x00007ffff60ec230 in __write_nocancel () from /lib64/libc.so.6
(gdb) bt
#0  0x00007ffff60ec230 in __write_nocancel () from /lib64/libc.so.6
#1  0x00007ffff6088123 in _IO_new_file_write () from /lib64/libc.so.6
#2  0x00007ffff6088002 in new_do_write () from /lib64/libc.so.6
#3  0x00007ffff6088c1e in _IO_new_file_xsputn () from /lib64/libc.so.6
#4  0x00007ffff605e034 in buffered_vfprintf () from /lib64/libc.so.6
#5  0x00007ffff60588ae in vfprintf () from /lib64/libc.so.6
#6  0x00007ffff6062ec7 in fprintf () from /lib64/libc.so.6
#7  0x0000000000bf4fee in av_log_default_callback (ptr=<optimized out>, level=32,
    fmt=<optimized out>, vl=<optimized out>) at libavutil/log.c:228
#8  0x0000000000bf5261 in av_vlog (vl=0x7fffffffccd8, fmt=0xc477e6 "asf_read_pts failed\n",
    level=<optimized out>, avcl=0x1690880) at libavutil/log.c:262
#9  av_log (avcl=avcl@entry=0x1690880, level=<optimized out>, level@entry=32,
    fmt=fmt@entry=0xc477e6 "asf_read_pts failed\n") at libavutil/log.c:255
#10 0x00000000004efb81 in asf_read_pts (s=s@entry=0x1690880,
    stream_index=stream_index@entry=1, ppos=ppos@entry=0x7fffffffd280,
    pos_limit=<optimized out>) at libavformat/asfdec.c:1411
#11 0x00000000005c2cdb in ff_read_timestamp (read_timestamp=0x4ef920 <asf_read_pts>,
    pos_limit=<optimized out>, ppos=0x7fffffffd280, stream_index=1, s=0x1690880)
    at libavformat/utils.c:1829
#12 ff_gen_search (s=s@entry=0x1690880, stream_index=1, target_ts=1000,
    pos_min=pos_min@entry=2705, pos_max=2147487737, pos_limit=<optimized out>,
    ts_min=ts_min@entry=0, ts_max=<optimized out>, flags=flags@entry=1,
    ts_ret=ts_ret@entry=0x7fffffffd328, read_timestamp=0x4ef920 <asf_read_pts>)
    at libavformat/utils.c:1926
#13 0x00000000005c31d2 in ff_seek_frame_binary (s=s@entry=0x1690880,
    stream_index=stream_index@entry=1, target_ts=target_ts@entry=1000, flags=flags@entry=1)
    at libavformat/utils.c:1883
#14 0x00000000004eff10 in asf_read_seek (s=0x1690880, stream_index=<optimized out>,
    pts=<optimized out>, flags=<optimized out>) at libavformat/asfdec.c:1533
#15 0x00000000005c33c1 in seek_frame_internal (s=s@entry=0x1690880, stream_index=1,
    stream_index@entry=-1, timestamp=1000, timestamp@entry=1000000, flags=flags@entry=1)
    at libavformat/utils.c:2126
#16 0x00000000005c4079 in av_seek_frame (flags=1, timestamp=1000000, stream_index=-1,
    s=0x1690880) at libavformat/utils.c:2158
#17 avformat_seek_file (s=s@entry=0x1690880, stream_index=stream_index@entry=-1,
    min_ts=-9223372036854775808, ts=ts@entry=1000000, max_ts=max_ts@entry=1000000,
    flags=flags@entry=0) at libavformat/utils.c:2207
#18 0x0000000000463b75 in open_input_file (o=o@entry=0x7fffffffd720,
    filename=<optimized out>) at ffmpeg_opt.c:828
#19 0x000000000045dcc2 in open_files (inout=<optimized out>, inout@entry=0xc67cff "input",
    open_file=open_file@entry=0x462e20 <open_input_file>, l=<optimized out>,
    l=<optimized out>) at ffmpeg_opt.c:2483
#20 0x0000000000464559 in ffmpeg_parse_options (argc=argc@entry=10,
    argv=argv@entry=0x7fffffffddb8) at ffmpeg_opt.c:2520
#21 0x000000000045b808 in main (argc=10, argv=0x7fffffffddb8) at ffmpeg.c:3361

comment:4 Changed 5 years ago by cehoyos

  • Keywords crash added

comment:5 Changed 5 years ago by cehoyos

  • Keywords crash removed

comment:6 Changed 4 years ago by michael

  • Resolution set to fixed
  • Status changed from open to closed
Note: See TracTickets for help on using tickets.