Opened 8 years ago

Closed 8 years ago

#5815 closed defect (fixed)

vp8: auto-alt-ref does not work with transparency

Reported by: MasterBlatter Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: libvpx
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
FFmpeg generate a corrupted like VP8 video, in a batch, the first file is ok, with other sources is ok.
How to reproduce:
Original Fallout4.mov source:
http://media.xiph.org/video/derf/

convert source to ffv1:

"%~dp0ffmpeg.exe" -i %1 -c:v ffv1 "%~dp1Fallout4.mkv"

Encode batch:
http://pastebin.com/8Pi87UZN

Encode prompt:
http://pastebin.com/dKnasV1W

Output files:
https://www.sendspace.com/file/letslt
https://www.sendspace.com/file/dfc75z
https://www.sendspace.com/file/wfm62o
https://www.sendspace.com/file/osikdh
https://www.sendspace.com/file/2q8s9k
https://www.sendspace.com/file/dlpw30
https://www.sendspace.com/file/f66i41
https://www.sendspace.com/file/8q7kn0
https://www.sendspace.com/file/z2i8dm
https://www.sendspace.com/file/f62do2

ffmpeg version N-81490-g2bc69cb-ga37e6dd+1
built with gcc 6.1.0 (Rev1, Built by MSYS2 project)

Change History (18)

comment:1 by Carl Eugen Hoyos, 8 years ago

I cannot use the bash script you uploaded.
To make this a valid ticket, please provide one (or more if necessary) FFmpeg command line including the complete, uncut console output here in the ticket, do not use external resources.

in reply to:  1 ; comment:2 by MasterBlatter, 8 years ago

that is a drag'n'drop batch (not bash) which resides in the same ffmpeg.exe folder,
cutted cli for first and second files (2 pass each)

ffmpeg.exe -y -i Fallout4.mkv -c:v libvpx -pass 1 -b:v .5M -threads 7 -speed 4 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -an -f null NUL
ffmpeg.exe -y -i Fallout4.mkv -c:v libvpx -pass 2 -b:v .5M -threads 7 -speed 2 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -f webm test_0.5_vp8.webm
ffmpeg.exe -y -i Fallout4.mkv -c:v libvpx -pass 1 -b:v 1M -threads 7 -speed 4 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -an -f null NUL
ffmpeg.exe -y -i Fallout4.mkv -c:v libvpx -pass 2 -b:v 1M -threads 7 -speed 2 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -f webm test_1.0_vp8.webm

this is a cut of the console output for first and second files

C:\Users\Casa\Desktop\test\Fallout4>"C:\media-autobuild_suite-master\local64\bin-video\ffmpeg.exe" -y -i C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv -c:v libvpx -pass 1 -b:v .5M -threads 7 -speed 4 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -an -f null NUL
ffmpeg version N-81490-g2bc69cb-ga37e6dd+1 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 6.1.0 (Rev1, Built by MSYS2 project)
  configuration:  --enable-avisynth --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --disable-w32threads --enable-decklink --enable-fontconfig --enable-frei0r --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmfx --enable-libmodplug --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libxavs --enable-libxvid --enable-libzimg --enable-openssl --enable-libsnappy --enable-gpl --enable-nvenc --enable-opencl --enable-opengl --enable-libcdio --enable-libfaac --enable-libfdk-aac --enable-libkvazaar --enable-librubberband --enable-libssh --enable-libtesseract --enable-libzvbi --enable-chromaprint --enable-libebur128 --enable-libopenh264 --enable-libopenmpt --enable-version3 --enable-nonfree --enable-filter=frei0r --disable-debug
  libavutil      55. 29.100 / 55. 29.100
  libavcodec     57. 54.101 / 57. 54.101
  libavformat    57. 48.101 / 57. 48.101
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 57.100 /  6. 57.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, matroska,webm, from 'C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    ENCODER         : Lavf57.48.101
  Duration: 00:01:00.04, start: 0.000000, bitrate: 1312107 kb/s
    Stream #0:0(eng): Video: ffv1 (FFV1 / 0x31564646), bgra, 1920x1080, SAR 1:1 DAR 16:9, 60 fps, 60 tbr, 1k tbn, 1k tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 ffv1
      DURATION        : 00:01:00.037000000
    Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 libvorbis
      DURATION        : 00:01:00.036000000
