[FFmpeg-trac] #1616(undetermined:open): bad seek in WMV2 file

FFmpeg trac at avcodec.org
Tue Aug 7 11:07:37 CEST 2012


#1616: bad seek in WMV2 file
-------------------------------------+-------------------------------------
             Reporter:  DonMoir      |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  normal       |                Component:
              Version:  git-master   |  undetermined
             Keywords:  asf wmv2     |               Resolution:
  seek                               |               Blocked By:
             Blocking:               |  Reproduced by developer:  1
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Changes (by cehoyos):

 * keywords:   => asf wmv2 seek
 * status:  new => open
 * version:  unspecified => git-master
 * reproduced:  0 => 1


Old description:

> Sample file:
>
> http://sms.pangolin.com/temp/bad_seek_wmv2.wmv (3 mb)
>
> If you do ffplay -ss 7 bad_seek_wmv2.wmv it works correctly.
>
> But ffplay -ss 8 bad_seek_wmv2.wmv will fail with gray frame.
>
> For my app, I see corruption and not gray.
>
> VLC has a bit of a problem with it but not as bad.
>
> WMP gets it perfect.
>
> With the following you will get a gray frame and a warning about first
> frame is not keyframe. The first frame is a keyframe but maybe not the
> one it seeked to.
>
> ffplay -ss 8 CreaToon3.wmv
> ffplay version N-43206-gf857465 Copyright (c) 2003-2012 the FFmpeg
> developers
>   built on Aug  4 2012 16:12:33 with gcc 4.7.1 (GCC)
>   configuration: --disable-static --enable-shared --enable-gpl --enable-
> version3
>  --disable-w32threads --enable-runtime-cpudetect --enable-avisynth
> --enable-bzlib
>  --enable-frei0r --enable-libass --enable-libcelt --enable-libopencore-
> amrnb
>  --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm
> --enable-libmp3lame
>  --enable-libnut --enable-libopenjpeg --enable-librtmp --enable-
> libschroedinger
>  --enable-libspeex --enable-libtheora --enable-libutvideo --enable-libvo-
> aacenc
>  --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-
> libx264
>  --enable-libxavs --enable-libxvid --enable-zlib
>   libavutil      51. 66.100 / 51. 66.100
>   libavcodec     54. 49.100 / 54. 49.100
>   libavformat    54. 22.100 / 54. 22.100
>   libavdevice    54.  2.100 / 54.  2.100
>   libavfilter     3.  5.102 /  3.  5.102
>   libswscale      2.  1.100 /  2.  1.100
>   libswresample   0. 15.100 /  0. 15.100
>   libpostproc    52.  0.100 / 52.  0.100
> Input #0, asf, from 'CreaToon3.wmv':
>   Metadata:
>     title           : CreaToon 3
>     artist          : ANIMANTE BALEARES S.L.
>     copyright       : ANIMANTE BALEARES S.L. 2004
>     WMFSDKVersion   : 9.00.00.2980
>     WMFSDKNeeded    : 0.0.0.0000
>     IsVBR           : 0
>   Duration: 00:00:42.23, start: 0.000000, bitrate: 664 kb/s
>     Stream #0:0(spa): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, 1
> channels,
> s16, 20 kb/s
>     Stream #0:1(spa): Video: wmv2 (WMV2 / 0x32564D57), yuv420p, 640x480,
> 671 kb/
> s, 25 tbr, 1k tbn, 1k tbc
> [asf @ 012a04a0] ignoring invalid packet_obj_size (15 116 116 310)
> [asf @ 012a04a0] freeing incomplete packet size 310, new 1580
> 1344327525.2[wmv2 @ 012a7060] 2 warning: '''first frame is no keyframe'''
> Frame changed from size:0x0 to size:640x480q=    0B f=0/0
>   29.51 A-V:  0.186 fd= 163 aq=    5KB vq=   83KB sq=    0B f=0/0

