[FFmpeg-trac] #5843(undetermined:new): FFmpeg decode SWF file error
FFmpeg
trac at avcodec.org
Mon Sep 12 13:18:42 EEST 2016
#5843: FFmpeg decode SWF file error
-------------------------------------+-------------------------------------
Reporter: TopsLuo | Owner:
Type: defect | Status: new
Priority: normal | Component:
Version: unspecified | undetermined
Keywords: swf | Resolution:
Blocking: | Blocked By:
Analyzed by developer: 0 | Reproduced by developer: 0
-------------------------------------+-------------------------------------
Description changed by cehoyos:
Old description:
> Summary of the bug:
> I am trying to transcode swf to mpegts format,But I failed.
> Use the tool to analysis SWF file:
>
> <?xml version="1.0" encoding="utf-8"?>
> <SWF type="CWS" Version="9" FileLength="257819" width="640" height="480"
> FrameRate="18" FrameCount="270">
> <tags count="302">
> <FileAttributes class="zero.swf.tagBodys.FileAttributes"
> UseGPU="false" UseDirectBlit="false" HasMetadata="false"
> ActionScript3="false" suppressCrossDomainCaching="false"
> swfRelativeUrls="false" UseNetwork="true" rest="0x00000000"/>
> <block swfSrc="aa.swf" offset="27" length="257792"/>
> </tags>
> </SWF>
> ,It says the file have 270 frames,buf FFmpeg only decoded one Frame
> {{{
>
> $ ./bin/ffmpeg.exe -i ../aa.swf test.ts
> ffmpeg version N-81635-gbc7066f Copyright (c) 2000-2016 the FFmpeg
> developers
> built with gcc 5.4.0 (GCC)
> configuration: --enable-gpl --enable-version3 --disable-w32threads
> --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-
> bzlib --enable-libebur128 --enable-fontconfig --enable-frei0r --enable-
> gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b
> --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm
> --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-
> libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264
> --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-
> libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex
> --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-
> libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack
> --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs
> --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink
> --enable-zlib
> libavutil 55. 29.100 / 55. 29.100
> libavcodec 57. 55.101 / 57. 55.101
> libavformat 57. 48.103 / 57. 48.103
> libavdevice 57. 0.102 / 57. 0.102
> libavfilter 6. 61.100 / 6. 61.100
> libswscale 4. 1.100 / 4. 1.100
> libswresample 2. 1.100 / 2. 1.100
> libpostproc 54. 0.100 / 54. 0.100
> [swf @ 0000000000726de0] SWF compressed file detected
> [swf @ 0000000000726de0] Could not find codec parameters for stream 1
> (Video: none, none): unknown codec
> Consider increasing the value for the 'analyzeduration' and 'probesize'
> options
> [swf @ 0000000000726de0] Could not find codec parameters for stream 2
> (Video: vp6f, none): unspecified size
> Consider increasing the value for the 'analyzeduration' and 'probesize'
> options
> Input #0, swf, from '../aa.swf':
> Duration: N/A, bitrate: N/A
> Stream #0:0: Video: mjpeg, yuvj444p(pc, bt470bg/unknown/unknown),
> 640x480, 18 tbr, 18 tbn
> Stream #0:1: Video: none, none, 18 tbr, 18 tbn
> Stream #0:2: Video: vp6f, none, 18 tbr, 18 tbn
> [swscaler @ 000000000294ae20] deprecated pixel format used, make sure you
> did set range correctly
> [mpegts @ 00000000028f7de0] Using AVStream.codec to pass codec parameters
> to muxers is deprecated, use AVStream.codecpar instead.
> Output #0, mpegts, to 'test.ts':
> Metadata:
> encoder : Lavf57.48.103
> Stream #0:0: Video: mpeg2video (Main), yuv420p, 640x480, q=2-31, 200
> kb/s, 18 fps, 90k tbn, 18 tbc
> Metadata:
> encoder : Lavc57.55.101 mpeg2video
> Side data:
> cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
> Stream mapping:
> Stream #0:0 -> #0:0 (mjpeg (native) -> mpeg2video (native))
> Press [q] to stop, [?] for help
> frame= 1 fps=0.0 q=5.3 Lsize= 35kB time=00:00:00.00
> bitrate=25841454.5kbits/s speed=0.000491x
> video:32kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
> muxing overhead: 9.057426%
>
> }}}
> Patches should be submitted to the ffmpeg-devel mailing list and not this
> bug tracker.
New description:
Summary of the bug:
I am trying to transcode swf to mpegts format,But I failed.
Use the tool to analysis SWF file:
{{{
<?xml version="1.0" encoding="utf-8"?>
<SWF type="CWS" Version="9" FileLength="257819" width="640" height="480"
FrameRate="18" FrameCount="270">
<tags count="302">
<FileAttributes class="zero.swf.tagBodys.FileAttributes"
UseGPU="false" UseDirectBlit="false" HasMetadata="false"
ActionScript3="false" suppressCrossDomainCaching="false"
swfRelativeUrls="false" UseNetwork="true" rest="0x00000000"/>
<block swfSrc="aa.swf" offset="27" length="257792"/>
</tags>
</SWF>
}}}
,It says the file have 270 frames,buf FFmpeg only decoded one Frame
{{{
$ ./bin/ffmpeg.exe -i ../aa.swf test.ts
ffmpeg version N-81635-gbc7066f Copyright (c) 2000-2016 the FFmpeg
developers
built with gcc 5.4.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads
--enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-
bzlib --enable-libebur128 --enable-fontconfig --enable-frei0r --enable-
gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b
--enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm
--enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-
libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264
--enable-libopenjpeg --enable-libopus --enable-librtmp --enable-
libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex
--enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-
amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-
libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-
libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
libavutil 55. 29.100 / 55. 29.100
libavcodec 57. 55.101 / 57. 55.101
libavformat 57. 48.103 / 57. 48.103
libavdevice 57. 0.102 / 57. 0.102
libavfilter 6. 61.100 / 6. 61.100
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 1.100 / 2. 1.100
libpostproc 54. 0.100 / 54. 0.100
[swf @ 0000000000726de0] SWF compressed file detected
[swf @ 0000000000726de0] Could not find codec parameters for stream 1
(Video: none, none): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
[swf @ 0000000000726de0] Could not find codec parameters for stream 2
(Video: vp6f, none): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
Input #0, swf, from '../aa.swf':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj444p(pc, bt470bg/unknown/unknown),
640x480, 18 tbr, 18 tbn
Stream #0:1: Video: none, none, 18 tbr, 18 tbn
Stream #0:2: Video: vp6f, none, 18 tbr, 18 tbn
[swscaler @ 000000000294ae20] deprecated pixel format used, make sure you
did set range correctly
[mpegts @ 00000000028f7de0] Using AVStream.codec to pass codec parameters
to muxers is deprecated, use AVStream.codecpar instead.
Output #0, mpegts, to 'test.ts':
Metadata:
encoder : Lavf57.48.103
Stream #0:0: Video: mpeg2video (Main), yuv420p, 640x480, q=2-31, 200
kb/s, 18 fps, 90k tbn, 18 tbc
Metadata:
encoder : Lavc57.55.101 mpeg2video
Side data:
cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> mpeg2video (native))
Press [q] to stop, [?] for help
frame= 1 fps=0.0 q=5.3 Lsize= 35kB time=00:00:00.00
bitrate=25841454.5kbits/s speed=0.000491x
video:32kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 9.057426%
}}}
Patches should be submitted to the ffmpeg-devel mailing list and not this
bug tracker.
--
--
Ticket URL: <https://trac.ffmpeg.org/ticket/5843#comment:3>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list