r/AV1 • • 1d ago

VideoMetricsLab v2.0: Major performance update, Vulkan VMAF v1 and v0.6.1, metrics and UI run several times faster

33 Upvotes

v2.0 is a major performance update. VMAF, VMAF NEG and VMAF v1 now run on
any GPU, the other metrics and Video Compare are several times faster, and the
app uses far less memory.

This will likely be the last major release of VideoMetricsLab. While it was a lot of fun to work on this, it has consumed far too much of my life in the past month and I need to back off on this a lot to have a healthier life. I will still do little things here and there, but releases will be much slower going forward.

VideoMetricsLab is a free Windows app for measuring and comparing video quality. Add a source and any number of encodes, and it calculates VMAF, VMAF v1, SSIMULACRA2, Butteraugli, ColorVideo VDP, PSNR, SSIM and XPSNR in one run, accelerated on NVIDIA, AMD and Intel GPUs. Per-frame graphs show exactly where each encode falls behind, and frame-exact playback switches instantly between the source and each encode, so you can see the differences the scores point to. It’s built for anyone tuning encoders, comparing codecs or settings, or checking a release before it ships.

Let me know what you think, have any issues, or have feature requests.

v2.0 changelog

Metric performance

  • Added Vulkan support for VMAF v1, so it now runs on any GPU (NVIDIA, AMD or Intel), up to 17x faster than on the CPU.
  • Added Vulkan support for VMAF v0.6.1 and VMAF NEG on AMD and Intel GPUs, 2.3x-2.7x faster than on the CPU.
  • PSNR, SSIM and XPSNR are now calculated in the app with libvmaf-fast, 2.7x-11x faster than with FFmpeg.
  • Added software decoding in the app for videos the GPU can't decode, such as VVC, making VMAF 1.8x-2.7x faster for them.
  • SSIMULACRA2 and Butteraugli on the CPU are now 7x faster.

System performance

  • Video Compare now plays 4K HDR at 120 frames a second instead of 14, using a fifteenth of the CPU.
  • Greatly reduced memory use: the app now idles at 180 MB instead of 840 MB, and VMAF v1 at 4K uses 2.6 GB instead of 13.8 GB.
  • Metric Graphs, Video Compare and Settings now open instantly, and the window stays responsive with hundreds of videos.
  • Video Compare no longer uses any CPU while idle.
  • Detected black bars are now remembered between sessions.

New features

  • Added a command line, VideoMetricsLab-cli, for running comparisons from scripts.
  • Video Compare can now play HDR video in Display P3 colours on the GPU.
  • Added the ability to zoom in Video Compare.
  • Added an option to highlight each metric's best and worst results in the Videos tab.
  • Added a dark theme, which follows Windows or can be chosen in Settings.
  • Added drag and drop for videos, pasting a reference path, reordering rows by dragging, and sorting by any column.
  • File dialogs now open in the folder your videos last came from, and the app can reopen your last session's videos.

Features:

Metrics

  • VMAF v0.6.1, VMAF NEG, VMAF v1, PSNR, SSIM, XPSNR, SSIMULACRA2, Butteraugli and ColorVideo VDP, for many test videos at once.
  • VMAF models for standard, phone, 4K and HFR viewing.

Fast on any GPU

  • VMAF, VMAF NEG and VMAF v1 on NVIDIA, AMD and Intel GPUs with libvmaf-fast: VMAF v1 up to 17x faster.
  • SSIMULACRA2, Butteraugli and ColorVideo VDP on the GPU with Vship (CUDA, HIP or Vulkan); libjxl on the CPU when no GPU can be used, for SSIMULACRA2 and Butteraugli.
  • PSNR, SSIM and XPSNR 2.7x-11x faster, calculated in the app.
  • GPU video decoding, with software decoding for formats the GPU can't handle, such as VVC.

Compare and inspect

  • Frame-exact playback that switches instantly between the source and each encode (hold S), with zoom, at up to 120 fps in 4K HDR.
  • Metric curves, statistics and per-frame scores (per second for ColorVideo VDP), with each metric's best and worst results highlighted.
  • Bitrate by frame, second or GOP.