[libvpx @ 0000027dcf21f640] v1.6.0-353-g3a98508
[null @ 0000027dcef39080] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, null, to 'NUL':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    encoder         : Lavf57.48.101
    Stream #0:0(eng): Video: vp8 (libvpx), yuva420p(bt709/unknown/unknown), 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 500 kb/s, 60 fps, 60 tbn, 60 tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      DURATION        : 00:01:00.037000000
      encoder         : Lavc57.54.101 libvpx
    Side data:
      cpb: bitrate max/min/avg: 0/0/500000 buffer size: 0 vbv_delay: -1
Stream mapping:
  Stream #0:0 -> #0:0 (ffv1 (native) -> vp8 (libvpx))
Press [q] to stop, [?] for help
frame= 3602 fps=7.4 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A speed=   0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Output file is empty, nothing was encoded
 
C:\Users\Casa\Desktop\test\Fallout4>"C:\media-autobuild_suite-master\local64\bin-video\ffmpeg.exe" -y -i C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv -c:v libvpx -pass 2 -b:v .5M -threads 7 -speed 2 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -f webm "C:\Users\Casa\Desktop\test\Fallout4\test_0.5_vp8.webm"
ffmpeg version N-81490-g2bc69cb-ga37e6dd+1 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 6.1.0 (Rev1, Built by MSYS2 project)
  configuration:  --enable-avisynth --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --disable-w32threads --enable-decklink --enable-fontconfig --enable-frei0r --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmfx --enable-libmodplug --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libxavs --enable-libxvid --enable-libzimg --enable-openssl --enable-libsnappy --enable-gpl --enable-nvenc --enable-opencl --enable-opengl --enable-libcdio --enable-libfaac --enable-libfdk-aac --enable-libkvazaar --enable-librubberband --enable-libssh --enable-libtesseract --enable-libzvbi --enable-chromaprint --enable-libebur128 --enable-libopenh264 --enable-libopenmpt --enable-version3 --enable-nonfree --enable-filter=frei0r --disable-debug
  libavutil      55. 29.100 / 55. 29.100
  libavcodec     57. 54.101 / 57. 54.101
  libavformat    57. 48.101 / 57. 48.101
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 57.100 /  6. 57.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, matroska,webm, from 'C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    ENCODER         : Lavf57.48.101
  Duration: 00:01:00.04, start: 0.000000, bitrate: 1312107 kb/s
    Stream #0:0(eng): Video: ffv1 (FFV1 / 0x31564646), bgra, 1920x1080, SAR 1:1 DAR 16:9, 60 fps, 60 tbr, 1k tbn, 1k tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 ffv1
      DURATION        : 00:01:00.037000000
    Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 libvorbis
      DURATION        : 00:01:00.036000000
[libvpx @ 00000206de0bcf20] v1.6.0-353-g3a98508
[libopus @ 00000206de0bef20] No bit rate set. Defaulting to 96000 bps.
[webm @ 00000206de0bb280] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
    Last message repeated 1 times
Output #0, webm, to 'C:\Users\Casa\Desktop\test\Fallout4\test_0.5_vp8.webm':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    encoder         : Lavf57.48.101
    Stream #0:0(eng): Video: vp8 (libvpx), yuva420p(bt709/unknown/unknown), 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 500 kb/s, 60 fps, 1k tbn, 60 tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      DURATION        : 00:01:00.037000000
      encoder         : Lavc57.54.101 libvpx
    Side data:
      cpb: bitrate max/min/avg: 0/0/500000 buffer size: 0 vbv_delay: -1
    Stream #0:1(eng): Audio: opus (libopus), 48000 Hz, stereo, flt, delay 312, padding 0, 96 kb/s (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      DURATION        : 00:01:00.036000000
      encoder         : Lavc57.54.101 libopus
Stream mapping:
  Stream #0:0 -> #0:0 (ffv1 (native) -> vp8 (libvpx))
  Stream #0:1 -> #0:1 (vorbis (native) -> opus (libopus))
Press [q] to stop, [?] for help
frame= 3602 fps=5.5 q=0.0 Lsize=   24699kB time=00:01:00.05 bitrate=3369.1kbits/s speed=0.0918x
video:23039kB audio:684kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 4.116834%
 
