This is a sample plot for the sequence “MarketPlace” in the fixed resolution scenario ( hover over image to zoom):įixed resolution results for the Sequence MarketPlace. For the 4k source files, the 4k VMAF model was applied.įor the encoding time, I measured the absolute elapsed time as well as the CPU time per thread. PSNR and SSIM measurements were performed for the three components (Y/U/V) as well as an averaged value. In the cases where encoding was performed at a lower spatial resolution, the measurement was performed after upscaling the reconstruction back to the resolution of the source. įor each encoding, multiple different measurements were performed. The default scaling algorithm is bicubic. The final measurement step was performed after upsampling back to the resolution of the original source. As in the first scenario, the bitrates were multiplied by a factor of two for x264. For the 4K encodes, two additional points with 3840×2160 at 19.2 Mbit/s and 9.6 Mbit/s were added. Bitrate Ladder: Encoding was performed at a range of different resolutions and bitrates also referred to as a bitrate ladder.Based on the pixel count, another factor of four was applied to the bitrates for the 4K encodes. For x264, these values were multiplied by a factor of two. The bitrates for x265 and libvpx-vp9 were: 4.8 Mbit/s, 2.4 Mbit/2, 1.8 Mbit/2, 1.2 Mbit/s and 0.8 Mbit/s. Encoding was performed at the resolution of the original sequence with various different target bitrates. Fixed Resolution: no scaling is applied.The encodings were performed under two scenarios: While they do not yield the highest possible compression performance, they correspond to a very high quality encode with a good trade-off between encoding time and quality. These settings were chosen from experience. libvpx-vp9 no preset was chosen (which corresponds to a cpu-used value of 1).I used the following presets for each encoder: The corresponding ffmpeg calls look like this: ffmpeg -i input.yuv -c:v libx264 -preset veryslow -b:v br -pass 1/2 enc.mp4 ffmpeg -i input.yuv -c:v libx265 -preset slow -b:v br -pass 1/2 enc.mp4 ffmpeg -i input.yuv -c:v libvpx-vp9 -b:v br -pass 1/2 enc.mp4 All encodings implemented 2-pass encoding with a set target bitrate. All sequences are 10 seconds long and used in YUV 4:2:0 subsampling.įor encoding, I used default settings with ffmpeg. Some of these sequences are well known and were already used in several prior standardization activities. Test setįor the test set I used Full HD and 4K sequences from the JEVT SDR test set which was also used in the standardization of VVC. If you want to recreate the same execution environment: I used Docker to build it so you can recreate the exact same environment using my Dockerfile which can be found here. I also compiled libvmaf (version 1.5.1) and ffmpeg (version 4.2.3) to run the encoders and perform PSNR, SSIM and VMAF measurements.
0 Comments
Leave a Reply. |