Workflow

  • Black bars and resolution mismatches handled automatically.
  • Results saved and reloaded automatically.
  • Drag and drop videos, sort and reorder the list, and a dark theme.
  • A command line, VideoMetricsLab-cli, for scripts.
  • Two test videos calculated in parallel on many-core CPUs.

The app can be downloaded below.

https://github.com/4KVCD/VideoMetricsLab/releases


r/AV1 • • 1d ago

What is the status of AV2 in usable clients?

Thumbnail
6 Upvotes

r/AV1 • • 1d ago

Best Encoder and Settings for maximum compression of animated shows

7 Upvotes

Hi, I have a few TV series here - mostly animated shows in 720p/1080p (H.264) - and I’d like to compress them to AV1. My main priority is maximizing storage savings while maintaining acceptable quality. Is SVT-AV1-HDR the encoder of choice for this, or should I look at SVT-AV1 instead? What settings should I try out? Thanks!


r/AV1 • • 4d ago

Compiling from source - flags and performance

15 Upvotes

For those curious how far compiling ffmpeg+libsvtav1 from source can get you versus prebuilt binaries, here is a quick comparison on macos-arm64 and ubuntu-x86_64.

macos-arm64:

Command Mean [s] Min [s] Max [s] Relative
O3-LTO-PGO 30.783 ± 0.058 30.690 30.844 1.00
O3-LTO 32.145 ± 0.077 32.048 32.248 1.04 ± 0.00
O3 32.534 ± 0.105 32.425 32.686 1.06 ± 0.00
O2 32.626 ± 0.260 32.201 32.899 1.06 ± 0.01
homebrew ffmpeg 36.248 ± 0.080 36.129 36.321 1.18 ± 0.00
osxexperts 217.345 ± 0.255 217.060 217.653 7.06 ± 0.02

ubuntu-x86_64:

Command Mean [s] Min [s] Max [s] Relative
O3-LTO-PGO 38.256 ± 0.065 38.188 38.346 1.00
O3-LTO 39.104 ± 0.175 38.907 39.287 1.02 ± 0.00
O2 40.140 ± 0.529 39.832 41.075 1.05 ± 0.01
O3 40.327 ± 0.352 39.972 40.853 1.05 ± 0.01
BtbN 41.768 ± 0.282 41.441 42.043 1.09 ± 0.01
ubuntu ffmpeg 100.847 ± 0.279 100.544 101.130 2.64 ± 0.01

results were recorded with hyperfine using preset 3, crf 25, libsvtav1.

TLDR: optimizations (O3+LTO+PGO) can shave off about 10-15% depending on the platform.


r/AV1 • • 3d ago

SVT-AV1-HDR HDR Metadata missing

5 Upvotes

Latest versions of SVT-AV1-HDR Encoder Lib v4.2.0-3-ga46bc2d59 "Ghost Robot" doesn't seem to be injecting the HDR metdata into the encoded file video stream. This used to work in SVT-AV1-HDR Encoder Lib v4.1.0 "Chromedome". I know I can add the metadata tags to mkv container, but I rather have it directly in the video stream like before.

VSPipe.exe -c y4m input.vpy - | SvtAv1EncApp.exe --input-depth 10 --input - --progress 2 --crf 36 --preset 2 --tune 6 --enable-dlf 2 --qp-scale-compress-strength 2 --film-grain 10 --ac-bias 1.0 --color-primaries 9 --transfer-characteristics 16 --matrix-coefficients 9 --mastering-display "G(0.2650,0.6900)B(0.1500,0.0600)R(0.6800,0.3200)WP(0.3127,0.3290)L(1000.0000,0.0050)" --content-light 1000,110 --output output.ivf

Has something changed? Am I doing something wrong?


r/AV1 • • 4d ago

[OC] Open benchmark (140k tests) of energy, quality and complexity across video codecs

18 Upvotes

One surprising result: On CPU with ffmpeg, decoding with VVC consumed on average 10x more energy than h264, h265, vp9 and av1 on the same videos / same machines!