C:\Users\Casa\Desktop\test\Fallout4>"C:\media-autobuild_suite-master\local64\bin-video\ffmpeg.exe" -y -i C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv -c:v libvpx -pass 1 -b:v 1M -threads 7 -speed 4 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -an -f null NUL
ffmpeg version N-81490-g2bc69cb-ga37e6dd+1 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 6.1.0 (Rev1, Built by MSYS2 project)
  configuration:  --enable-avisynth --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --disable-w32threads --enable-decklink --enable-fontconfig --enable-frei0r --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmfx --enable-libmodplug --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libxavs --enable-libxvid --enable-libzimg --enable-openssl --enable-libsnappy --enable-gpl --enable-nvenc --enable-opencl --enable-opengl --enable-libcdio --enable-libfaac --enable-libfdk-aac --enable-libkvazaar --enable-librubberband --enable-libssh --enable-libtesseract --enable-libzvbi --enable-chromaprint --enable-libebur128 --enable-libopenh264 --enable-libopenmpt --enable-version3 --enable-nonfree --enable-filter=frei0r --disable-debug
  libavutil      55. 29.100 / 55. 29.100
  libavcodec     57. 54.101 / 57. 54.101
  libavformat    57. 48.101 / 57. 48.101
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 57.100 /  6. 57.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, matroska,webm, from 'C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    ENCODER         : Lavf57.48.101
  Duration: 00:01:00.04, start: 0.000000, bitrate: 1312107 kb/s
    Stream #0:0(eng): Video: ffv1 (FFV1 / 0x31564646), bgra, 1920x1080, SAR 1:1 DAR 16:9, 60 fps, 60 tbr, 1k tbn, 1k tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 ffv1
      DURATION        : 00:01:00.037000000
    Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 libvorbis
      DURATION        : 00:01:00.036000000
[libvpx @ 000002462dd0f640] v1.6.0-353-g3a98508
[null @ 000002462da29080] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, null, to 'NUL':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    encoder         : Lavf57.48.101
    Stream #0:0(eng): Video: vp8 (libvpx), yuva420p(bt709/unknown/unknown), 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 1000 kb/s, 60 fps, 60 tbn, 60 tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      DURATION        : 00:01:00.037000000
      encoder         : Lavc57.54.101 libvpx
    Side data:
      cpb: bitrate max/min/avg: 0/0/1000000 buffer size: 0 vbv_delay: -1
Stream mapping:
  Stream #0:0 -> #0:0 (ffv1 (native) -> vp8 (libvpx))
Press [q] to stop, [?] for help
frame= 3602 fps=7.7 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A speed=   0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Output file is empty, nothing was encoded
 
C:\Users\Casa\Desktop\test\Fallout4>"C:\media-autobuild_suite-master\local64\bin-video\ffmpeg.exe" -y -i C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv -c:v libvpx -pass 2 -b:v 1M -threads 7 -speed 2 -colorspace "bt709" -auto-alt-ref 1 -lag-in-frames 25 -f webm "C:\Users\Casa\Desktop\test\Fallout4\test_1.0_vp8.webm"
ffmpeg version N-81490-g2bc69cb-ga37e6dd+1 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 6.1.0 (Rev1, Built by MSYS2 project)
  configuration:  --enable-avisynth --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --disable-w32threads --enable-decklink --enable-fontconfig --enable-frei0r --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmfx --enable-libmodplug --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libxavs --enable-libxvid --enable-libzimg --enable-openssl --enable-libsnappy --enable-gpl --enable-nvenc --enable-opencl --enable-opengl --enable-libcdio --enable-libfaac --enable-libfdk-aac --enable-libkvazaar --enable-librubberband --enable-libssh --enable-libtesseract --enable-libzvbi --enable-chromaprint --enable-libebur128 --enable-libopenh264 --enable-libopenmpt --enable-version3 --enable-nonfree --enable-filter=frei0r --disable-debug
  libavutil      55. 29.100 / 55. 29.100
  libavcodec     57. 54.101 / 57. 54.101
  libavformat    57. 48.101 / 57. 48.101
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 57.100 /  6. 57.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, matroska,webm, from 'C:\Users\Casa\Desktop\test\Fallout4\Fallout4.mkv':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    ENCODER         : Lavf57.48.101
  Duration: 00:01:00.04, start: 0.000000, bitrate: 1312107 kb/s
    Stream #0:0(eng): Video: ffv1 (FFV1 / 0x31564646), bgra, 1920x1080, SAR 1:1 DAR 16:9, 60 fps, 60 tbr, 1k tbn, 1k tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 ffv1
      DURATION        : 00:01:00.037000000
    Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      ENCODER         : Lavc57.54.101 libvorbis
      DURATION        : 00:01:00.036000000
