[x264-devel] Default value for the --scenecut option causes heavy undesirable flood of I slices in active scenes

Jason Garrett-Glaser darkshikari at gmail.com
Sun Nov 2 00:52:15 CET 2008


On Sat, Nov 1, 2008 at 4:19 PM, Vladimir Chernyshov <vchernys at welho.com> wrote:
> Hello,
>
> I noticed, that in some active scenes, such as a textured sea bottom,
> shot through a shallow layer of water with waves, the default value (40)
> of the scenecut parameter of the latest x.264 causes a flood of I frames
> even though there is no scene change. This causes the codec to badly
> bleed bits in a scene, which, on the contrary, can tolerate more
> compression due to its high activity. This also completely defeats the
> purpose of the scenecut, which is to save bits (on a scene change).
>
> x264 \
> --colorprim bt470bg --transfer bt470bg --colormatrix bt470bg \
>
> --bframes 2 --b-adapt 0 --crf 18 --qcomp 1.0 --ref 3 --weightb \
>
> --keyint 250 --no-cabac --progress -o out1.264 -v raw-d2.1.y4m
>
> x264 [info]: slice I:197   Avg QP:14.70  size: 82143  PSNR Mean Y:48.08
> U:51.18 V:50.51 Avg:48.82 Global:48.80
> x264 [info]: slice P:183   Avg QP:17.31  size: 61616  PSNR Mean Y:46.16
> U:49.52 V:48.74 Avg:46.94 Global:46.93
> x264 [info]: slice B:10    Avg QP:19.50  size: 50737  PSNR Mean Y:43.52
> U:46.49 V:45.69 Avg:44.22 Global:44.21
> x264 [info]: consecutive B-frames: 90.7%  6.2%  3.1%
> x264 [info]: mb I  I16..4:  1.7%  0.0% 98.3%
> x264 [info]: mb P  I16..4:  2.0%  0.0% 88.9%  P16..4:  2.9%  4.3%  1.8%
>  0.0%  0.0%    skip: 0.0%
> x264 [info]: mb B  I16..4: 15.6%  0.0%  0.0%  B16..8: 15.2% 23.6% 39.0%
>  direct: 6.6%  skip: 0.0%  L0:39.9% L1:33.2% BI:26.9%
> x264 [info]: ref P L0  86.3%  8.8%  4.8%
> x264 [info]: ref B L0  76.8% 23.2%
> x264 [info]: SSIM Mean Y:0.9890471
> x264 [info]: PSNR Mean Y:47.062 U:50.279 V:49.556 Avg:47.818
> Global:47.658 kb/s:28682.46
>
> encoded 390 frames, 1.21 fps, 28683.75 kb/s
>
> -----------------------------------------------------------------
> x264 \
> --colorprim bt470bg --transfer bt470bg --colormatrix bt470bg \
>
> --bframes 2 --b-adapt 0 --crf 18 --qcomp 1.0 --ref 3 --weightb \
>
> --keyint 250 --no-cabac --progress -o out1.264 -v --scenecut 0 \
> raw-d2.1.y4m
>
> x264 [info]: slice I:2     Avg QP:15.42  size: 76258  PSNR Mean Y:47.66
> U:50.70 V:50.12 Avg:48.40 Global:48.39
> x264 [info]: slice P:130   Avg QP:17.43  size: 62234  PSNR Mean Y:46.17
> U:49.55 V:48.80 Avg:46.96 Global:46.94
> x264 [info]: slice B:258   Avg QP:19.71  size: 54331  PSNR Mean Y:43.27
> U:46.22 V:45.52 Avg:43.97 Global:43.94
> x264 [info]: consecutive B-frames:  0.3%  0.0% 99.7%
> x264 [info]: mb I  I16..4:  1.2%  0.0% 98.8%
> x264 [info]: mb P  I16..4:  2.2%  0.0% 96.1%  P16..4:  0.6%  0.8%  0.3%
>  0.0%  0.0%    skip: 0.0%
> x264 [info]: mb B  I16..4: 19.3%  0.0%  0.0%  B16..8: 11.7% 25.0% 39.5%
>  direct: 4.5%  skip: 0.0%  L0:44.8% L1:36.3% BI:18.9%
> x264 [info]: ref P L0  64.2% 19.8% 16.0%
> x264 [info]: ref B L0  69.7% 30.3%
> x264 [info]: SSIM Mean Y:0.9799161
> x264 [info]: PSNR Mean Y:44.255 U:47.353 V:46.641 Avg:44.987
> Global:44.749 kb/s:22831.05
>
> encoded 390 frames, 3.29 fps, 22831.71 kb/s
>
> I suggest to change the default value of the scenecut parameter to 0,
> which is sufficient to detect real scene cuts, and will not inflate the
> the bitrate of highly active scenes.
>
> regards,
> Vladimir
> _______________________________________________
> x264-devel mailing list
> x264-devel at videolan.org
> http://mailman.videolan.org/listinfo/x264-devel
>

Might I suggest you use --pre-scenecut instead?  I find that it tends
to give better results.

Dark Shikari


More information about the x264-devel mailing list