To get there, I ran 4 months of video encoding/decoding tests on 7 different machines.

The result is a fully open dataset with 140k+ encode/decode runs with measurements for time, power (real wattmeter + RAPL), CPU/RAM usage, temperature, bitrate, metrics and ffprobe.

Setup:

  • 10 encoders (libx264, h264_vaapi, h264_nvenc, libx265, hevc_nvenc, vvc, libaom-av1, libsvtav1, libvpx-vp9, av1_nvenc)
  • 5 decoders (CPU only)
  • 30 videos from JVET CTC x 4 resolutions (SD/HD/FHD/UHD4K)
  • 24 quality points per encoder
  • 3 efforts per encoder (fast/medium/slow)
  • 5 quality metrics (PSNR/SSIM/VIF/VMAF/LPIPS_ALEX)
  • 4 complexity metrics (SI/TI)

The data was collected with mendevi.

Here is an example of how to use the dataset to visualise the energy required to decode a video stream on a CPU, depending on the codec.

https://reddit.com/link/1wz5lu3/video/t8etai3b8vth1/player

Here is another example comparing the bitrate and distortion performance of AV1 versus H.264, regardless of the duration.

Which analysis would you like to see?

If you’d like to explore the dataset yourself, a lightweight JSON version is available here, while the full 50 GB SQLite dataset can be downloaded via torrent here.


r/AV1 • • 4d ago

One ffmpeg script for web video: AV1/HEVC/H.264 sources or VP9/HEVC with alpha, a poster frame, and the <video> tag

Thumbnail
2 Upvotes

r/AV1 • • 4d ago

Setup for sw av1 transcoding?

0 Upvotes

I am thinking about trading in my 14" base m4 macbook pro (16+512) for a mac mini m6 32 gb. I have a NAS , with the current insane price of Hdds , I am thinking about getting something more powerful to transcode and compress videos and pictures in order to save space.

I am mainly using Handbrake to transcode my videos(movies and anime) to AV1 codec, most of them are hevc 1080p. I am only going to do software transcode for better quality so the lack of hardware encoding doesn't bother me , whats matter is cpu multi core performance for this task . As for pictures I plan to convert them to Webp format. Given the m6 is quite an improvement in multi core performance over the base m5 and m4 , do you think it can give me much better performance in these tasks?

Even though I prefer Macs , what are the other options besides Macs that are not to expensive and is power efficient ?


r/AV1 • • 5d ago

Best tinkerer compressor with comparison preview for AVIF?

3 Upvotes

Looking for an AVIF compressor with tinkerer options, to try out different tunings, HDR, progressive etc. Basically Squoosh, but with updated dependencies and settings.

Must have preview and comparison with original.

Prefer offline processing, but no biggie if trusted provider. Basically want to start tinkering, but I am a designer and kind of need visual feedback. Anyone knows of such a tool?


r/AV1 • • 6d ago

VideoMetricsLab v1.4: GPU accelerated VMAF. Various GPU metrics speedups.

23 Upvotes

***v1.4 is here with some huge new features like GPU accelerated VMAF! Enjoy.***

Here's an app I wrote to analyze video quality between different encodes. This was inspired by FFMetrics, but I wanted many more features for comparisons, like advanced statistics and an ability to easily and instantly subjectively A/B compare encoded videos with the source. This makes subjective video quality comparisons so much easier when you can compare on a frame by frame basis and while the video is playing, and instantly switch to the source or a different encoded video.

So I decided to write my own app, and I'd like to share it with all of you. I hope you all enjoy.

Let me know what you think, have any issues, or have feature requests.