[libvpx @ 0000011644dbcf20] v1.6.0-353-g3a98508
[libopus @ 0000011644dbef20] No bit rate set. Defaulting to 96000 bps.
[webm @ 0000011644dbb280] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
    Last message repeated 1 times
Output #0, webm, to 'C:\Users\Casa\Desktop\test\Fallout4\test_1.0_vp8.webm':
  Metadata:
    COMPATIBLE_BRANDS: qt
    MAJOR_BRAND     : qt
    MINOR_VERSION   : 537199360
    encoder         : Lavf57.48.101
    Stream #0:0(eng): Video: vp8 (libvpx), yuva420p(bt709/unknown/unknown), 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 1000 kb/s, 60 fps, 1k tbn, 60 tbc (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      DURATION        : 00:01:00.037000000
      encoder         : Lavc57.54.101 libvpx
    Side data:
      cpb: bitrate max/min/avg: 0/0/1000000 buffer size: 0 vbv_delay: -1
    Stream #0:1(eng): Audio: opus (libopus), 48000 Hz, stereo, flt, delay 312, padding 0, 96 kb/s (default)
    Metadata:
      HANDLER_NAME    : Apple Alias Data Handler
      TIMECODE        : 00:00:00:00
      DURATION        : 00:01:00.036000000
      encoder         : Lavc57.54.101 libopus
Stream mapping:
  Stream #0:0 -> #0:0 (ffv1 (native) -> vp8 (libvpx))
  Stream #0:1 -> #0:1 (vorbis (native) -> opus (libopus))
Press [q] to stop, [?] for help
frame= 3602 fps=5.8 q=0.0 Lsize=   24709kB time=00:01:00.05 bitrate=3370.4kbits/s speed=0.0962x
video:23042kB audio:684kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 4.143552%

using x264, vp9 works, as with other sources too

Replying to cehoyos:

I cannot use the bash script you uploaded.
To make this a valid ticket, please provide one (or more if necessary) FFmpeg command line including the complete, uncut console output here in the ticket, do not use external resources.

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:3 by MasterBlatter, 8 years ago

I re-checked x265 and it works too

in reply to:  2 comment:4 by Carl Eugen Hoyos, 8 years ago

Replying to MasterBlatter:

ffmpeg version N-81490-g2bc69cb-ga37e6dd+1 Copyright (c) 2000-2016 the FFmpeg developers

Do you know how this version string can be produced? I get N-81489-ga37e6dd here.

Do you only get broken output for test_1.0_vp8.webm if you encode another file before?

comment:5 by MasterBlatter, 8 years ago

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:6 by MasterBlatter, 8 years ago

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:7 by MasterBlatter, 8 years ago

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:8 by MasterBlatter, 8 years ago

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:9 by MasterBlatter, 8 years ago

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:10 by MasterBlatter, 8 years ago

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:11 by MasterBlatter, 8 years ago

I compiled it with media-autobuild_suite

nope sometimes even the first file, as I notice using a single pass compression don't returns a broken output. but I'm not sure is a ffmpeg's fault or a libvpx's one.
test files which give broken results are both 1920x1080 bgra ffv1 mkv.
If you need files I can upload them.

I don't know why there was so much duplicates

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:12 by Carl Eugen Hoyos, 8 years ago

Keywords: libvpx added
Resolution: invalid
Status: newclosed

Your description indicates a hardware error (of possibly an error in libvpx) afaict.
If you disagree, please test vanilla (unpatched) FFmpeg before reopening this ticket.

comment:13 by MasterBlatter, 8 years ago

I tested it with Zeranoe's lastest x64 build (version N-81664-g6f062eb) on my pc and on my father's one, and I get bit-identical files with the same artifacts.
I also tested piping from ffmpeg to vpxenc.exe (the same compiled with media-autobuild_suite, so same libvpx as the non vanilla I used) with:

