On Sun, Sep 8, 2024 at 8:07 PM Andrew Randrianasulu <randrianas...@gmail.com> wrote:
> On Sun, Sep 8, 2024 at 9:02 PM Paul B Mahol <one...@gmail.com> wrote: > > > > On Sun, Sep 8, 2024 at 7:49 AM Andrew Randrianasulu < > randrianas...@gmail.com> > > wrote: > > > > > git up to d9f594209fb1a9c87017034f943dcb311a9d2896 > > > > > > first command > > > ==== > > > > > > bash-5.1$ /dev/shm/ffmpeg/ffmpeg -f lavfi -i yuvtestsrc -frames 1 -r > > > 25 -vf format=rgba,format=yuv444p -color_range 1 > > > /dev/shm/yuv-mpeg-rgba-yuv444p.y4m -debug log > > > ffmpeg version N-115688-gd9f594209f Copyright (c) 2000-2024 the FFmpeg > > > developers > > > built with gcc 11.2.0 (GCC) > > > configuration: --disable-debug > > > libavutil 59. 35.100 / 59. 35.100 > > > libavcodec 61. 11.100 / 61. 11.100 > > > libavformat 61. 5.101 / 61. 5.101 > > > libavdevice 61. 2.100 / 61. 2.100 > > > libavfilter 10. 2.102 / 10. 2.102 > > > libswscale 8. 2.100 / 8. 2.100 > > > libswresample 5. 2.100 / 5. 2.100 > > > matched as AVOption 'debug' with argument 'log'. > > > Trailing option(s) found in the command: may be ignored. > > > Finished splitting the commandline. > > > Parsing a group of options: global . > > > Successfully parsed a group of options. > > > Parsing a group of options: input url yuvtestsrc. > > > Applying option f (force container format (auto-detected otherwise)) > > > with argument lavfi. > > > Successfully parsed a group of options. > > > Opening an input file: yuvtestsrc. > > > detected 4 logical cores > > > [Parsed_yuvtestsrc_0 @ 0xb8276c0] size:320x240 rate:25/1 > > > duration:-1.000000 sar:1/1 > > > [AVFilterGraph @ 0xb826f00] query_formats: 2 queried, 3 merged, 0 > > > already done, 0 delayed > > > [lavfi @ 0xb826840] All info found > > > Input #0, lavfi, from 'yuvtestsrc': > > > Duration: N/A, start: 0.000000, bitrate: N/A > > > Stream #0:0, 1, 1/25: Video: wrapped_avframe, 1 reference frame, > > > yuv444p, 320x240 [SAR 1:1 DAR 4:3], 0/1, 25 fps, 25 tbr, 25 tbn > > > Successfully opened the file. > > > Parsing a group of options: output url > /dev/shm/yuv-mpeg-rgba-yuv444p.y4m. > > > Applying option frames (set the number of frames to output) with > argument > > > 1. > > > Applying option r (override input framerate/convert to given output > > > framerate (Hz value, fraction or abbreviation)) with argument 25. > > > Applying option vf (alias for -filter:v (apply filters to video > > > streams)) with argument format=rgba,format=yuv444p. > > > Successfully parsed a group of options. > > > Opening an output file: /dev/shm/yuv-mpeg-rgba-yuv444p.y4m. > > > [out#0/yuv4mpegpipe @ 0xb863900] No explicit maps, mapping streams > > > automatically... > > > [vost#0:0/wrapped_avframe @ 0xb864080] Created video stream from input > > > stream 0:0 > > > [AVFilterGraph @ 0xb865680] Setting 'pix_fmts' to value 'rgba' > > > [AVFilterGraph @ 0xb865680] Setting 'pix_fmts' to value 'yuv444p' > > > File '/dev/shm/yuv-mpeg-rgba-yuv444p.y4m' already exists. Overwrite? > [y/N] > > > y > > > [file @ 0xb862600] Setting default whitelist 'file,crypto,data' > > > Successfully opened the file. > > > Stream mapping: > > > Stream #0:0 -> #0:0 (wrapped_avframe (native) -> wrapped_avframe > > > (native)) > > > [vost#0:0/wrapped_avframe @ 0xb864080] Starting thread... > > > [vf#0:0 @ 0xb865300] Starting thread... > > > [vist#0:0/wrapped_avframe @ 0xb8632c0] [dec:wrapped_avframe @ > > > 0xb866f80] Starting thread... > > > [in#0/lavfi @ 0xb8265c0] Starting thread... > > > Press [q] to stop, [?] for help > > > [AVFilterGraph @ 0xf3900a40] Setting 'pix_fmts' to value 'rgba' > > > [AVFilterGraph @ 0xf3900a40] Setting 'pix_fmts' to value 'yuv444p' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'video_size' to > > > value '320x240' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'pix_fmt' to > value > > > '5' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'time_base' to > > > value '1/25' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'pixel_aspect' > > > to value '1/1' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'colorspace' to > > > value '2' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'range' to value > '0' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] Setting 'frame_rate' to > > > value '25/1' > > > [graph -1 input from stream 0:0 @ 0xf3901f80] w:320 h:240 > > > pixfmt:yuv444p tb:1/25 fr:25/1 sar:1/1 csp:unknown range:unknown > > > [auto_scale_0 @ 0xf3903d80] w:iw h:ih flags:'' interl:0 > > > [Parsed_format_0 @ 0xf39015c0] auto-inserting filter 'auto_scale_0' > > > between the filter 'graph -1 input from stream 0:0' and the filter > > > 'Parsed_format_0' > > > [auto_scale_1 @ 0xf390e940] w:iw h:ih flags:'' interl:0 > > > [Parsed_format_1 @ 0xf39018c0] auto-inserting filter 'auto_scale_1' > > > between the filter 'Parsed_format_0' and the filter 'Parsed_format_1' > > > [AVFilterGraph @ 0xf3900a40] query_formats: 4 queried, 3 merged, 6 > > > already done, 0 delayed > > > [swscaler @ 0xf3919040] [swscaler @ 0xf3922480] Forcing full internal > > > H chroma due to input having non subsampled chroma > > > [swscaler @ 0xf3919040] [swscaler @ 0xf393c140] Forcing full internal > > > H chroma due to input having non subsampled chroma > > > [swscaler @ 0xf3919040] [swscaler @ 0xf3955600] Forcing full internal > > > H chroma due to input having non subsampled chroma > > > [swscaler @ 0xf3919040] [swscaler @ 0xf396f2c0] Forcing full internal > > > H chroma due to input having non subsampled chroma > > > [swscaler @ 0xf3919040] [swscaler @ 0xf3988780] Forcing full internal > > > H chroma due to input having non subsampled chroma > > > [auto_scale_0 @ 0xf3903d80] w:320 h:240 fmt:yuv444p csp:unknown > > > range:unknown sar:1/1 -> w:320 h:240 fmt:rgba csp:gbr range:pc sar:1/1 > > > flags:0x00000004 > > > [auto_scale_0 @ 0xf3903d80] [framesync @ 0xf3903e14] Selected 1/25 time > > > base > > > [auto_scale_0 @ 0xf3903d80] [framesync @ 0xf3903e14] Sync level 1 > > > [auto_scale_1 @ 0xf390e940] w:320 h:240 fmt:rgba csp:gbr range:pc > > > sar:1/1 -> w:320 h:240 fmt:yuv444p csp:unknown range:unknown sar:1/1 > > > flags:0x00000004 > > > [auto_scale_1 @ 0xf390e940] [framesync @ 0xf390ea14] Selected 1/25 time > > > base > > > [auto_scale_1 @ 0xf390e940] [framesync @ 0xf390ea14] Sync level 1 > > > [graph -1 input from stream 0:0 @ 0xf3901f80] video frame properties > > > congruent with link at pts_time: 0 > > > Output #0, yuv4mpegpipe, to '/dev/shm/yuv-mpeg-rgba-yuv444p.y4m': > > > Metadata: > > > encoder : Lavf61.5.101 > > > Stream #0:0, 0, 1/25: Video: wrapped_avframe, 1 reference frame, > > > yuv444p(progressive), 320x240 [SAR 1:1 DAR 4:3], 0/1, q=2-31, 200 > > > kb/s, 25 fps, 25 tbn > > > Metadata: > > > encoder : Lavc61.11.100 wrapped_avframe > > > [out#0/yuv4mpegpipe @ 0xb863900] Starting thread... > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: send 0 ts 0.04 > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: 0 frames_max 1 reached > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: finish 0; head ts 0.04 > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: finish queue > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: receive 0 ts 0.04 queue head 0 ts > 0.04 > > > [vf#0:0 @ 0xb865300] All consumers returned EOF > > > [vost#0:0/wrapped_avframe @ 0xb864080] Encoder thread received EOF > > > [vost#0:0/wrapped_avframe @ 0xb864080] Terminating thread with return > > > code 0 (success) > > > [out#0/yuv4mpegpipe @ 0xb863900] All streams finished > > > [out#0/yuv4mpegpipe @ 0xb863900] Terminating thread with return code 0 > > > (success) > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: 0 EOF > > > [out#0/yuv4mpegpipe @ 0xb863900] sq: finish queue > > > [vf#0:0 @ 0xb865300] Terminating thread with return code 0 (success) > > > [vist#0:0/wrapped_avframe @ 0xb8632c0] [dec:wrapped_avframe @ > > > 0xb866f80] Decoder returned EOF, finishing > > > [vist#0:0/wrapped_avframe @ 0xb8632c0] [dec:wrapped_avframe @ > > > 0xb866f80] Terminating thread with return code 0 (success) > > > [vist#0:0/wrapped_avframe @ 0xb8632c0] All consumers of this stream are > > > done > > > [in#0/lavfi @ 0xb8265c0] All consumers are done > > > [in#0/lavfi @ 0xb8265c0] Terminating thread with return code 0 > (success) > > > [AVIOContext @ 0xb865940] Statistics: 230456 bytes written, 0 seeks, 1 > > > writeouts > > > [out#0/yuv4mpegpipe @ 0xb863900] Output file #0 > > > (/dev/shm/yuv-mpeg-rgba-yuv444p.y4m): > > > [out#0/yuv4mpegpipe @ 0xb863900] Output stream #0:0 (video): 1 > > > frames encoded; 1 packets muxed (308 bytes); > > > [out#0/yuv4mpegpipe @ 0xb863900] Total: 1 packets (308 bytes) muxed > > > [out#0/yuv4mpegpipe @ 0xb863900] video:0KiB audio:0KiB subtitle:0KiB > > > other streams:0KiB global headers:0KiB muxing overhead: 74723.376623% > > > frame= 1 fps=0.0 q=-0.0 Lsize= 225KiB time=00:00:00.04 > > > bitrate=46091.2kbits/s speed=3.17x > > > [in#0/lavfi @ 0xb8265c0] Input file #0 (yuvtestsrc): > > > [in#0/lavfi @ 0xb8265c0] Input stream #0:0 (video): 19 packets read > > > (5852 bytes); 10 frames decoded; 0 decode errors; > > > [in#0/lavfi @ 0xb8265c0] Total: 19 packets (5852 bytes) demuxed > > > > > > ======= > > > > > > second command > > > > > > bash-5.1$ /dev/shm/ffmpeg/ffmpeg -f lavfi -i yuvtestsrc -frames 1 -r > > > 25 -color_range 1 /dev/shm/yuv-mpeg-yuv444p.y4m -debug log > > > ffmpeg version N-115688-gd9f594209f Copyright (c) 2000-2024 the FFmpeg > > > developers > > > built with gcc 11.2.0 (GCC) > > > configuration: --disable-debug > > > libavutil 59. 35.100 / 59. 35.100 > > > libavcodec 61. 11.100 / 61. 11.100 > > > libavformat 61. 5.101 / 61. 5.101 > > > libavdevice 61. 2.100 / 61. 2.100 > > > libavfilter 10. 2.102 / 10. 2.102 > > > libswscale 8. 2.100 / 8. 2.100 > > > libswresample 5. 2.100 / 5. 2.100 > > > matched as AVOption 'debug' with argument 'log'. > > > Trailing option(s) found in the command: may be ignored. > > > Finished splitting the commandline. > > > Parsing a group of options: global . > > > Successfully parsed a group of options. > > > Parsing a group of options: input url yuvtestsrc. > > > Applying option f (force container format (auto-detected otherwise)) > > > with argument lavfi. > > > Successfully parsed a group of options. > > > Opening an input file: yuvtestsrc. > > > detected 4 logical cores > > > [Parsed_yuvtestsrc_0 @ 0xb0fc640] size:320x240 rate:25/1 > > > duration:-1.000000 sar:1/1 > > > [AVFilterGraph @ 0xb0fbec0] query_formats: 2 queried, 3 merged, 0 > > > already done, 0 delayed > > > [lavfi @ 0xb0fb800] All info found > > > Input #0, lavfi, from 'yuvtestsrc': > > > Duration: N/A, start: 0.000000, bitrate: N/A > > > Stream #0:0, 1, 1/25: Video: wrapped_avframe, 1 reference frame, > > > yuv444p, 320x240 [SAR 1:1 DAR 4:3], 0/1, 25 fps, 25 tbr, 25 tbn > > > Successfully opened the file. > > > Parsing a group of options: output url /dev/shm/yuv-mpeg-yuv444p.y4m. > > > Applying option frames (set the number of frames to output) with > argument > > > 1. > > > Applying option r (override input framerate/convert to given output > > > framerate (Hz value, fraction or abbreviation)) with argument 25. > > > Successfully parsed a group of options. > > > Opening an output file: /dev/shm/yuv-mpeg-yuv444p.y4m. > > > [out#0/yuv4mpegpipe @ 0xb1387c0] No explicit maps, mapping streams > > > automatically... > > > [vost#0:0/wrapped_avframe @ 0xb138f40] Created video stream from input > > > stream 0:0 > > > File '/dev/shm/yuv-mpeg-yuv444p.y4m' already exists. Overwrite? [y/N] y > > > [file @ 0xb13a600] Setting default whitelist 'file,crypto,data' > > > Successfully opened the file. > > > Stream mapping: > > > Stream #0:0 -> #0:0 (wrapped_avframe (native) -> wrapped_avframe > > > (native)) > > > [vost#0:0/wrapped_avframe @ 0xb138f40] Starting thread... > > > [vf#0:0 @ 0xb13a1c0] Starting thread... > > > [vist#0:0/wrapped_avframe @ 0xb138180] [dec:wrapped_avframe @ > > > 0xb13b5c0] Starting thread... > > > [in#0/lavfi @ 0xb0fb580] Starting thread... > > > Press [q] to stop, [?] for help > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'video_size' to > > > value '320x240' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'pix_fmt' to > value > > > '5' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'time_base' to > > > value '1/25' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'pixel_aspect' > > > to value '1/1' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'colorspace' to > > > value '2' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'range' to value > '0' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] Setting 'frame_rate' to > > > value '25/1' > > > [graph -1 input from stream 0:0 @ 0xf41016c0] w:320 h:240 > > > pixfmt:yuv444p tb:1/25 fr:25/1 sar:1/1 csp:unknown range:unknown > > > [AVFilterGraph @ 0xf4100a40] query_formats: 3 queried, 6 merged, 0 > > > already done, 0 delayed > > > [graph -1 input from stream 0:0 @ 0xf41016c0] video frame properties > > > congruent with link at pts_time: 0 > > > Output #0, yuv4mpegpipe, to '/dev/shm/yuv-mpeg-yuv444p.y4m': > > > Metadata: > > > encoder : Lavf61.5.101 > > > Stream #0:0, 0, 1/25: Video: wrapped_avframe, 1 reference frame, > > > yuv444p(progressive), 320x240 [SAR 1:1 DAR 4:3], 0/1, q=2-31, 200 > > > kb/s, 25 fps, 25 tbn > > > Metadata: > > > encoder : Lavc61.11.100 wrapped_avframe > > > [out#0/yuv4mpegpipe @ 0xb1387c0] Starting thread... > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: send 0 ts 0.04 > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: 0 frames_max 1 reached > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: finish 0; head ts 0.04 > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: finish queue > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: receive 0 ts 0.04 queue head 0 ts > 0.04 > > > [vf#0:0 @ 0xb13a1c0] All consumers returned EOF > > > [vost#0:0/wrapped_avframe @ 0xb138f40] Encoder thread received EOF > > > [vost#0:0/wrapped_avframe @ 0xb138f40] Terminating thread with return > > > code 0 (success) > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: 0 EOF > > > [out#0/yuv4mpegpipe @ 0xb1387c0] sq: finish queue > > > [vf#0:0 @ 0xb13a1c0] Terminating thread with return code 0 (success) > > > [vist#0:0/wrapped_avframe @ 0xb138180] [dec:wrapped_avframe @ > > > 0xb13b5c0] Decoder returned EOF, finishing > > > [vist#0:0/wrapped_avframe @ 0xb138180] [dec:wrapped_avframe @ > > > 0xb13b5c0] Terminating thread with return code 0 (success) > > > [vist#0:0/wrapped_avframe @ 0xb138180] All consumers of this stream are > > > done > > > [in#0/lavfi @ 0xb0fb580] All consumers are done > > > [in#0/lavfi @ 0xb0fb580] Terminating thread with return code 0 > (success) > > > [out#0/yuv4mpegpipe @ 0xb1387c0] All streams finished > > > [out#0/yuv4mpegpipe @ 0xb1387c0] Terminating thread with return code 0 > > > (success) > > > [AVIOContext @ 0xb13a900] Statistics: 230456 bytes written, 0 seeks, 1 > > > writeouts > > > [out#0/yuv4mpegpipe @ 0xb1387c0] Output file #0 > > > (/dev/shm/yuv-mpeg-yuv444p.y4m): > > > [out#0/yuv4mpegpipe @ 0xb1387c0] Output stream #0:0 (video): 1 > > > frames encoded; 1 packets muxed (308 bytes); > > > [out#0/yuv4mpegpipe @ 0xb1387c0] Total: 1 packets (308 bytes) muxed > > > [out#0/yuv4mpegpipe @ 0xb1387c0] video:0KiB audio:0KiB subtitle:0KiB > > > other streams:0KiB global headers:0KiB muxing overhead: 74723.376623% > > > frame= 1 fps=0.0 q=-0.0 Lsize= 225KiB time=00:00:00.04 > > > bitrate=46091.2kbits/s speed=9.67x > > > [in#0/lavfi @ 0xb0fb580] Input file #0 (yuvtestsrc): > > > [in#0/lavfi @ 0xb0fb580] Input stream #0:0 (video): 19 packets read > > > (5852 bytes); 10 frames decoded; 0 decode errors; > > > [in#0/lavfi @ 0xb0fb580] Total: 19 packets (5852 bytes) demuxed > > > > > > resulting files differ significally at the end of each bar in > > > YUVViewer and in cingg with Subtract mode ( I am debugging our > > > colorspace problem) > > > > > > /dev/shm/ffmpeg/ffprobe /dev/shm/yuv-mpeg-rgba-yuv444p.y4m > > > ffprobe version N-115688-gd9f594209f Copyright (c) 2007-2024 the > > > FFmpeg developers > > > built with gcc 11.2.0 (GCC) > > > configuration: --disable-debug > > > libavutil 59. 35.100 / 59. 35.100 > > > libavcodec 61. 11.100 / 61. 11.100 > > > libavformat 61. 5.101 / 61. 5.101 > > > libavdevice 61. 2.100 / 61. 2.100 > > > libavfilter 10. 2.102 / 10. 2.102 > > > libswscale 8. 2.100 / 8. 2.100 > > > libswresample 5. 2.100 / 5. 2.100 > > > Input #0, yuv4mpegpipe, from '/dev/shm/yuv-mpeg-rgba-yuv444p.y4m': > > > Duration: 00:00:00.04, start: 0.000000, bitrate: 46091 kb/s > > > Stream #0:0: Video: rawvideo (444P / 0x50343434), > > > yuv444p(progressive), 320x240, SAR 1:1 DAR 4:3, 25 fps, 25 tbr, 25 tbn > > > > > > ========= > > > > > > /dev/shm/ffmpeg/ffprobe /dev/shm/yuv-mpeg-yuv444p.y4m > > > ffprobe version N-115688-gd9f594209f Copyright (c) 2007-2024 the > > > FFmpeg developers > > > built with gcc 11.2.0 (GCC) > > > configuration: --disable-debug > > > libavutil 59. 35.100 / 59. 35.100 > > > libavcodec 61. 11.100 / 61. 11.100 > > > libavformat 61. 5.101 / 61. 5.101 > > > libavdevice 61. 2.100 / 61. 2.100 > > > libavfilter 10. 2.102 / 10. 2.102 > > > libswscale 8. 2.100 / 8. 2.100 > > > libswresample 5. 2.100 / 5. 2.100 > > > Input #0, yuv4mpegpipe, from '/dev/shm/yuv-mpeg-yuv444p.y4m': > > > Duration: 00:00:00.04, start: 0.000000, bitrate: 46091 kb/s > > > Stream #0:0: Video: rawvideo (444P / 0x50343434), > > > yuv444p(progressive), 320x240, SAR 1:1 DAR 4:3, 25 fps, 25 tbr, 25 tbn > > > > > > > > > Is this known problem? I see some range flags for swscaler not set, > > > may be this is root of problem? > > > > > > > Conversion within discrete and limited precision values from > yuv->rgb->yuv > > is not lossless. > > But why I see BIG colored (at the edges, with increasing difference) > bars, instead of random +/- 1 all over the picture ? > because one should be PC range and another TV range YUV. > > > > > > > > _______________________________________________ > > > ffmpeg-user mailing list > > > ffmpeg-user@ffmpeg.org > > > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > > > > > To unsubscribe, visit link above, or email > > > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". > > > > > _______________________________________________ > > ffmpeg-user mailing list > > ffmpeg-user@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > > > To unsubscribe, visit link above, or email > > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". > _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".