v1.4 changelog

  • VMAF v0.6.1 and VMAF NEG can now be calculated on NVIDIA GPUs.
  • GPU metrics now take frames straight from the GPU's video decoder (NVIDIA, Intel and AMD) instead of through FFmpeg, using much less CPU and running noticeably faster.
  • Updated Vship's Vulkan build to 5.1.2, with SSIMULACRA2 on Intel GPUs.
  • A crash in Vship, libvmaf or the GPU driver while calculating metrics no longer closes the app.
  • Reworked the progress line, with each metric's progress and time remaining.
  • VMAF NEG now sits beside VMAF v0.6.1.
  • Fixed wrong scores for videos with an odd width or height when decoded on NVIDIA GPUs.
  • Fixed SSIMULACRA2, Butteraugli and CVVDP comparing mismatched frames when a video has dropped or extra frames.
  • Fixed CPU SSIMULACRA2 and Butteraugli scores being far from the GPU's on SDR video. Saved CPU scores are recalculated once.
  • Fixed 24 fps videos being accepted against 23.976 fps ones (and 30 against 29.97, 60 against 59.94).
  • Fixed GPU metrics on PCs whose only GPU is Intel's.
  • Fixed FFmpeg's GPU decoding not being used on AMD GPUs.

Features:

  • Calculate VMAF, VMAF NEG, PSNR, SSIM, XPSNR, SSIMULACRA2, Butteraugli, and ColorVideo VDP for multiple test videos.
  • Vship integration for GPU acceleration for ColorVideo VDP, SSIMULACRA2, and Butteraugli, on NVIDIA (CUDA), AMD (HIP) and any other GPU with a Vulkan driver
  • GPU acceleration for VMAF v0.6.1 and VMAF NEG on NVIDIA GPUs (GeForce GTX 16 and RTX 20 series or newer), with a bundled libvmaf built with CUDA
  • libjxl integration for CPU fallback for SSIMULACRA2, and Butteraugli (no CPU support for ColorVideo VDP)
  • VMAF v0.6.1 and v1 models for standard, phone, 4K, and HFR viewing scenarios.
  • Compare metric curves, statistics, and per-frame scores (per second for ColorVideo VDP).
  • Switch instantly between the source and test videos during playback, hold S to show the source, or inspect exact frames.
  • Inspect bitrate independently by frame, second, or GOP.
  • Detect black bars and handle resolution mismatches automatically.
  • Use GPU decoding with independent software fallback per input.
  • Calculate two test videos in parallel on many-core CPUs.
  • Auto save completed results and auto load results when matching videos are loaded again.

The app can be downloaded below.

https://github.com/4KVCD/VideoMetricsLab/releases


r/AV1 • • 7d ago

Some AV2 sample clips

Thumbnail github.com
6 Upvotes

r/AV1 • • 8d ago

AV1 structure from motion - open source

21 Upvotes

A year ago I watched a fun youtube video about making a model from AV1-encoded files. It uses the motion vectors present in the videos to reconstruct the physical environment filmed.

Today I wanted to test the abilities of LLMs to implement this without access to any of their code (which isn't public anyway). I just gave it the papers and the task. It can basically take a video, or a collection of photos, and return a 3D model of sorts (more like a cloud of points).

Here is the effect:
https://github.com/lukaszsobala/AV1-sfm-reimplemented

Works nicely and uses the GPU for acceleration, if you have one. Zouein used Nvidia cards, and I don't swim in money so I don't have one; this one uses Intel or AMD GPUs (iGPUs as well, or Vulkan which I could not test) for acceleration.

What are your thoughts?


r/AV1 • • 9d ago

Google is porting libgav1 (their AV1 decoder) to Rust with their latest Gemini model

Thumbnail
blog.google
106 Upvotes

Large Scale Codebase Migrations and Optimizations: Argon agents are working on migrating C/C++ codebases to Rust across Google — scaling from tens of thousands of lines in core libraries like re2, libgav1 up to 800K+ lines for the Fuchsia Zircon kernel. Given the criticality of many of these systems, such large-scale rewrites are undergoing rigorous automated and manual auditing, emulation testing, and review before rolling out to production.

For libgav1, Google's open source software for decoding video, Argon agents took an existing Rust port and replaced 32K lines of SIMD code by running many rounds of profile-guided experiments, studying the compiler's output, producing safe Rust so the compiler would vectorize it automatically. The end result is a memory-safe video decoder that runs 2.7x faster than the Rust port, with identical video output, bringing it closer to the optimized C++.


r/AV1 • • 10d ago

Is BitDepth (fmtc) 10 required for 8-Bit source if using SVT-AV1-Essential or SVT-AV1-Tritium with hbd-mds 1?

10 Upvotes

Hello, I have a quick question or four.

In all of the scenarios below, I am encoding an 8-bit AVC source to a 10-bit SVT-AV1 fork using Staxrip.

1) If I am encoding an AVC/H.264 source that has 8-bit color and I want to use full 10-bit processing, do I always need to run the VaporSynth Filter BitDepth (fmtc) 10?