New description:

 Sample file:

 http://sms.pangolin.com/temp/bad_seek_wmv2.wmv (3 mb)

 If you do ffplay -ss 7 bad_seek_wmv2.wmv it works correctly.

 But ffplay -ss 8 bad_seek_wmv2.wmv will fail with gray frame.

 For my app, I see corruption and not gray.

 VLC has a bit of a problem with it but not as bad.

 WMP gets it perfect.

 With the following you will get a gray frame and a warning about first
 frame is not keyframe. The first frame is a keyframe but maybe not the one
 it seeked to.
 {{{
 ffplay -ss 8 CreaToon3.wmv
 ffplay version N-43206-gf857465 Copyright (c) 2003-2012 the FFmpeg
 developers
   built on Aug  4 2012 16:12:33 with gcc 4.7.1 (GCC)
   configuration: --disable-static --enable-shared --enable-gpl --enable-
 version3
  --disable-w32threads --enable-runtime-cpudetect --enable-avisynth
 --enable-bzlib
  --enable-frei0r --enable-libass --enable-libcelt --enable-libopencore-
 amrnb
  --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-
 libmp3lame
  --enable-libnut --enable-libopenjpeg --enable-librtmp --enable-
 libschroedinger
  --enable-libspeex --enable-libtheora --enable-libutvideo --enable-libvo-
 aacenc
  --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-
 libx264
  --enable-libxavs --enable-libxvid --enable-zlib
   libavutil      51. 66.100 / 51. 66.100
   libavcodec     54. 49.100 / 54. 49.100
   libavformat    54. 22.100 / 54. 22.100
   libavdevice    54.  2.100 / 54.  2.100
   libavfilter     3.  5.102 /  3.  5.102
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
 Input #0, asf, from 'CreaToon3.wmv':
   Metadata:
     title           : CreaToon 3
     artist          : ANIMANTE BALEARES S.L.
     copyright       : ANIMANTE BALEARES S.L. 2004
     WMFSDKVersion   : 9.00.00.2980
     WMFSDKNeeded    : 0.0.0.0000
     IsVBR           : 0
   Duration: 00:00:42.23, start: 0.000000, bitrate: 664 kb/s
     Stream #0:0(spa): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, 1
 channels,
 s16, 20 kb/s
     Stream #0:1(spa): Video: wmv2 (WMV2 / 0x32564D57), yuv420p, 640x480,
 671 kb/
 s, 25 tbr, 1k tbn, 1k tbc
 [asf @ 012a04a0] ignoring invalid packet_obj_size (15 116 116 310)
 [asf @ 012a04a0] freeing incomplete packet size 310, new 1580
 1344327525.2[wmv2 @ 012a7060] 2 warning: '''first frame is no keyframe'''
 Frame changed from size:0x0 to size:640x480q=    0B f=0/0
   29.51 A-V:  0.186 fd= 163 aq=    5KB vq=   83KB sq=    0B f=0/0
 }}}

--

Comment:

 Please remember to only report problems for ffplay if they are not
 reproducible with ffmpeg (and that means that whenever a ticket for ffplay
 is reported, some implicit or explicit reason is needed why the ticket is
 not reported for ffmpeg). The two reasons are that bugs are much more
 difficult to reproduce with ffplay and that ffplay depends on an external
 library that is known to contain bugs.
 {{{
 $ ffmpeg -ss 8 -i bad_seek_wmv2.wmv out.png
 ffmpeg version N-43291-gcf753d5 Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Aug  7 2012 07:51:32 with gcc 4.3.2 (GCC)
   configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-gpl --enable-
 libopenjpeg --enable-libvorbis --enable-libspeex --enable-libmp3lame
 --enable-libtheora --extra-ldflags=-lm --enable-libvpx --enable-libxavs
 --enable-x11grab --enable-libass --enable-nonfree --enable-libfaac
 --enable-libopus --enable-libfdk-aac
   libavutil      51. 66.101 / 51. 66.101
   libavcodec     54. 50.100 / 54. 50.100
   libavformat    54. 22.101 / 54. 22.101
   libavdevice    54.  2.100 / 54.  2.100
   libavfilter     3.  5.102 /  3.  5.102
   libswscale      2.  1.101 /  2.  1.101
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
 Guessed Channel Layout for  Input Stream #0.0 : mono
 Input #0, asf, from 'bad_seek_wmv2.wmv':
   Metadata:
     title           : CreaToon 3
     artist          : ANIMANTE BALEARES S.L.
     copyright       : ANIMANTE BALEARES S.L. 2004
     WMFSDKVersion   : 9.00.00.2980
     WMFSDKNeeded    : 0.0.0.0000
     IsVBR           : 0
   Duration: 00:00:42.23, start: 0.000000, bitrate: 664 kb/s
     Stream #0:0(spa): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, mono,
 s16, 20 kb/s
     Stream #0:1(spa): Video: wmv2 (WMV2 / 0x32564D57), yuv420p, 640x480,
 671 kb/s, 25 tbr, 1k tbn, 1k tbc
 Output #0, image2, to 'out.png':
   Metadata:
     title           : CreaToon 3
     artist          : ANIMANTE BALEARES S.L.
     copyright       : ANIMANTE BALEARES S.L. 2004
     WMFSDKVersion   : 9.00.00.2980
     WMFSDKNeeded    : 0.0.0.0000
     IsVBR           : 0
     encoder         : Lavf54.22.101
     Stream #0:0(spa): Video: png, rgb24, 640x480, q=2-31, 200 kb/s, 90k
 tbn, 25 tbc
 Stream mapping:
   Stream #0:1 -> #0:0 (wmv2 -> png)
 Press [q] to stop, [?] for help
 [asf @ 0x9115500] ignoring invalid packet_obj_size (15 116 116 310)
 [asf @ 0x9115500] freeing incomplete packet size 310, new 1580
 [wmv2 @ 0x911c7c0] warning: first frame is no keyframe
 [image2 @ 0x910f960] Could not get frame filename number 2 from pattern
 'out.png'
 av_interleaved_write_frame(): Invalid argument
 }}}

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1616#comment:1>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list