Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#7093 closed defect (wontfix)

Incorrect colors in showwaves filter

Reported by: nanook21 Owned by:
Priority: normal Component: undetermined
Version: unspecified Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:

When using the showwaves filter with a specified color, there are parts of the waveform that are gray instead of respecting the color value. This can be seen in this screenshot here:

http://hostonfiber.com/screenshot_430.png

How to reproduce:

% ffmpeg -y -i https://post.futurimedia.com/cknopost/playlist/dl/1.aac -i https://s3.amazonaws.com/jpbg-public/audiogram-now-rachel-jointheconversation.jpg -filter_complex '[0:a]aformat=sample_fmts=s16:sample_rates=4410:channel_layouts=mono,compand,showwaves=size=260x160:mode=cline:rate=10:colors=#68b847[fg];[1:v][fg]overlay=60:150,format=yuv420p[v]' -map "[v]" -map 0:a -c:v libx264 -r 10 -c:a copy -r 10 -f mp4 -movflags +faststart test.mp4

ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.4.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --disable-jack --enable-gpl --enable-libfreetype --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma

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

Change History (6)

comment:1 by Carl Eugen Hoyos, 6 years ago

Version: 3.2.4unspecified

Please test current FFmpeg git head and provide the command line you tested together with the complete, uncut console output to make this a valid ticket.

comment:2 by nanook21, 6 years ago

The same thing happens on the latest version in git.

Here is the full log:

/usr/local/bin/ffmpeg -y -i https://post.futurimedia.com/cknopost/playlist/dl/1.aac -i https://s3.amazonaws.com/jpbg-public/audiogram-now-rachel-jointheconversation.jpg -filter_complex '[0:a]aformat=sample_fmts=s16:sample_rates=4410:channel_layouts=mono,compand,showwaves=size=260x160:mode=cline:rate=10:colors=#68b847[fg];[1:v][fg]overlay=60:150,format=yuv420p[v]' -map "[v]" -map 0:a -c:v libx264 -r 10 -c:a copy -r 10 -f mp4 -movflags +faststart test.mp4
ffmpeg version N-90378-ge4eaaf7bf6 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
  configuration: --enable-shared --enable-gpl --enable-libfreetype --enable-libmp3lame --enable-libx264
  libavutil      56. 11.100 / 56. 11.100
  libavcodec     58. 14.100 / 58. 14.100
  libavformat    58. 10.100 / 58. 10.100
  libavdevice    58.  2.100 / 58.  2.100
  libavfilter     7. 13.100 /  7. 13.100
  libswscale      5.  0.102 /  5.  0.102
  libswresample   3.  0.101 /  3.  0.101
  libpostproc    55.  0.100 / 55.  0.100
[aac @ 0x7f9091009400] Estimating duration from bitrate, this may be inaccurate
Input #0, aac, from 'https://post.futurimedia.com/cknopost/playlist/dl/1.aac':
  Duration: 00:00:37.63, bitrate: 47 kb/s
    Stream #0:0: Audio: aac (HE-AAC), 44100 Hz, stereo, fltp, 47 kb/s
Input #1, image2, from 'https://s3.amazonaws.com/jpbg-public/audiogram-now-rachel-jointheconversation.jpg':
  Duration: 00:00:00.04, start: 0.000000, bitrate: 10592 kb/s
    Stream #1:0: Video: mjpeg, yuvj444p(pc, bt470bg/unknown/unknown), 754x424 [SAR 143:143 DAR 377:212], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 (aac) -> aformat
  Stream #1:0 (mjpeg) -> overlay:main
  format -> Stream #0:0 (libx264)
  Stream #0:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[swscaler @ 0x7f9091050600] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0x7f9091036000] using SAR=1/1
[libx264 @ 0x7f9091036000] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7f9091036000] profile High, level 2.2
[libx264 @ 0x7f9091036000] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=10 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'test.mp4':
  Metadata:
    encoder         : Lavf58.10.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 754x424 [SAR 1:1 DAR 377:212], q=-1--1, 10 fps, 10240 tbn, 10 tbc (default)
    Metadata:
      encoder         : Lavc58.14.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1: Audio: aac (HE-AAC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 47 kb/s
[aac @ 0x7f9091009400] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[mp4 @ 0x7f909100da00] Starting second pass: moving the moov atom to the beginning of the file0 speed=19.8x    
frame=  361 fps=179 q=-1.0 Lsize=    1135kB time=00:00:36.03 bitrate= 258.1kbits/s dup=54 drop=0 speed=17.9x    
video:911kB audio:217kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.647001%
[libx264 @ 0x7f9091036000] frame I:2     Avg QP:13.28  size: 34174
[libx264 @ 0x7f9091036000] frame P:106   Avg QP:22.46  size:  3070
[libx264 @ 0x7f9091036000] frame B:253   Avg QP:28.25  size:  2128
[libx264 @ 0x7f9091036000] consecutive B-frames:  2.2%  9.4% 10.8% 77.6%
[libx264 @ 0x7f9091036000] mb I  I16..4: 26.5% 55.4% 18.1%
[libx264 @ 0x7f9091036000] mb P  I16..4:  0.1%  1.8%  5.0%  P16..4:  1.2%  0.4%  0.3%  0.0%  0.0%    skip:91.1%
[libx264 @ 0x7f9091036000] mb B  I16..4:  0.1%  0.7%  3.0%  B16..8:  2.7%  0.5%  0.3%  direct: 0.1%  skip:92.6%  L0:55.9% L1:42.4% BI: 1.8%
[libx264 @ 0x7f9091036000] 8x8 transform intra:24.9% inter:5.2%
[libx264 @ 0x7f9091036000] coded y,uvDC,uvAC intra: 63.6% 61.8% 58.6% inter: 0.7% 0.7% 0.6%
[libx264 @ 0x7f9091036000] i16 v,h,dc,p: 76% 21%  1%  1%
[libx264 @ 0x7f9091036000] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 17% 16% 58%  1%  1%  1%  1%  3%  1%
[libx264 @ 0x7f9091036000] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 66%  9% 15%  2%  1%  3%  1%  3%  1%
[libx264 @ 0x7f9091036000] i8c dc,h,v,p: 46% 19% 22% 12%
[libx264 @ 0x7f9091036000] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x7f9091036000] ref P L0: 61.0%  3.9% 22.3% 12.8%
[libx264 @ 0x7f9091036000] ref B L0: 65.5% 27.7%  6.7%
[libx264 @ 0x7f9091036000] ref B L1: 91.3%  8.7%
[libx264 @ 0x7f9091036000] kb/s:206.60

comment:3 by Elon Musk, 6 years ago

Resolution: wontfix
Status: newclosed

It is designed that way. Use split channel option if you do not like it.

comment:4 by Elon Musk, 6 years ago

I added new option, which basically make it work even with channel split disabled.

comment:5 by nanook21, 6 years ago

Thanks! What is the option named?

comment:6 by Elon Musk, 6 years ago

draw=full

Note: See TracTickets for help on using tickets.