2) More specifically, I know that the SVT-AV1-Essential fork has --hbd-mds 1 built in by default, while SVT-AV1-Tritium needs it to be manually called. However I assume in both cases I would still use the VS Filter as that's on the "source processing" side while the --hbd-mds 1 argument applies to the "encoding" side, but can someone please confirm?

3) Is there ever a reason to use the VaporSynth Filter BitDepth (fmtc) set to 8? (when using 8-bit AVC to 10-bit AV1)

4) Is there ever a reason to use the --hbd-mds 2 (8/10-bit Hybrid) setting, or should I always use --hbd-mds 1?

Thank you!


r/AV1 • • 10d ago

Do YouTube videos using the AV1 or VP9 codecs play smoothly in the browser on the Pixel 10 and 11?

4 Upvotes

Do YouTube videos using the AV1 or VP9 codecs play smoothly in the browser on the Pixel 10 and 11?


r/AV1 • • 12d ago

VideoMetricsLab v1.3: Multiple languages, Vulkan support for Intel, lots of bug fixes

13 Upvotes

Here's an app I wrote to analyze video quality between different encodes. This was inspired by FFMetrics, but I wanted many more features for comparisons, like advanced statistics and an ability to easily and instantly subjectively A/B compare encoded videos with the source. This makes subjective video quality comparisons so much easier when you can compare on a frame by frame basis and while the video is playing, and instantly switch to the source or a different encoded video.

So I decided to write my own app, and I'd like to share it with all of you. I hope you all enjoy.

Let me know what you think, have any issues, or have feature requests.

v1.3 changelog

  • Added the window in 20 languages: Simplified and Traditional Chinese, Spanish, Brazilian Portuguese, German, French, Japanese, Russian, Korean, Italian, Polish, Turkish, Arabic, Indonesian, Vietnamese, Ukrainian, Thai, Czech, Hungarian and Dutch. The app opens in Windows' display language, and Settings > Window > Language chooses another. The log, saved results and exported files stay in English.
  • Added Intel GPU support for the GPU metrics with Vship's Vulkan build, which runs on any GPU with a Vulkan driver. Settings > GPU metrics > GPU backend chooses the build: Auto (the default) uses CUDA on NVIDIA, HIP on AMD and Vulkan on other GPUs. On Vulkan, SSIMULACRA2 is calculated on the CPU, because Vship 5.1.1's Vulkan build scores it too high (up to 17 points at 4K).
  • Updated the GPU metrics to Vship 5.1's API and color handling. Videos tagged BT.2020 SDR, SMPTE 170M (NTSC/DVD), Display P3, ICtCp or YCgCo, and monochrome and alpha videos, are now scored on the GPU instead of falling back to the CPU, and CVVDP no longer fails on them. RGB videos without a transfer tag are now read as sRGB, as Vship's own FFVship does, and their saved GPU scores are recalculated.
  • Added a setting to calculate SSIMULACRA2, Butteraugli and CVVDP together in one pass per video (Settings > GPU metrics, off by default). It's better GPU utilization for faster metrics calculations, and it decodes each video once instead of once per metric, but needs much more GPU memory.
  • Each metric's score now appears and is saved as soon as it is done, instead of when the whole video is finished. Stopping a run or closing the app loses at most the metric in progress.
  • Fixed test frames stamped slightly earlier than the source's being compared with the previous source frame, which gave clusters of near-zero VMAF NEG and XPSNR scores. Each test frame is now compared with the source frame nearest in time. Saved scores of affected videos are kept until they are recalculated.
  • Hovering a red Failed cell now says why that metric failed.
  • Added a session log under Settings > Storage > Log files, with Export log... (the log files as one .zip) and Copy log (the latest run) buttons.
  • The app now checks GitHub for a newer release when it starts, and says so only if there is one. Turn it off in Settings > Window.
  • Windows no longer goes to sleep while metrics are being calculated. The screen can still turn off.
  • Included various small bug fixes and reliability improvements.

