[FFmpeg-trac] #63(undetermined:new): Purple bars appear when scaling a video with ffmpeg for windows

FFmpeg trac at avcodec.org
Thu Apr 14 02:41:06 CEST 2011


#63: Purple bars appear when scaling a video with ffmpeg for windows
--------------------------------------+--------------------------
 Reporter:  thebombzen                |        Type:  defect
   Status:  new                       |    Priority:  critical
Component:  undetermined              |     Version:  unspecified
 Keywords:  purple bars scale glitch  |  Blocked By:
 Blocking:                            |  Reproduced:  0
 Analyzed:  0                         |
--------------------------------------+--------------------------
 I try to scale a 1920x1080 video into 800x450 with FFmpeg and strange
 purple bars appear. To eliminate variables I used only yuv4mpegpipe files
 and try viewing with Windows Media Player, QuickTime, and VLC, and I get
 the same results.

 The full ffmpeg -v 9 -loglevel 99 -i from the input file is this:

 FFmpeg version git-N-29061-g5c00687, Copyright (c) 2000-2011 the FFmpeg
 developers
   built on Apr 12 2011 16:33:59 with gcc 4.7.0 20110402 (experimental)
   configuration: --enable-static --disable-shared --enable-gpl --enable-
 version3 --enable-nonfree --enable-postproc --enable-runtime-cpudetect
 --disable-avisynth --enable-bzlib --disable-libopencore-amrnb --disable-
 libopencore-amrwb --disable-libdirac --enable-libfaac --enable-libmp3lame
 --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-
 libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-
 libxvid --enable-zlib --arch=x86_64 --cpu=i7 --enable-pic --enable-sram
 --prefix=/usr/local/x86_64-w64-mingw32 --cross-
 prefix=/usr/x86_64-w64-mingw32/bin/ --target-os=mingw32 --pkg-config=pkg-
 config --extra-libs='-lorc-0.4 -lx264' --enable-stripping --disable-debug
 --enable-w32threads
   libavutil    50. 40. 1 / 50. 40. 1
   libavcodec   52.119. 0 / 52.119. 0
   libavformat  52.106. 0 / 52.106. 0
   libavdevice  52.  4. 0 / 52.  4. 0
   libavfilter   1. 78. 0 /  1. 78. 0
   libswscale    0. 13. 0 /  0. 13. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 [NULL @ 0000000021CFA390] Probed with size=2048 and score=100
 [yuv4mpegpipe @ 0000000021CFA390] Probe buffer size limit 5000000 reached
 [yuv4mpegpipe @ 0000000021CFA390] Estimating duration from bitrate, this
 may be inaccurate
 Input #0, yuv4mpegpipe, from 'No-purple-bars.y4m':
   Duration: N/A, bitrate: N/A
     Stream #0.0, 2, 100/1199: Video: rawvideo, yuv420p, 1920x1080,
 100/1199, PAR 1:1 DAR 16:9, 11.99 tbr, 11.99 tbn, 11.99 tbc
 At least one output file must be specified


 It says duration N/A but it is only 1 second long.

 The output from scaling the video was this:
 C:\Users\leo\Desktop>ffmpeg -v 9 -loglevel 99 -i No-purple-bars.y4m -s
 800x450 -y Yes-purple-bars.y4m
 FFmpeg version git-N-29061-g5c00687, Copyright (c) 2000-2011 the FFmpeg
 developers
   built on Apr 12 2011 16:33:59 with gcc 4.7.0 20110402 (experimental)
   configuration: --enable-static --disable-shared --enable-gpl --enable-
 version3 --enable-nonfree --enable-postproc --enable-runtime-cpudetect
 --disable-avisynth --enable-bzlib --disable-libopencore-amrnb --disable-
 libopencore-amrwb --disable-libdirac --enable-libfaac --enable-libmp3lame
 --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-
 libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-
 libxvid --enable-zlib --arch=x86_64 --cpu=i7 --enable-pic --enable-sram
 --prefix=/usr/local/x86_64-w64-mingw32 --cross-
 prefix=/usr/x86_64-w64-mingw32/bin/ --target-os=mingw32 --pkg-config=pkg-
 config --extra-libs='-lorc-0.4 -lx264' --enable-stripping --disable-debug
 --enable-w32threads
   libavutil    50. 40. 1 / 50. 40. 1
   libavcodec   52.119. 0 / 52.119. 0
   libavformat  52.106. 0 / 52.106. 0
   libavdevice  52.  4. 0 / 52.  4. 0
   libavfilter   1. 78. 0 /  1. 78. 0
   libswscale    0. 13. 0 /  0. 13. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 [NULL @ 00000000003AA560] Probed with size=2048 and score=100
 [yuv4mpegpipe @ 00000000003AA560] Probe buffer size limit 5000000 reached
 [yuv4mpegpipe @ 00000000003AA560] Estimating duration from bitrate, this
 may be inaccurate
 Input #0, yuv4mpegpipe, from 'No-purple-bars.y4m':
   Duration: N/A, bitrate: N/A
     Stream #0.0, 2, 100/1199: Video: rawvideo, yuv420p, 1920x1080,
 100/1199, PAR 1:1 DAR 16:9, 11.99 tbr, 11.99 tbn, 11.99 tbc
 [buffer @ 00000000003AD120] w:1920 h:1080 pixfmt:yuv420p
 [scale @ 00000000003ADC80] w:1920 h:1080 fmt:yuv420p -> w:800 h:450
 fmt:yuv420p flags:0x4
 Output #0, yuv4mpegpipe, to 'Yes-purple-bars.y4m':
   Metadata:
     encoder         : Lavf52.106.0
     Stream #0.0, 0, 1/90000: Video: rawvideo, yuv420p, 800x450 [PAR 1:1
 DAR 16:9], 100/1199, q=2-31, 200 kb/s, 90k tbn, 11.99 tbc
 Stream mapping:
   Stream #0.0 -> #0.0
 Press [q] to stop encoding
 frame=   13 fps=  0 q=0.0 Lsize=    6856kB time=1.08
 bitrate=51798.0kbits/s

 video:0kB audio:0kB global headers:0kB muxing overhead 1.#INF00%


 The ffmpeg -v 9 -loglevel 99 -i output for the output file is this:
 FFmpeg version git-N-29061-g5c00687, Copyright (c) 2000-2011 the FFmpeg
 developers
   built on Apr 12 2011 16:33:59 with gcc 4.7.0 20110402 (experimental)
   configuration: --enable-static --disable-shared --enable-gpl --enable-
 version3 --enable-nonfree --enable-postproc --enable-runtime-cpudetect
 --disable-avisynth --enable-bzlib --disable-libopencore-amrnb --disable-
 libopencore-amrwb --disable-libdirac --enable-libfaac --enable-libmp3lame
 --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-
 libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-
 libxvid --enable-zlib --arch=x86_64 --cpu=i7 --enable-pic --enable-sram
 --prefix=/usr/local/x86_64-w64-mingw32 --cross-
 prefix=/usr/x86_64-w64-mingw32/bin/ --target-os=mingw32 --pkg-config=pkg-
 config --extra-libs='-lorc-0.4 -lx264' --enable-stripping --disable-debug
 --enable-w32threads
   libavutil    50. 40. 1 / 50. 40. 1
   libavcodec   52.119. 0 / 52.119. 0
   libavformat  52.106. 0 / 52.106. 0
   libavdevice  52.  4. 0 / 52.  4. 0
   libavfilter   1. 78. 0 /  1. 78. 0
   libswscale    0. 13. 0 /  0. 13. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 [NULL @ 00000000003CA3A0] Probed with size=2048 and score=100
 [yuv4mpegpipe @ 00000000003CA3A0] Probe buffer size limit 5000000 reached
 [yuv4mpegpipe @ 00000000003CA3A0] Estimating duration from bitrate, this
 may be inaccurate
 Input #0, yuv4mpegpipe, from 'Yes-purple-bars.y4m':
   Duration: N/A, bitrate: N/A
     Stream #0.0, 10, 100/1199: Video: rawvideo, yuv420p, 800x450,
 100/1199, PAR 1:1 DAR 16:9, 11.99 fps, 11.99 tbr, 11.99 tbn, 11.99 tbc
 At least one output file must be specified

 I uploaded the sample files (.y4m.xz) to the upload.

 Now I noticed that the error only occurs in Windows, and not in Linux. I
 don't know why.

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/63>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list