Opened 19 months ago
Last modified 4 months ago
#10430 new defect
Wrong yuv420p to rgb24 result on macOS m1 arm64
Reported by: | lja | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | swscale |
Version: | 6.0 | Keywords: | yuv2rgb scale |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Hi
Summary of the bug:
For some unit tests on a project I ended up seeing different results when decoding a constant gray sample video from mpeg4 to rgb24 depending if I'm on macOS x86_64 or arm64.
I generated the sample video sample_gray_100.avi
from a constant gray value RGB[100,100,100] (0x646464 in hex). I first confirmed that playing the video on VLC for both architectures display the same correct output of the expected constant gray 0x646464
value.
Here is how to reproduce, testing on a single gray frame of size 2x2:
% ffmpeg -v 9 -loglevel 99 -i sample_gray_100.avi -vf select='eq(n\,1)',showinfo -f rawvideo -pix_fmt rgb24 -sws_flags print_info - | hexdump
Below are the two outputs on macOS x86_64 and arm64
macOS x86_64:
ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers built with Apple clang version 14.0.0 (clang-1400.0.29.202) configuration: --prefix=/usr/local/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox libavutil 58. 2.100 / 58. 2.100 libavcodec 60. 3.100 / 60. 3.100 libavformat 60. 3.100 / 60. 3.100 libavdevice 60. 1.100 / 60. 1.100 libavfilter 9. 3.100 / 9. 3.100 libswscale 7. 1.100 / 7. 1.100 libswresample 4. 10.100 / 4. 10.100 libpostproc 57. 1.100 / 57. 1.100 Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'. Reading option '-i' ... matched as input url with argument 'sample_gray_100.avi'. Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'select=eq(n\,1),showinfo'. Reading option '-f' ... matched as option 'f' (force format) with argument 'rawvideo'. Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'rgb24'. Reading option '-sws_flags' ... matched as AVOption 'sws_flags' with argument 'print_info'. Reading option '-' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument 9. Successfully parsed a group of options. Parsing a group of options: input url sample_gray_100.avi. Successfully parsed a group of options. Opening an input file: sample_gray_100.avi. [NULL @ 0x7f85d87054c0] Opening 'sample_gray_100.avi' for reading [file @ 0x7f85d87057c0] Setting default whitelist 'file,crypto,data' Probing avi score:100 size:2048 [avi @ 0x7f85d87054c0] Format avi probed with size=2048 and score=100 [avi @ 0x7f85d9004080] use odml:1 [avi @ 0x7f85d87054c0] pos:14 tag: tag=LIST size=0x11ec [avi @ 0x7f85d87054c0] pos:18 list: tag=hdrl size=0x0 [avi @ 0x7f85d87054c0] pos:20 tag: tag=avih size=0x38 [avi @ 0x7f85d87054c0] pos:60 tag: tag=LIST size=0x1094 [avi @ 0x7f85d87054c0] pos:64 list: tag=strl size=0x0 [avi @ 0x7f85d87054c0] pos:6C tag: tag=strh size=0x38 [avi @ 0x7f85d87054c0] pos:74 strh: tag=vids size=0xffffffff [avi @ 0x7f85d87054c0] 30 1 0 [avi @ 0x7f85d87054c0] pos:AC tag: tag=strf size=0x28 [avi @ 0x7f85d87054c0] pos:D4 video: tag=DIVX size=0x0 [avi @ 0x7f85d87054c0] pos:DC tag: tag=JUNK size=0x1018 [avi @ 0x7f85d87054c0] pos:10FC tag: tag=JUNK size=0x104 [avi @ 0x7f85d87054c0] pos:1208 tag: tag=LIST size=0x1a [avi @ 0x7f85d87054c0] pos:120C list: tag=INFO size=0x0 [avi @ 0x7f85d87054c0] pos:122A tag: tag=JUNK size=0x3f8 [avi @ 0x7f85d87054c0] pos:162A tag: tag=LIST size=0x28c [avi @ 0x7f85d87054c0] pos:162E list: tag=movi size=0x0 [avi @ 0x7f85d87054c0] movi end=18b6 [avi @ 0x7f85d87054c0] movi_end=0x18b6 [avi @ 0x7f85d87054c0] 0: tag=0x63643030 flags=0x10 pos=0x4 len=64/64 cum_len=0 [avi @ 0x7f85d87054c0] 1: tag=0x63643030 flags=0x0 pos=0x4c len=8/8 cum_len=1 [avi @ 0x7f85d87054c0] 2: tag=0x63643030 flags=0x0 pos=0x5c len=8/8 cum_len=2 [avi @ 0x7f85d87054c0] 3: tag=0x63643030 flags=0x0 pos=0x6c len=8/8 cum_len=3 [avi @ 0x7f85d87054c0] 4: tag=0x63643030 flags=0x0 pos=0x7c len=8/8 cum_len=4 [avi @ 0x7f85d87054c0] 5: tag=0x63643030 flags=0x0 pos=0x8c len=8/8 cum_len=5 [avi @ 0x7f85d87054c0] 6: tag=0x63643030 flags=0x0 pos=0x9c len=8/8 cum_len=6 [avi @ 0x7f85d87054c0] 7: tag=0x63643030 flags=0x0 pos=0xac len=8/8 cum_len=7 [avi @ 0x7f85d87054c0] 8: tag=0x63643030 flags=0x0 pos=0xbc len=8/8 cum_len=8 [avi @ 0x7f85d87054c0] 9: tag=0x63643030 flags=0x0 pos=0xcc len=8/8 cum_len=9 [avi @ 0x7f85d87054c0] 10: tag=0x63643030 flags=0x0 pos=0xdc len=8/8 cum_len=10 [avi @ 0x7f85d87054c0] 11: tag=0x63643030 flags=0x0 pos=0xec len=8/8 cum_len=11 [avi @ 0x7f85d87054c0] 12: tag=0x63643030 flags=0x10 pos=0xfc len=64/64 cum_len=12 [avi @ 0x7f85d87054c0] 13: tag=0x63643030 flags=0x0 pos=0x144 len=8/8 cum_len=13 [avi @ 0x7f85d87054c0] 14: tag=0x63643030 flags=0x0 pos=0x154 len=8/8 cum_len=14 [avi @ 0x7f85d87054c0] 15: tag=0x63643030 flags=0x0 pos=0x164 len=8/8 cum_len=15 [avi @ 0x7f85d87054c0] 16: tag=0x63643030 flags=0x0 pos=0x174 len=8/8 cum_len=16 [avi @ 0x7f85d87054c0] 17: tag=0x63643030 flags=0x0 pos=0x184 len=8/8 cum_len=17 [avi @ 0x7f85d87054c0] 18: tag=0x63643030 flags=0x0 pos=0x194 len=8/8 cum_len=18 [avi @ 0x7f85d87054c0] 19: tag=0x63643030 flags=0x0 pos=0x1a4 len=8/8 cum_len=19 [avi @ 0x7f85d87054c0] 20: tag=0x63643030 flags=0x0 pos=0x1b4 len=8/8 cum_len=20 [avi @ 0x7f85d87054c0] 21: tag=0x63643030 flags=0x0 pos=0x1c4 len=8/8 cum_len=21 [avi @ 0x7f85d87054c0] 22: tag=0x63643030 flags=0x0 pos=0x1d4 len=8/8 cum_len=22 [avi @ 0x7f85d87054c0] 23: tag=0x63643030 flags=0x0 pos=0x1e4 len=8/8 cum_len=23 [avi @ 0x7f85d87054c0] 24: tag=0x63643030 flags=0x10 pos=0x1f4 len=64/64 cum_len=24 [avi @ 0x7f85d87054c0] 25: tag=0x63643030 flags=0x0 pos=0x23c len=8/8 cum_len=25 [avi @ 0x7f85d87054c0] 26: tag=0x63643030 flags=0x0 pos=0x24c len=8/8 cum_len=26 [avi @ 0x7f85d87054c0] 27: tag=0x63643030 flags=0x0 pos=0x25c len=8/8 cum_len=27 [avi @ 0x7f85d87054c0] 28: tag=0x63643030 flags=0x0 pos=0x26c len=8/8 cum_len=28 [avi @ 0x7f85d87054c0] 29: tag=0x63643030 flags=0x0 pos=0x27c len=8/8 cum_len=29 [avi @ 0x7f85d87054c0] Before avformat_find_stream_info() pos: 5678 bytes read:6814 seeks:0 nb_streams:1 [mpeg4 @ 0x7f85d9004640] Format yuv420p chosen by get_format(). [avi @ 0x7f85d87054c0] All info found [avi @ 0x7f85d87054c0] stream 0: start_time: 0 duration: 1 [avi @ 0x7f85d87054c0] format: start_time: 0 duration: 1 (estimate from stream) bitrate=54 kb/s [avi @ 0x7f85d87054c0] After avformat_find_stream_info() pos: 5750 bytes read:6814 seeks:0 frames:1 Input #0, avi, from 'sample_gray_100.avi': Metadata: software : Lavf59.27.100 Duration: 00:00:01.00, start: 0.000000, bitrate: 54 kb/s Stream #0:0, 1, 1/30: Video: mpeg4 (Simple Profile), 1 reference frame (DIVX / 0x58564944), yuv420p(left), 2x2 [SAR 1:1 DAR 1:1], 0/1, 30 fps, 30 tbr, 30 tbn Successfully opened the file. Parsing a group of options: output url -. Applying option vf (set video filters) with argument select=eq(n\,1),showinfo. Applying option f (force format) with argument rawvideo. Applying option pix_fmt (set pixel format) with argument rgb24. Successfully parsed a group of options. Opening an output file: -. [pipe @ 0x7f85d91069c0] Setting default whitelist 'crypto,data' Successfully opened the file. detected 8 logical cores Stream mapping: Stream #0:0 -> #0:0 (mpeg4 (native) -> rawvideo (native)) Press [q] to stop, [?] for help [vost#0:0/rawvideo @ 0x7f85d9105cc0] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) Last message repeated 1 times [mpeg4 @ 0x7f85d9107500] Format yuv420p chosen by get_format(). [vost#0:0/rawvideo @ 0x7f85d9105cc0] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) Last message repeated 6 times [AVFilterGraph @ 0x7f85d9118400] Setting 'expr' to value 'eq(n,1)' [graph 0 input from stream 0:0 @ 0x7f85d9119040] Setting 'video_size' to value '2x2' [graph 0 input from stream 0:0 @ 0x7f85d9119040] Setting 'pix_fmt' to value '0' [graph 0 input from stream 0:0 @ 0x7f85d9119040] Setting 'time_base' to value '1/30' [graph 0 input from stream 0:0 @ 0x7f85d9119040] Setting 'pixel_aspect' to value '1/1' [graph 0 input from stream 0:0 @ 0x7f85d9119040] Setting 'frame_rate' to value '30/1' [graph 0 input from stream 0:0 @ 0x7f85d9119040] w:2 h:2 pixfmt:yuv420p tb:1/30 fr:30/1 sar:1/1 [format @ 0x7f85d9119480] Setting 'pix_fmts' to value 'rgb24' [auto_scale_0 @ 0x7f85d9006280] Setting 'sws_flags' to value 'print_info' [auto_scale_0 @ 0x7f85d9006280] w:iw h:ih flags:'' interl:0 [format @ 0x7f85d9119480] auto-inserting filter 'auto_scale_0' between the filter 'Parsed_showinfo_1' and the filter 'format' [AVFilterGraph @ 0x7f85d9118400] query_formats: 5 queried, 4 merged, 1 already done, 0 delayed [Parsed_showinfo_1 @ 0x7f85d9118a00] config in time_base: 1/30, frame_rate: 30/1 [Parsed_showinfo_1 @ 0x7f85d9118a00] config out time_base: 0/0, frame_rate: 0/0 [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d9499000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d94a6000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d94b3000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d94c0000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d94cd000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d94da000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85d94e7000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85dc800000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x7f85d948c000] [swscaler @ 0x7f85dc80d000] using unscaled yuv420p -> rgb24 special converter [auto_scale_0 @ 0x7f85d9006280] w:2 h:2 fmt:yuv420p sar:1/1 -> w:2 h:2 fmt:rgb24 sar:1/1 flags:0x00001000 [Parsed_select_0 @ 0x7f85d9118680] n:0.000000 pts:0.000000 t:0.000000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [vost#0:0/rawvideo @ 0x7f85d9105cc0] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) [Parsed_select_0 @ 0x7f85d9118680] n:1.000000 pts:1.000000 t:0.033333 key:0 interlace_type:P pict_type:P scene:nan -> select:1.000000 select_out:0 [Parsed_showinfo_1 @ 0x7f85d9118a00] n: 0 pts: 1 pts_time:0.0333333 duration: 1 duration_time:0.0333333 pos: 5758 fmt:yuv420p sar:1/1 s:2x2 i:P iskey:0 type:P checksum:08AC0298 plane_checksum:[03FC0198 00800080 00800080] mean:[102 128 128] stdev:[0.0 0.0 0.0] [Parsed_showinfo_1 @ 0x7f85d9118a00] color_range:unknown color_space:unknown color_primaries:unknown color_trc:unknown Output #0, rawvideo, to 'pipe:': Metadata: software : Lavf59.27.100 encoder : Lavf60.3.100 Stream #0:0, 0, 1/30: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24(pc, gbr/unknown/unknown, progressive, left), 2x2 (0x0) [SAR 1:1 DAR 1:1], 0/1, q=2-31, 2 kb/s, 30 fps, 30 tbn Metadata: encoder : Lavc60.3.100 rawvideo [vost#0:0/rawvideo @ 0x7f85d9105cc0] Not duplicating 1 initial frames [Parsed_select_0 @ 0x7f85d9118680] n:2.000000 pts:2.000000 t:0.066667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:3.000000 pts:3.000000 t:0.100000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:4.000000 pts:4.000000 t:0.133333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:5.000000 pts:5.000000 t:0.166667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:6.000000 pts:6.000000 t:0.200000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:7.000000 pts:7.000000 t:0.233333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:8.000000 pts:8.000000 t:0.266667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:9.000000 pts:9.000000 t:0.300000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:10.000000 pts:10.000000 t:0.333333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:11.000000 pts:11.000000 t:0.366667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:12.000000 pts:12.000000 t:0.400000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:13.000000 pts:13.000000 t:0.433333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:14.000000 pts:14.000000 t:0.466667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:15.000000 pts:15.000000 t:0.500000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:16.000000 pts:16.000000 t:0.533333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:17.000000 pts:17.000000 t:0.566667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:18.000000 pts:18.000000 t:0.600000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:19.000000 pts:19.000000 t:0.633333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 EOF in input file 0 Terminating demuxer thread 0 [Parsed_select_0 @ 0x7f85d9118680] n:20.000000 pts:20.000000 t:0.666667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:21.000000 pts:21.000000 t:0.700000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:22.000000 pts:22.000000 t:0.733333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:23.000000 pts:23.000000 t:0.766667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:24.000000 pts:24.000000 t:0.800000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:25.000000 pts:25.000000 t:0.833333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:26.000000 pts:26.000000 t:0.866667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:27.000000 pts:27.000000 t:0.900000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:28.000000 pts:28.000000 t:0.933333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x7f85d9118680] n:29.000000 pts:29.000000 t:0.966667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [out_0_0 @ 0x7f85d9118f80] EOF on sink link out_0_0:default. No more output streams to write to, finishing. [out#0/rawvideo @ 0x7f85d9104700] All streams finished [out#0/rawvideo @ 0x7f85d9104700] Terminating muxer thread [AVIOContext @ 0x7f85d9106a80] Statistics: 12 bytes written, 0 seeks, 1 writeouts frame= 1 fps=0.0 q=-0.0 Lsize= 0kB time=00:00:00.03 bitrate= 2.9kbits/s speed=3.27x video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000% Input file #0 (sample_gray_100.avi): Input stream #0:0 (video): 30 packets read (408 bytes); 30 frames decoded; Total: 30 packets (408 bytes) demuxed Output file #0 (pipe:): Output stream #0:0 (video): 1 frames encoded; 1 packets muxed (12 bytes); Total: 1 packets (12 bytes) muxed 30 frames successfully decoded, 0 decoding errors [AVIOContext @ 0x7f85d8705980] Statistics: 6814 bytes read, 0 seeks 0000000 6464 6464 6464 6464 6464 6464 000000c
macOS arm64:
ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon libavutil 58. 2.100 / 58. 2.100 libavcodec 60. 3.100 / 60. 3.100 libavformat 60. 3.100 / 60. 3.100 libavdevice 60. 1.100 / 60. 1.100 libavfilter 9. 3.100 / 9. 3.100 libswscale 7. 1.100 / 7. 1.100 libswresample 4. 10.100 / 4. 10.100 libpostproc 57. 1.100 / 57. 1.100 Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'. Reading option '-i' ... matched as input url with argument 'sample_gray_100.avi'. Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'select=eq(n\,1),showinfo'. Reading option '-f' ... matched as option 'f' (force format) with argument 'rawvideo'. Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'rgb24'. Reading option '-sws_flags' ... matched as AVOption 'sws_flags' with argument 'print_info'. Reading option '-' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument 9. Successfully parsed a group of options. Parsing a group of options: input url sample_gray_100.avi. Successfully parsed a group of options. Opening an input file: sample_gray_100.avi. [NULL @ 0x143e05430] Opening 'sample_gray_100.avi' for reading [file @ 0x600003292780] Setting default whitelist 'file,crypto,data' Probing avi score:100 size:2048 [avi @ 0x143e05430] Format avi probed with size=2048 and score=100 [avi @ 0x600003292800] use odml:1 [avi @ 0x143e05430] pos:14 tag: tag=LIST size=0x11ec [avi @ 0x143e05430] pos:18 list: tag=hdrl size=0x0 [avi @ 0x143e05430] pos:20 tag: tag=avih size=0x38 [avi @ 0x143e05430] pos:60 tag: tag=LIST size=0x1094 [avi @ 0x143e05430] pos:64 list: tag=strl size=0x0 [avi @ 0x143e05430] pos:6C tag: tag=strh size=0x38 [avi @ 0x143e05430] pos:74 strh: tag=vids size=0xffffffff [avi @ 0x143e05430] 30 1 0 [avi @ 0x143e05430] pos:AC tag: tag=strf size=0x28 [avi @ 0x143e05430] pos:D4 video: tag=DIVX size=0x0 [avi @ 0x143e05430] pos:DC tag: tag=JUNK size=0x1018 [avi @ 0x143e05430] pos:10FC tag: tag=JUNK size=0x104 [avi @ 0x143e05430] pos:1208 tag: tag=LIST size=0x1a [avi @ 0x143e05430] pos:120C list: tag=INFO size=0x0 [avi @ 0x143e05430] pos:122A tag: tag=JUNK size=0x3f8 [avi @ 0x143e05430] pos:162A tag: tag=LIST size=0x28c [avi @ 0x143e05430] pos:162E list: tag=movi size=0x0 [avi @ 0x143e05430] movi end=18b6 [avi @ 0x143e05430] movi_end=0x18b6 [avi @ 0x143e05430] 0: tag=0x63643030 flags=0x10 pos=0x4 len=64/64 cum_len=0 [avi @ 0x143e05430] 1: tag=0x63643030 flags=0x0 pos=0x4c len=8/8 cum_len=1 [avi @ 0x143e05430] 2: tag=0x63643030 flags=0x0 pos=0x5c len=8/8 cum_len=2 [avi @ 0x143e05430] 3: tag=0x63643030 flags=0x0 pos=0x6c len=8/8 cum_len=3 [avi @ 0x143e05430] 4: tag=0x63643030 flags=0x0 pos=0x7c len=8/8 cum_len=4 [avi @ 0x143e05430] 5: tag=0x63643030 flags=0x0 pos=0x8c len=8/8 cum_len=5 [avi @ 0x143e05430] 6: tag=0x63643030 flags=0x0 pos=0x9c len=8/8 cum_len=6 [avi @ 0x143e05430] 7: tag=0x63643030 flags=0x0 pos=0xac len=8/8 cum_len=7 [avi @ 0x143e05430] 8: tag=0x63643030 flags=0x0 pos=0xbc len=8/8 cum_len=8 [avi @ 0x143e05430] 9: tag=0x63643030 flags=0x0 pos=0xcc len=8/8 cum_len=9 [avi @ 0x143e05430] 10: tag=0x63643030 flags=0x0 pos=0xdc len=8/8 cum_len=10 [avi @ 0x143e05430] 11: tag=0x63643030 flags=0x0 pos=0xec len=8/8 cum_len=11 [avi @ 0x143e05430] 12: tag=0x63643030 flags=0x10 pos=0xfc len=64/64 cum_len=12 [avi @ 0x143e05430] 13: tag=0x63643030 flags=0x0 pos=0x144 len=8/8 cum_len=13 [avi @ 0x143e05430] 14: tag=0x63643030 flags=0x0 pos=0x154 len=8/8 cum_len=14 [avi @ 0x143e05430] 15: tag=0x63643030 flags=0x0 pos=0x164 len=8/8 cum_len=15 [avi @ 0x143e05430] 16: tag=0x63643030 flags=0x0 pos=0x174 len=8/8 cum_len=16 [avi @ 0x143e05430] 17: tag=0x63643030 flags=0x0 pos=0x184 len=8/8 cum_len=17 [avi @ 0x143e05430] 18: tag=0x63643030 flags=0x0 pos=0x194 len=8/8 cum_len=18 [avi @ 0x143e05430] 19: tag=0x63643030 flags=0x0 pos=0x1a4 len=8/8 cum_len=19 [avi @ 0x143e05430] 20: tag=0x63643030 flags=0x0 pos=0x1b4 len=8/8 cum_len=20 [avi @ 0x143e05430] 21: tag=0x63643030 flags=0x0 pos=0x1c4 len=8/8 cum_len=21 [avi @ 0x143e05430] 22: tag=0x63643030 flags=0x0 pos=0x1d4 len=8/8 cum_len=22 [avi @ 0x143e05430] 23: tag=0x63643030 flags=0x0 pos=0x1e4 len=8/8 cum_len=23 [avi @ 0x143e05430] 24: tag=0x63643030 flags=0x10 pos=0x1f4 len=64/64 cum_len=24 [avi @ 0x143e05430] 25: tag=0x63643030 flags=0x0 pos=0x23c len=8/8 cum_len=25 [avi @ 0x143e05430] 26: tag=0x63643030 flags=0x0 pos=0x24c len=8/8 cum_len=26 [avi @ 0x143e05430] 27: tag=0x63643030 flags=0x0 pos=0x25c len=8/8 cum_len=27 [avi @ 0x143e05430] 28: tag=0x63643030 flags=0x0 pos=0x26c len=8/8 cum_len=28 [avi @ 0x143e05430] 29: tag=0x63643030 flags=0x0 pos=0x27c len=8/8 cum_len=29 [avi @ 0x143e05430] Before avformat_find_stream_info() pos: 5678 bytes read:6814 seeks:0 nb_streams:1 [mpeg4 @ 0x143e059f0] Format yuv420p chosen by get_format(). [avi @ 0x143e05430] All info found [avi @ 0x143e05430] stream 0: start_time: 0 duration: 1 [avi @ 0x143e05430] format: start_time: 0 duration: 1 (estimate from stream) bitrate=54 kb/s [avi @ 0x143e05430] After avformat_find_stream_info() pos: 5750 bytes read:6814 seeks:0 frames:1 Input #0, avi, from 'sample_gray_100.avi': Metadata: software : Lavf59.27.100 Duration: 00:00:01.00, start: 0.000000, bitrate: 54 kb/s Stream #0:0, 1, 1/30: Video: mpeg4 (Simple Profile), 1 reference frame (DIVX / 0x58564944), yuv420p(left), 2x2 [SAR 1:1 DAR 1:1], 0/1, 30 fps, 30 tbr, 30 tbn Successfully opened the file. Parsing a group of options: output url -. Applying option vf (set video filters) with argument select=eq(n\,1),showinfo. Applying option f (force format) with argument rawvideo. Applying option pix_fmt (set pixel format) with argument rgb24. Successfully parsed a group of options. Opening an output file: -. [pipe @ 0x6000037917a0] Setting default whitelist 'crypto,data' Successfully opened the file. detected 8 logical cores Stream mapping: Stream #0:0 -> #0:0 (mpeg4 (native) -> rawvideo (native)) Press [q] to stop, [?] for help [vost#0:0/rawvideo @ 0x143e07160] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) Last message repeated 1 times [mpeg4 @ 0x143e07fd0] Format yuv420p chosen by get_format(). [vost#0:0/rawvideo @ 0x143e07160] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) Last message repeated 6 times [AVFilterGraph @ 0x600003894180] Setting 'expr' to value 'eq(n,1)' [graph 0 input from stream 0:0 @ 0x600002b94210] Setting 'video_size' to value '2x2' [graph 0 input from stream 0:0 @ 0x600002b94210] Setting 'pix_fmt' to value '0' [graph 0 input from stream 0:0 @ 0x600002b94210] Setting 'time_base' to value '1/30' [graph 0 input from stream 0:0 @ 0x600002b94210] Setting 'pixel_aspect' to value '1/1' [graph 0 input from stream 0:0 @ 0x600002b94210] Setting 'frame_rate' to value '30/1' [graph 0 input from stream 0:0 @ 0x600002b94210] w:2 h:2 pixfmt:yuv420p tb:1/30 fr:30/1 sar:1/1 [format @ 0x600002b94370] Setting 'pix_fmts' to value 'rgb24' [auto_scale_0 @ 0x600002b94420] Setting 'sws_flags' to value 'print_info' [auto_scale_0 @ 0x600002b94420] w:iw h:ih flags:'' interl:0 [format @ 0x600002b94370] auto-inserting filter 'auto_scale_0' between the filter 'Parsed_showinfo_1' and the filter 'format' [AVFilterGraph @ 0x600003894180] query_formats: 5 queried, 4 merged, 1 already done, 0 delayed [Parsed_showinfo_1 @ 0x600002b94160] config in time_base: 1/30, frame_rate: 30/1 [Parsed_showinfo_1 @ 0x600002b94160] config out time_base: 0/0, frame_rate: 0/0 [swscaler @ 0x148018000] [swscaler @ 0x148028000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148028000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148038000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148038000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148048000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148048000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148058000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148058000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148068000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148068000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148078000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148078000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148088000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148088000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x148098000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x148098000] using unscaled yuv420p -> rgb24 special converter [swscaler @ 0x148018000] [swscaler @ 0x1480a8000] No accelerated colorspace conversion found from yuv420p to rgb24. [swscaler @ 0x148018000] [swscaler @ 0x1480a8000] using unscaled yuv420p -> rgb24 special converter [auto_scale_0 @ 0x600002b94420] w:2 h:2 fmt:yuv420p sar:1/1 -> w:2 h:2 fmt:rgb24 sar:1/1 flags:0x00001000 [Parsed_select_0 @ 0x600002b940b0] n:0.000000 pts:0.000000 t:0.000000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [vost#0:0/rawvideo @ 0x143e07160] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) [Parsed_select_0 @ 0x600002b940b0] n:1.000000 pts:1.000000 t:0.033333 key:0 interlace_type:P pict_type:P scene:nan -> select:1.000000 select_out:0 [Parsed_showinfo_1 @ 0x600002b94160] n: 0 pts: 1 pts_time:0.0333333 duration: 1 duration_time:0.0333333 pos: 5758 fmt:yuv420p sar:1/1 s:2x2 i:P iskey:0 type:P checksum:08AC0298 plane_checksum:[03FC0198 00800080 00800080] mean:[102 128 128] stdev:[0.0 0.0 0.0] [Parsed_showinfo_1 @ 0x600002b94160] color_range:unknown color_space:unknown color_primaries:unknown color_trc:unknown Output #0, rawvideo, to 'pipe:': Metadata: software : Lavf59.27.100 encoder : Lavf60.3.100 Stream #0:0, 0, 1/30: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24(pc, gbr/unknown/unknown, progressive, left), 2x2 (0x0) [SAR 1:1 DAR 1:1], 0/1, q=2-31, 2 kb/s, 30 fps, 30 tbn Metadata: encoder : Lavc60.3.100 rawvideo [vost#0:0/rawvideo @ 0x143e07160] Not duplicating 1 initial frames [Parsed_select_0 @ 0x600002b940b0] n:2.000000 pts:2.000000 t:0.066667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:3.000000 pts:3.000000 t:0.100000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:4.000000 pts:4.000000 t:0.133333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:5.000000 pts:5.000000 t:0.166667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:6.000000 pts:6.000000 t:0.200000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:7.000000 pts:7.000000 t:0.233333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:8.000000 pts:8.000000 t:0.266667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:9.000000 pts:9.000000 t:0.300000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:10.000000 pts:10.000000 t:0.333333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:11.000000 pts:11.000000 t:0.366667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:12.000000 pts:12.000000 t:0.400000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:13.000000 pts:13.000000 t:0.433333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:14.000000 pts:14.000000 t:0.466667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:15.000000 pts:15.000000 t:0.500000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:16.000000 pts:16.000000 t:0.533333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:17.000000 pts:17.000000 t:0.566667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:18.000000 pts:18.000000 t:0.600000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:19.000000 pts:19.000000 t:0.633333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 EOF in input file 0 Terminating demuxer thread 0 [Parsed_select_0 @ 0x600002b940b0] n:20.000000 pts:20.000000 t:0.666667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:21.000000 pts:21.000000 t:0.700000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:22.000000 pts:22.000000 t:0.733333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:23.000000 pts:23.000000 t:0.766667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:24.000000 pts:24.000000 t:0.800000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:25.000000 pts:25.000000 t:0.833333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:26.000000 pts:26.000000 t:0.866667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:27.000000 pts:27.000000 t:0.900000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:28.000000 pts:28.000000 t:0.933333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x600002b940b0] n:29.000000 pts:29.000000 t:0.966667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [out_0_0 @ 0x600002b942c0] EOF on sink link out_0_0:default. No more output streams to write to, finishing. [out#0/rawvideo @ 0x6000029903c0] All streams finished [out#0/rawvideo @ 0x6000029903c0] Terminating muxer thread [AVIOContext @ 0x143e07ba0] Statistics: 12 bytes written, 0 seeks, 1 writeouts frame= 1 fps=0.0 q=-0.0 Lsize= 0kB time=00:00:00.03 bitrate= 2.9kbits/s speed=13.8x video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000% Input file #0 (sample_gray_100.avi): Input stream #0:0 (video): 30 packets read (408 bytes); 30 frames decoded; Total: 30 packets (408 bytes) demuxed Output file #0 (pipe:): Output stream #0:0 (video): 1 frames encoded; 1 packets muxed (12 bytes); Total: 1 packets (12 bytes) muxed 30 frames successfully decoded, 0 decoding errors [AVIOContext @ 0x143e05230] Statistics: 6814 bytes read, 0 seeks 0000000 6262 6262 6262 6262 6262 6262 000000c
I can see that for both archs the frame YUV value is the same [102 128 128]
, but the RGB output differs: on x86_64 I get the expected 0x64
values, but 0x62
on arm64. I also confirmed the "wrong" behaviour on arm64 is observed on both n6.0
and n6.1-dev
The default chosen swscale converter for the 2 archs seems different, but are these results above normal/expected ?
Also, reading this answer, adding full_chroma_int+accurate_rnd
to the swscale options fix the output to the right 0x64
gray value on arm64, but this is not the default behaviour.
P.S: Could this be related to #979 ?
Attachments (1)
Change History (6)
by , 19 months ago
Attachment: | sample_gray_100.avi added |
---|
comment:1 by , 19 months ago
generated the sample video sample_gray_100.avi from a constant gray value RGB[100,100,100] (0x646464 in hex).
You need 10 bit YCbCr to preserve 8 bit RGB.
confirmed that playing the video on VLC for both architectures display the same correct output of the expected constant gray 0x646464 value.
You cannot. VLC has a lot of bugs, that makes this impossible. You need to use mpv.
can see that for both archs the frame YUV value is the same [102 128 128]
It is 420, not 444. So how can it be, not all pixels have all components? But sure, 102 will decode to 100 in full RGB.
P.S: Could this be related to #979 ?
No, that happens on with bgr from 420 and vice versa. Here we have rgb, not bgr.
full_chroma_int+accurate_rnd
Does only accurate_rnd fixes it?
comment:2 by , 19 months ago
I tried mpv on both x86_64 and arm64 and the displayed RGB value is to be [101 100 100] (checking on the frame with Apple digital color meter if that matters).
No, using accurate_rnd
only does not fix it. (neither does using full_chroma_int
only)
log below on arm64
$ ffmpeg -v 9 -loglevel 99 -i sample_gray_100.avi -vf select='eq(n\,1)',showinfo -f rawvideo -pix_fmt rgb24 -sws_flags accurate_rnd+print_info - | hexdump ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon libavutil 58. 2.100 / 58. 2.100 libavcodec 60. 3.100 / 60. 3.100 libavformat 60. 3.100 / 60. 3.100 libavdevice 60. 1.100 / 60. 1.100 libavfilter 9. 3.100 / 9. 3.100 libswscale 7. 1.100 / 7. 1.100 libswresample 4. 10.100 / 4. 10.100 libpostproc 57. 1.100 / 57. 1.100 Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'. Reading option '-i' ... matched as input url with argument 'sample_gray_100.avi'. Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'select=eq(n\,1),showinfo'. Reading option '-f' ... matched as option 'f' (force format) with argument 'rawvideo'. Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'rgb24'. Reading option '-sws_flags' ... matched as AVOption 'sws_flags' with argument 'accurate_rnd+print_info'. Reading option '-' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument 9. Successfully parsed a group of options. Parsing a group of options: input url sample_gray_100.avi. Successfully parsed a group of options. Opening an input file: sample_gray_100.avi. [NULL @ 0x144605410] Opening 'sample_gray_100.avi' for reading [file @ 0x600003f6a780] Setting default whitelist 'file,crypto,data' Probing avi score:100 size:2048 [avi @ 0x144605410] Format avi probed with size=2048 and score=100 [avi @ 0x600003f6a800] use odml:1 [avi @ 0x144605410] pos:14 tag: tag=LIST size=0x11ec [avi @ 0x144605410] pos:18 list: tag=hdrl size=0x0 [avi @ 0x144605410] pos:20 tag: tag=avih size=0x38 [avi @ 0x144605410] pos:60 tag: tag=LIST size=0x1094 [avi @ 0x144605410] pos:64 list: tag=strl size=0x0 [avi @ 0x144605410] pos:6C tag: tag=strh size=0x38 [avi @ 0x144605410] pos:74 strh: tag=vids size=0xffffffff [avi @ 0x144605410] 30 1 0 [avi @ 0x144605410] pos:AC tag: tag=strf size=0x28 [avi @ 0x144605410] pos:D4 video: tag=DIVX size=0x0 [avi @ 0x144605410] pos:DC tag: tag=JUNK size=0x1018 [avi @ 0x144605410] pos:10FC tag: tag=JUNK size=0x104 [avi @ 0x144605410] pos:1208 tag: tag=LIST size=0x1a [avi @ 0x144605410] pos:120C list: tag=INFO size=0x0 [avi @ 0x144605410] pos:122A tag: tag=JUNK size=0x3f8 [avi @ 0x144605410] pos:162A tag: tag=LIST size=0x28c [avi @ 0x144605410] pos:162E list: tag=movi size=0x0 [avi @ 0x144605410] movi end=18b6 [avi @ 0x144605410] movi_end=0x18b6 [avi @ 0x144605410] 0: tag=0x63643030 flags=0x10 pos=0x4 len=64/64 cum_len=0 [avi @ 0x144605410] 1: tag=0x63643030 flags=0x0 pos=0x4c len=8/8 cum_len=1 [avi @ 0x144605410] 2: tag=0x63643030 flags=0x0 pos=0x5c len=8/8 cum_len=2 [avi @ 0x144605410] 3: tag=0x63643030 flags=0x0 pos=0x6c len=8/8 cum_len=3 [avi @ 0x144605410] 4: tag=0x63643030 flags=0x0 pos=0x7c len=8/8 cum_len=4 [avi @ 0x144605410] 5: tag=0x63643030 flags=0x0 pos=0x8c len=8/8 cum_len=5 [avi @ 0x144605410] 6: tag=0x63643030 flags=0x0 pos=0x9c len=8/8 cum_len=6 [avi @ 0x144605410] 7: tag=0x63643030 flags=0x0 pos=0xac len=8/8 cum_len=7 [avi @ 0x144605410] 8: tag=0x63643030 flags=0x0 pos=0xbc len=8/8 cum_len=8 [avi @ 0x144605410] 9: tag=0x63643030 flags=0x0 pos=0xcc len=8/8 cum_len=9 [avi @ 0x144605410] 10: tag=0x63643030 flags=0x0 pos=0xdc len=8/8 cum_len=10 [avi @ 0x144605410] 11: tag=0x63643030 flags=0x0 pos=0xec len=8/8 cum_len=11 [avi @ 0x144605410] 12: tag=0x63643030 flags=0x10 pos=0xfc len=64/64 cum_len=12 [avi @ 0x144605410] 13: tag=0x63643030 flags=0x0 pos=0x144 len=8/8 cum_len=13 [avi @ 0x144605410] 14: tag=0x63643030 flags=0x0 pos=0x154 len=8/8 cum_len=14 [avi @ 0x144605410] 15: tag=0x63643030 flags=0x0 pos=0x164 len=8/8 cum_len=15 [avi @ 0x144605410] 16: tag=0x63643030 flags=0x0 pos=0x174 len=8/8 cum_len=16 [avi @ 0x144605410] 17: tag=0x63643030 flags=0x0 pos=0x184 len=8/8 cum_len=17 [avi @ 0x144605410] 18: tag=0x63643030 flags=0x0 pos=0x194 len=8/8 cum_len=18 [avi @ 0x144605410] 19: tag=0x63643030 flags=0x0 pos=0x1a4 len=8/8 cum_len=19 [avi @ 0x144605410] 20: tag=0x63643030 flags=0x0 pos=0x1b4 len=8/8 cum_len=20 [avi @ 0x144605410] 21: tag=0x63643030 flags=0x0 pos=0x1c4 len=8/8 cum_len=21 [avi @ 0x144605410] 22: tag=0x63643030 flags=0x0 pos=0x1d4 len=8/8 cum_len=22 [avi @ 0x144605410] 23: tag=0x63643030 flags=0x0 pos=0x1e4 len=8/8 cum_len=23 [avi @ 0x144605410] 24: tag=0x63643030 flags=0x10 pos=0x1f4 len=64/64 cum_len=24 [avi @ 0x144605410] 25: tag=0x63643030 flags=0x0 pos=0x23c len=8/8 cum_len=25 [avi @ 0x144605410] 26: tag=0x63643030 flags=0x0 pos=0x24c len=8/8 cum_len=26 [avi @ 0x144605410] 27: tag=0x63643030 flags=0x0 pos=0x25c len=8/8 cum_len=27 [avi @ 0x144605410] 28: tag=0x63643030 flags=0x0 pos=0x26c len=8/8 cum_len=28 [avi @ 0x144605410] 29: tag=0x63643030 flags=0x0 pos=0x27c len=8/8 cum_len=29 [avi @ 0x144605410] Before avformat_find_stream_info() pos: 5678 bytes read:6814 seeks:0 nb_streams:1 [mpeg4 @ 0x1446059d0] Format yuv420p chosen by get_format(). [avi @ 0x144605410] All info found [avi @ 0x144605410] stream 0: start_time: 0 duration: 1 [avi @ 0x144605410] format: start_time: 0 duration: 1 (estimate from stream) bitrate=54 kb/s [avi @ 0x144605410] After avformat_find_stream_info() pos: 5750 bytes read:6814 seeks:0 frames:1 Input #0, avi, from 'sample_gray_100.avi': Metadata: software : Lavf59.27.100 Duration: 00:00:01.00, start: 0.000000, bitrate: 54 kb/s Stream #0:0, 1, 1/30: Video: mpeg4 (Simple Profile), 1 reference frame (DIVX / 0x58564944), yuv420p(left), 2x2 [SAR 1:1 DAR 1:1], 0/1, 30 fps, 30 tbr, 30 tbn Successfully opened the file. Parsing a group of options: output url -. Applying option vf (set video filters) with argument select=eq(n\,1),showinfo. Applying option f (force format) with argument rawvideo. Applying option pix_fmt (set pixel format) with argument rgb24. Successfully parsed a group of options. Opening an output file: -. [pipe @ 0x600003a699d0] Setting default whitelist 'crypto,data' Successfully opened the file. detected 8 logical cores Stream mapping: Stream #0:0 -> #0:0 (mpeg4 (native) -> rawvideo (native)) Press [q] to stop, [?] for help [vost#0:0/rawvideo @ 0x144607140] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) Last message repeated 1 times [mpeg4 @ 0x144607fb0] Format yuv420p chosen by get_format(). [vost#0:0/rawvideo @ 0x144607140] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) Last message repeated 6 times [AVFilterGraph @ 0x600003568900] Setting 'expr' to value 'eq(n,1)' [graph 0 input from stream 0:0 @ 0x60000266c160] Setting 'video_size' to value '2x2' [graph 0 input from stream 0:0 @ 0x60000266c160] Setting 'pix_fmt' to value '0' [graph 0 input from stream 0:0 @ 0x60000266c160] Setting 'time_base' to value '1/30' [graph 0 input from stream 0:0 @ 0x60000266c160] Setting 'pixel_aspect' to value '1/1' [graph 0 input from stream 0:0 @ 0x60000266c160] Setting 'frame_rate' to value '30/1' [graph 0 input from stream 0:0 @ 0x60000266c160] w:2 h:2 pixfmt:yuv420p tb:1/30 fr:30/1 sar:1/1 [format @ 0x60000266c2c0] Setting 'pix_fmts' to value 'rgb24' [auto_scale_0 @ 0x60000266c370] Setting 'sws_flags' to value 'accurate_rnd+print_info' [auto_scale_0 @ 0x60000266c370] w:iw h:ih flags:'' interl:0 [format @ 0x60000266c2c0] auto-inserting filter 'auto_scale_0' between the filter 'Parsed_showinfo_1' and the filter 'format' [AVFilterGraph @ 0x600003568900] query_formats: 5 queried, 4 merged, 1 already done, 0 delayed [Parsed_showinfo_1 @ 0x60000266c0b0] config in time_base: 1/30, frame_rate: 30/1 [Parsed_showinfo_1 @ 0x60000266c0b0] config out time_base: 0/0, frame_rate: 0/0 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148028000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148028000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148028000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148028000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148038000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148038000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148038000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148038000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148048000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148048000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148048000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148048000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148058000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148058000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148058000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148058000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148068000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148068000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148068000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148068000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148078000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148078000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148078000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148078000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148088000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148088000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148088000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148088000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x148098000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x148098000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x148098000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x148098000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 SwScaler: reducing / aligning filtersize 1 -> 4 Last message repeated 1 times SwScaler: reducing / aligning filtersize 1 -> 2 Last message repeated 1 times [swscaler @ 0x148018000] [swscaler @ 0x1480a8000] bicubic scaler, from yuv420p to rgb24 using C [swscaler @ 0x148018000] [swscaler @ 0x1480a8000] 2x2 -> 2x2 [swscaler @ 0x148018000] [swscaler @ 0x1480a8000] lum srcW=2 srcH=2 dstW=2 dstH=2 xInc=65536 yInc=65536 [swscaler @ 0x148018000] [swscaler @ 0x1480a8000] chr srcW=1 srcH=1 dstW=1 dstH=2 xInc=65536 yInc=32768 [auto_scale_0 @ 0x60000266c370] w:2 h:2 fmt:yuv420p sar:1/1 -> w:2 h:2 fmt:rgb24 sar:1/1 flags:0x00041000 [Parsed_select_0 @ 0x60000266c000] n:0.000000 pts:0.000000 t:0.000000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [vost#0:0/rawvideo @ 0x144607140] cur_dts is invalid [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) [Parsed_select_0 @ 0x60000266c000] n:1.000000 pts:1.000000 t:0.033333 key:0 interlace_type:P pict_type:P scene:nan -> select:1.000000 select_out:0 [Parsed_showinfo_1 @ 0x60000266c0b0] n: 0 pts: 1 pts_time:0.0333333 duration: 1 duration_time:0.0333333 pos: 5758 fmt:yuv420p sar:1/1 s:2x2 i:P iskey:0 type:P checksum:08AC0298 plane_checksum:[03FC0198 00800080 00800080] mean:[102 128 128] stdev:[0.0 0.0 0.0] [Parsed_showinfo_1 @ 0x60000266c0b0] color_range:unknown color_space:unknown color_primaries:unknown color_trc:unknown Output #0, rawvideo, to 'pipe:': Metadata: software : Lavf59.27.100 encoder : Lavf60.3.100 Stream #0:0, 0, 1/30: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24(pc, gbr/unknown/unknown, progressive, left), 2x2 (0x0) [SAR 1:1 DAR 1:1], 0/1, q=2-31, 2 kb/s, 30 fps, 30 tbn Metadata: encoder : Lavc60.3.100 rawvideo [vost#0:0/rawvideo @ 0x144607140] Not duplicating 1 initial frames [Parsed_select_0 @ 0x60000266c000] n:2.000000 pts:2.000000 t:0.066667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:3.000000 pts:3.000000 t:0.100000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:4.000000 pts:4.000000 t:0.133333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:5.000000 pts:5.000000 t:0.166667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:6.000000 pts:6.000000 t:0.200000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:7.000000 pts:7.000000 t:0.233333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:8.000000 pts:8.000000 t:0.266667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:9.000000 pts:9.000000 t:0.300000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:10.000000 pts:10.000000 t:0.333333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:11.000000 pts:11.000000 t:0.366667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:12.000000 pts:12.000000 t:0.400000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:13.000000 pts:13.000000 t:0.433333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:14.000000 pts:14.000000 t:0.466667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:15.000000 pts:15.000000 t:0.500000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:16.000000 pts:16.000000 t:0.533333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:17.000000 pts:17.000000 t:0.566667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:18.000000 pts:18.000000 t:0.600000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:19.000000 pts:19.000000 t:0.633333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:20.000000 pts:20.000000 t:0.666667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 EOF in input file 0 Terminating demuxer thread 0 [Parsed_select_0 @ 0x60000266c000] n:21.000000 pts:21.000000 t:0.700000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:22.000000 pts:22.000000 t:0.733333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:23.000000 pts:23.000000 t:0.766667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:24.000000 pts:24.000000 t:0.800000 key:1 interlace_type:P pict_type:I scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:25.000000 pts:25.000000 t:0.833333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:26.000000 pts:26.000000 t:0.866667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:27.000000 pts:27.000000 t:0.900000 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:28.000000 pts:28.000000 t:0.933333 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [Parsed_select_0 @ 0x60000266c000] n:29.000000 pts:29.000000 t:0.966667 key:0 interlace_type:P pict_type:P scene:nan -> select:0.000000 select_out:-1 [out_0_0 @ 0x60000266c210] EOF on sink link out_0_0:default. No more output streams to write to, finishing. [out#0/rawvideo @ 0x6000024683c0] All streams finished [out#0/rawvideo @ 0x6000024683c0] Terminating muxer thread [AVIOContext @ 0x144607b80] Statistics: 12 bytes written, 0 seeks, 1 writeouts frame= 1 fps=0.0 q=-0.0 Lsize= 0kB time=00:00:00.03 bitrate= 2.9kbits/s speed=13.1x video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000% Input file #0 (sample_gray_100.avi): Input stream #0:0 (video): 30 packets read (408 bytes); 30 frames decoded; Total: 30 packets (408 bytes) demuxed Output file #0 (pipe:): Output stream #0:0 (video): 1 frames encoded; 1 packets muxed (12 bytes); Total: 1 packets (12 bytes) muxed 30 frames successfully decoded, 0 decoding errors [AVIOContext @ 0x144605210] Statistics: 6814 bytes read, 0 seeks 0000000 6262 6262 6262 6262 6262 6262 000000c
comment:3 by , 19 months ago
using accurate_rnd only does not fix it.
Then it is for sure a different issue.
test gray (0x646464) 2x2 mpeg4 video of 30 frames.