Video Compression

VideoNerd

High Throughput JPEG 2000 (HTJ2K) – Updated Version of JPEG 2000

High Throughput JPEG 2000 standard, officially ITU-T Rec T.814, shortly HTJ2K, is a modified version of JPEG2000 (shortly J2K), the reference to  HTJ2K standard .  According to the paper “High Throughput JPEG 2000 (HTJ2K): Algorithm, Performance and Potential”, by David Taubman et al., 2020, HTJ2K is a royalty free standard. The one significant drawback of […]

Approximation of (1-k)^t when ‘k’ is small and ‘t’ is big

when ‘k’ is small and ‘t’ is big   For example, let k=0.01 and t =100   Slava23+ years’ programming and theoretical experience in the computer science fields such as video compression, media streaming and artificial intelligence (co-author of several papers and patents). the author is looking for new job, my resume Donate videonerd.website

Compute PSNR, SSIM, VIF with ffmpeg

If you have original yuv-sequence and encoded h264 file (or h265), you can compute total PSNR,SSIM and VIF statistics with ‘-filter-complex‘ of ffmpeg tool.   the following command computes total PSNR statistics: Example: Check psnr of the first 200 frames: ffmpeg.exe -i crowd.h264 -s 1920×1080 -i  crowd_1920x1080_50fps.yuv  -filter_complex “psnr” -frames 200 -f null – …. […]

VP9 and VP8 Codecs, Open Sources

Content Getting VP9/VP9 Build VP9/Vp8 Source for Windows Running VP9/VP8     Getting VP9/VP8 Source The official VP9/VP8 source: https://chromium.googlesource.com/webm/libvpx git clone https://chromium.googlesource.com/webm/libvpx  vpx   Build VP9/VP8 Source for Windows Open (or run) MSYS2 Note: if you have not MSYS2 installed on your machine, you need to install it from https://www.msys2.org . Check that MSYS2 […]

Generator of True Random Numbers Based on Quantum Fluctuations of Vacuum

All random number generated by SW are in virtue pseudo-random, because a deterministic machine can’t produce pure random numbers. In the laboratory of physics https://qrng.anu.edu.au/  ,  quantum fluctuations of vacuum are ceaselessly measured to supply true random numbers for anyone in the world. To get true random numbers from Python you need install ‘quantumrandom’ module: […]

VVC Reference Picture Resampling

In HEVC and in H.264, when a codec changes spatial resolution (due to adaptation to new network conditions), it must send IDR and hence to break the temporal prediction. In VVC, there is a special feature – reference picture resampling (RPR). VVC inter coding may use to one or more previous reference pictures that have […]

VIFP Video Quality Metric – Python Script

VIFP (Visual Information Fidelity in Pixel Domain) is a video quality metric, in the following papers you can find details on VIFP: “A New Method for Color Image Quality Assessment“, by Niveditta Thakur et al., 2011 “Image Information and Visual Quality“,  Hamid Rahim Sheikh, Member, IEEE, Alan C. Bovik, Fellow, IEEE In the python script […]

What are three main differences between Marx and Lenin?

1) Marx was an armchair theorist, while Lenin was a practitioner and in the end took power in Russia. 2) Marx developed his theory watching 19th-century industrial societies in Western Europe, while Lenin adapted Marxism to the realities of 20th-century Imperial Russia, where peasants constituted 4/5th of the population. 3) Marx was a lousy party […]

Main Question of Data Analysis

 Can we be confident in the patterns that we are seeing in the data or what we are observing is just noise? The answer is not 42.  Slava23+ years’ programming and theoretical experience in the computer science fields such as video compression, media streaming and artificial intelligence (co-author of several papers and patents). the author […]

Turing HEVC Codec

Turing codec is open-source codec to encode hevc. Download and Build git clone https://github.com/bbc/turingcodec.git cd turingcodec mkdir build cd build cmake ../ -G “Visual Studio 16 2019” -A x64 Open turing.sln in the build-folder (‘cmake’ creates turing.sln), choose Release/x64 and build the solution, the binary turing.exe is created at ‘turingcodec\build\turing\Release\’   Run Case A:  Low […]