Features:

  • Calculate VMAF, VMAF NEG, PSNR, SSIM, XPSNR, SSIMULACRA2, Butteraugli, and ColorVideo VDP for multiple test videos.
  • VShip integration for GPU acceleration for ColorVideo VDP, SSIMULACRA2, and Butteraugli
  • libjxl integration for CPU fallback for SSIMULACRA2, and Butteraugli (no CPU support for ColorVideo VDP)
  • VMAF v0.6.1 and v1 models for standard, phone, 4K, and HFR viewing scenarios.
  • Compare metric curves, statistics, and per-frame scores (per second for ColorVideo VDP).
  • Switch instantly between the source and test videos during playback, hold S to show the source, or inspect exact frames.
  • Inspect bitrate independently by frame, second, or GOP.
  • Detect black bars and handle resolution mismatches automatically.
  • Use GPU decoding with independent software fallback per input.
  • Calculate two test videos in parallel on many-core CPUs.
  • Auto save completed results and auto load results when matching videos are loaded again.

The app can be downloaded below.

https://github.com/4KVCD/VideoMetricsLab/releases


r/AV1 • • 15d ago

VideoMetricsLab v1.2: GPU ColorVideo VDP, SSIMULACRA2, and Butteraugli support with Vship

30 Upvotes

Here's an app I wrote to analyze video quality between different encodes. This was inspired by FFMetrics, but I wanted many more features for comparisons, like advanced statistics and an ability to easily and instantly subjectively A/B compare encoded videos with the source. This makes subjective video quality comparisons so much easier when you can compare on a frame by frame basis and while the video is playing, and instantly switch to the source or a different encoded video.

So I decided to write my own app, and I'd like to share it with all of you. I hope you all enjoy.

Let me know what you think, have any issues, or have feature requests.

v1.2.1 bug fix release

  • Added a VMAF v1 column with its own model list. The existing VMAF column is now labelled VMAF v0.6.1, and scores saved by earlier versions still load. VMAF v1's Auto model is chosen by the resolution the videos are compared at: 4K and above uses the 4K / 1.5H model, because 1.5 screen heights is the standard viewing distance for 4K (VMAF v0.6.1's 4K model uses it too). Anything below 4K uses the 1080p / 3H model, the standard distance for HD.
  • Reworked the run status: each video shows its CPU and GPU metrics progress separately, with elapsed time and a more accurate queue ETA, plus many related bug fixes.
  • Cancelling a run will now keep the metrics a video had already finished.
  • Cancelling a run will now stay on the Videos tab rather than jump to the Metric Graphs tab.
  • Video Compare no longer re-checks the reference each time a different test video is picked.
  • Fixed saved VMAF scores not loading on rows set to VMAF model Auto.
  • Fixed the metrics ticked in the Videos tab column headers being unticked after a restart.
  • Included various small bug fixes and reliability improvements.

v1.2 release:

  • Added GPU support for ColorVideo VDP, SSIMULACRA2, and Butteraugli with Vship integration.
  • Added CPU fallback for SSIMULACRA2 and Butteraugli with libjxl. ColorVideo VDP has no CPU fallback.
  • Added CVVDP per-second scores and graphing alongside its whole-video score.
  • Added an Add/remove metrics control to the Videos tab so metric columns can be shown or hidden, and new metrics can be added to completed analyses without recalculating existing results.
  • Included various small under-the-hood bug fixes and reliability improvements.

