JuliaIO / VideoIO.jl

Reading and writing of video files in Julia via ffmpeg
https://juliaio.github.io/VideoIO.jl/stable
Other
126 stars 53 forks source link

libx264 unwanted verbose output #312

Open IanButterworth opened 3 years ago

IanButterworth commented 3 years ago

I don't know whether this is a v0.9-related issue. I've seen it happen randomly before that.

Encoding throws unwanted things like this to stdout/stderr

[libx264 @ 0x7f1cf5d61480] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7f1cf5d61480] profile High 4:4:4 Predictive, level 5.1, 4:0:0, 8-bit
[libx264 @ 0x7f1cf5d61480] 64 - core 161 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=0 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
IanButterworth commented 3 years ago

This doesn't happen on MacOS

julia> using VideoIO

julia> imgstack = map(x->rand(UInt8, 200, 200), 1:10);

julia> VideoIO.save("video.mp4", imgstack)

julia> 

But does on ubuntu

julia> using VideoIO

julia> imgstack = map(x->rand(UInt8, 200, 200), 1:10);

julia> VideoIO.save("video.mp4", imgstack)
[libx264 @ 0xb9bd900] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0xb9bd900] profile High, level 1.2, 4:0:0, 8-bit
[libx264 @ 0xb9bd900] 264 - core 161 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=0 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=24 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

julia> 
IanButterworth commented 3 years ago

MacOS reacts to log level being set

julia> VideoIO.loglevel!(VideoIO.AVUtil.AV_LOG_DEBUG)
"VideoIO.AVUtil.AV_LOG_DEBUG"

julia> VideoIO.save("video.mp4", imgstack)
[libx264 @ 0x7fcd6fa57e00] using mv_range_thread = 24
[libx264 @ 0x7fcd6fa57e00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7fcd6fa57e00] profile High, level 1.2, 4:0:0, 8-bit
[libx264 @ 0x7fcd6fa57e00] 264 - core 161 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=0 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=24 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
[file @ 0x7fcd6dde4980] Setting default whitelist 'file,crypto,data'
[libx264 @ 0x7fcd7215b800] frame I:1     Avg QP:34.00  size: 16701
[libx264 @ 0x7fcd7215b800] frame P:9     Avg QP:34.00  size: 16194
[libx264 @ 0x7fcd7215b800] mb I  I16..4:  0.0%  0.0% 100.0%
[libx264 @ 0x7fcd7215b800] mb P  I16..4: 70.9%  0.0% 29.1%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip: 0.0%
[libx264 @ 0x7fcd7215b800] 8x8 transform intra:0.0%
[libx264 @ 0x7fcd7215b800] coded y intra: 96.8%
[libx264 @ 0x7fcd7215b800] i16 v,h,dc,p:  0%  0% 94%  6%
[libx264 @ 0x7fcd7215b800] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 13% 12% 27%  9%  8%  8%  8%  7%  7%
[libx264 @ 0x7fcd7215b800] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 0x7fcd7215b800] Weighted P-Frames: Y:0.0%
[libx264 @ 0x7fcd7215b800] kb/s:3119.02
[libx264 @ 0x7fcd6fa57e00] frame=   0 QP=34.00 NAL=3 Slice:I Poc:0   I:169  P:0    SKIP:0    size=16701 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   1 QP=34.00 NAL=2 Slice:P Poc:2   I:169  P:0    SKIP:0    size=16181 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   2 QP=34.00 NAL=2 Slice:P Poc:4   I:169  P:0    SKIP:0    size=16169 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   3 QP=34.00 NAL=2 Slice:P Poc:6   I:169  P:0    SKIP:0    size=16191 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   4 QP=34.00 NAL=2 Slice:P Poc:8   I:169  P:0    SKIP:0    size=16177 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   5 QP=34.00 NAL=2 Slice:P Poc:10  I:169  P:0    SKIP:0    size=16205 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   6 QP=34.00 NAL=2 Slice:P Poc:12  I:169  P:0    SKIP:0    size=16194 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   7 QP=33.99 NAL=2 Slice:P Poc:14  I:169  P:0    SKIP:0    size=16245 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   8 QP=34.00 NAL=2 Slice:P Poc:16  I:169  P:0    SKIP:0    size=16190 bytes
[libx264 @ 0x7fcd6fa57e00] frame=   9 QP=34.00 NAL=2 Slice:P Poc:18  I:169  P:0    SKIP:0    size=16196 bytes
Not writing 'clli' atom. No content light level info.
Not writing 'mdcv' atom. Missing mastering metadata.
[AVIOContext @ 0x7fcd7b97f100] Statistics: 2 seeks, 4 writeouts

julia> VideoIO.loglevel!(VideoIO.AVUtil.AV_LOG_PANIC)
"VideoIO.AVUtil.AV_LOG_PANIC"

julia> VideoIO.save("video.mp4", imgstack)

julia> 

Ubuntu doesn't react

julia> VideoIO.loglevel!(VideoIO.AVUtil.AV_LOG_DEBUG
"VideoIO.AVUtil.AV_LOG_DEBUG"

julia> VideoIO.save("video.mp4", imgstack)
[libx264 @ 0x9b5dcc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x9b5dcc0] profile High, level 1.2, 4:0:0, 8-bit
[libx264 @ 0x9b5dcc0] 264 - core 161 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=0 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=24 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

julia> VideoIO.loglevel!(VideoIO.AVUtil.AV_LOG_PANIC)
"VideoIO.AVUtil.AV_LOG_PANIC"

julia> VideoIO.save("video.mp4", imgstack)
[libx264 @ 0xbaf70c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0xbaf70c0] profile High, level 1.2, 4:0:0, 8-bit
[libx264 @ 0xbaf70c0] 264 - core 161 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=0 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=24 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

julia>