"ffmpeg.exe" -i test17.mkv -pix_fmt yuv420p -f rawvideo - | "vpxenc.exe" -t 8 --fpf="test2.log" -w 1920 -h 1080 --i420 --fps=60/1 --codec=vp9 --cpu-used=2 --good --end-usage=vbr --target-bitrate=500 --passes=2 --pass=1 --auto-alt-ref=1 --lag-in-frames=25 --color-space="bt709" -o NUL -
"ffmpeg.exe" -i test17.mkv -pix_fmt yuv420p -f rawvideo - | "vpxenc.exe" -t 8 --fpf="test2.log" -w 1920 -h 1080 --i420 --fps=60/1 --codec=vp9 --cpu-used=2 --good --end-usage=vbr --target-bitrate=500 --passes=2 --pass=2 --auto-alt-ref=1 --lag-in-frames=25 --color-space="bt709" -o test2.webm -

The file looks ok.

Version 0, edited 8 years ago by MasterBlatter (next)

comment:14 by Carl Eugen Hoyos, 8 years ago

Above you wrote that you get artefacts "sometimes" and after running several encodes, now they are identical in runs on different hardware.
If you can always reproduce the issue, please provide one (!) command line together with the complete, uncut condone output and one input sample that allows to reproduce the issue.

comment:15 by Carl Eugen Hoyos, 8 years ago

Component: undeterminedavcodec
Reproduced by developer: set
Summary: Corrupted like VP8 videovp8: auto-alt-ref does not work with transparency

Patch sent, work-around is to force -pix_fmt yuv420p.

$ ffmpeg -f lavfi -i testsrc=d=10 -auto-alt-ref 1 -pix_fmt yuva420p -vcodec vp8 -pass 1 -f null -
ffmpeg version N-81675-g5b509fa Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --enable-libvpx
  libavutil      55. 29.100 / 55. 29.100
  libavcodec     57. 56.100 / 57. 56.100
  libavformat    57. 49.100 / 57. 49.100
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 62.100 /  6. 62.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, lavfi, from 'testsrc=d=10':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
[libvpx @ 0x3732e80] v1.3.0
[null @ 0x3731c20] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf57.49.100
    Stream #0:0: Video: vp8 (libvpx), yuva420p, 320x240 [SAR 1:1 DAR 4:3], q=-1--1, 200 kb/s, 25 fps, 25 tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.56.100 libvpx
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> vp8 (libvpx))
Press [q] to stop, [?] for help
frame=  250 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A speed=   0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Output file is empty, nothing was encoded
$ ffmpeg -f lavfi -i testsrc=d=10 -auto-alt-ref 1 -pix_fmt yuva420p -vcodec vp8 -pass 2 out.webm
ffmpeg version N-81675-g5b509fa Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --enable-libvpx
  libavutil      55. 29.100 / 55. 29.100
  libavcodec     57. 56.100 / 57. 56.100
  libavformat    57. 49.100 / 57. 49.100
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 62.100 /  6. 62.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, lavfi, from 'testsrc=d=10':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
[libvpx @ 0x3dba420] v1.3.0
[webm @ 0x3db8c00] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, webm, to 'out.webm':
  Metadata:
    encoder         : Lavf57.49.100
    Stream #0:0: Video: vp8 (libvpx), yuva420p, 320x240 [SAR 1:1 DAR 4:3], q=-1--1, 200 kb/s, 25 fps, 1k tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.56.100 libvpx
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> vp8 (libvpx))
Press [q] to stop, [?] for help
frame=  250 fps=170 q=0.0 Lsize=     128kB time=00:00:09.96 bitrate= 105.5kbits/s speed=6.78x
video:110kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 16.137133%

comment:16 by Carl Eugen Hoyos, 8 years ago

Resolution: invalid
Status: closedreopened

comment:17 by MasterBlatter, 8 years ago

Yep I wasn't getting this kind of artifacts on the first run (is a batch of encodes at many bitrates), but after even on it (maybe coz I was testing with a 1 minute file and I cutted them to 2s?), but only with those brga files, not with yuv files nor using libx264 libx265 or libvpx-vp9.

I was no sure if it was an ffmpeg, an y4m decoder or a libvpx-vp8 bug.

I can confirm, without -lag-in-frames 1 or with -pix_fmt yuv420p the result file is OK.

Last edited 8 years ago by MasterBlatter (previous) (diff)

comment:18 by Carl Eugen Hoyos, 8 years ago

Resolution: fixed
Status: reopenedclosed

Should be "fixed" in 44bcb636c1a7052059330c3edbd900246e15ae60, thank you for the report!

Note: See TracTickets for help on using tickets.