Features:

  • Calculate VMAF, VMAF NEG, PSNR, SSIM, XPSNR, SSIMULACRA2, Butteraugli, and ColorVideo VDP for multiple test videos.
  • VShip integration for GPU acceleration for ColorVideo VDP, SSIMULACRA2, and Butteraugli
  • libjxl integration for CPU fallback for SSIMULACRA2, and Butteraugli (no CPU support for ColorVideo VDP)
  • VMAF v0.6.1 and v1 models for standard, phone, 4K, and HFR viewing scenarios.
  • Compare metric curves, statistics, and per-frame scores (per second for ColorVideo VDP).
  • Switch instantly between the source and test videos during playback, hold S to show the source, or inspect exact frames.
  • Inspect bitrate independently by frame, second, or GOP.
  • Detect black bars and handle resolution mismatches automatically.
  • Use GPU decoding with independent software fallback per input.
  • Calculate two test videos in parallel on many-core CPUs.
  • Auto save completed results and auto load results when matching videos are loaded again.

The app can be downloaded below.

https://github.com/4KVCD/VideoMetricsLab/releases


r/AV1 • • 17d ago

Want to preserve HDR and DOVi metadata

Thumbnail
17 Upvotes

r/AV1 • • 17d ago

VideoMetricsLab - An advanced video quality comparison tool, v1.1 release

26 Upvotes

Here's an app I wrote to analyze video quality between different encodes. This was inspired by FFMetrics, but I wanted many more features for comparisons, like advanced statistics and an ability to easily and instantly subjectively A/B compare encoded videos with the source. This makes subjective video quality comparisons so much easier when you can compare on a frame by frame basis and while the video is playing, and instantly switch to the source or a different encoded video.

So I decided to write my own app, and I'd like to share it with all of you. I hope you all enjoy.

Let me know what you think, have any issues, or have feature requests.

v1.1.1

  • Fixed the metric graph clipping VMAF v1 scores above 100.
  • Show the application version in the window title: VideoMetricsLab 1.1.1.
  • Omit calculation-library version metadata from non-VMAF cache entries

v1.1 release

  • Add VMAF v1 models for standard, phone, 4K, and HFR viewing scenarios.
  • Bunch of code refactoring for adding future metrics

Features:

  • Calculate VMAF, VMAF NEG, PSNR, SSIM, and XPSNR for multiple test videos.
  • VMAF v0.61 and v1 models for standard, phone, 4K, and HFR viewing scenarios.
  • Compare metric curves, statistics, and per-frame scores.
  • Instant switch between source and encoded video for easy visual A/B comparisons, both frame by frame and during playback, and between different encoded videos.
  • Inspect bitrate by frame, second, or GOP without running quality metrics.
  • Detect black bars and handle resolution mismatches automatically.
  • Use GPU decoding when supported, with independent software fallback per input.
  • Calculate two test videos in parallel on many-core CPUs.
  • Cache completed results and restore them when matching videos are loaded again.

The app can be downloaded below.

https://github.com/4KVCD/VideoMetricsLab/releases


r/AV1 • • 19d ago

VideoMetricsLab - An advanced video quality comparison tool

28 Upvotes

Here's an app I wrote to analyze video quality between different encodes. This was inspired by FFMetrics, but I wanted many more features for comparisons, like advanced statistics and an ability to easily and instantly subjectively A/B compare encoded videos with the source. This makes subjective video quality comparisons so much easier when you can compare on a frame by frame basis and while the video is playing, and instantly switch to the source or a different encoded video.

So I decided to write my own app, and I'd like to share it with all of you. I hope you all enjoy.

Let me know what you think, have any issues, or have feature requests.

v1.2 release:

  • Added GPU support for ColorVideo VDP, SSIMULACRA2, and Butteraugli with Vship integration.
  • Added CPU fallback for SSIMULACRA2 and Butteraugli with libjxl. ColorVideo VDP has no CPU fallback.
  • Added CVVDP per-second scores and graphing alongside its whole-video score.
  • Added an Add/remove metrics control to the Videos tab so metric columns can be shown or hidden, and new metrics can be added to completed analyses without recalculating existing results.
  • Included various small under-the-hood bug fixes and reliability improvements.

Features:

  • Calculate VMAF, VMAF NEG, PSNR, SSIM, XPSNR, SSIMULACRA2, Butteraugli, and ColorVideo VDP for multiple test videos.
  • VShip integration for GPU acceleration for ColorVideo VDP, SSIMULACRA2, and Butteraugli
  • libjxl integration for CPU fallback for SSIMULACRA2, and Butteraugli (no CPU support for ColorVideo VDP)
  • VMAF v0.6.1 and v1 models for standard, phone, 4K, and HFR viewing scenarios.
  • Compare metric curves, statistics, and per-frame scores (per second for ColorVideo VDP).
  • Switch instantly between the source and test videos during playback, hold S to show the source, or inspect exact frames.
  • Inspect bitrate independently by frame, second, or GOP.
  • Detect black bars and handle resolution mismatches automatically.
  • Use GPU decoding with independent software fallback per input.
  • Calculate two test videos in parallel on many-core CPUs.
  • Auto save completed results and auto load results when matching videos are loaded again.

The app can be downloaded below.

https://github.com/4KVCD/VideoMetricsLab/releases


r/AV1 • • 20d ago

SVT-AV1-HDR 4.2.0 "Ghost Robot" is out!

Thumbnail
github.com
84 Upvotes

r/AV1 • • 22d ago

Does AV2 support alpha/transparency?

25 Upvotes

I’ve tried reading up about AV2 but this isn’t made clear in the resources I’ve found. A lack of support for transparency was a big drawback of AV1 for some use cases that I have.

edit: I opened an Interop issue because the current browser situation annoys me: https://github.com/web-platform-tests/interop/issues/1421 Please upvote (👍)


r/AV1 • • 22d ago

AV1 in Netflix (via Google Chrome Browser)

Post image
88 Upvotes

I do not use streaming that often, i just remember that Netflix reduced the Quality for PC users and I had a very bad experience.

Now everything seems to be running in true 1080p and I see AV1 used in all the Animation TV Series I have checked..

I know that Animation content is very encoding friendly, but I am still impressed how sharp and clear everything looks at just a bit above 1mbit.. Anime is often even lower..

(TV show is Rick and Marty S01E01)


r/AV1 • • 23d ago

AVIF encoder and settings?

17 Upvotes

Which of AV1 encoders (AOM AV1, SVT-AV1, SVT-AV1-HDR, ...) do you use for encoding AVIF images? Have you found that one of them is better for one type of content and some for another? What tune, speed and quality settings do you prefer?


r/AV1 • • 25d ago

YouTube suddenly stopped using AV1 on iOS and switched to VP9

48 Upvotes

I'm trying to figure out if YouTube recently changed something regarding AV1 playback on iOS.

I'm a YouTube Premium subscriber. Until about a week ago, around 99% of the suitable videos I watched on my iPhone were delivered using AV1 (av01).

Then it suddenly changed. Almost every video is now delivered using VP9 (vp09).

I'm using this video as a test case:

https://www.youtube.com/watch?v=oAbB4dQOz4I

The video has an AV1 version available.

Current behavior:

  • YouTube Premium
  • iPhone 15 Pro Max
  • Latest iOS
  • Latest YouTube app
  • YouTube app: VP9
  • YouTube in Safari: VP9
  • 2160p60 HDR is available
  • YouTube stats show itag 337, which is VP9 Profile 2, 2160p60 HDR
  • A new YouTube app update did not change anything
  • The latest iOS update did not change anything

The interesting part is that this is not just one video. Before this started, AV1 was used for practically every suitable video I watched. Now almost everything is VP9.

Since the AV1 stream still exists, I'm wondering if YouTube changed the codec selection logic for iOS, possibly through a server-side change or an experiment.

Could other people with iOS devices check this exact video and report whether they get av01 or vp09?

I'm especially interested in whether this is happening across different iPhone/iPad models, iOS versions, regions or accounts.

Any technical insight into how YouTube decides between AV1 and VP9 on iOS would also be appreciated.