/r/AV1
Subreddit for AV1 video codec
Subreddit for AV1 video codec
Related subreddits:
AOMedia, all things related to Open Alliance Media group, responsible for AV1 codec creation.
Webm, for posting your encoded content in webm container.
VP9, subreddit for all things related to VP9 encoder.
HEVC, subreddit for all things related to h.265 encoder.
Opus, most efficient audio codec currently available.
/r/AV1
I’d like to convert HDR photos I have edited into HDR photos in a more usable format for viewing.
I have seen HDR avif images and also HDR heif (eg from Nikon and Canon cameras). I have been trying to convert my images into a format that works for ages using imagemagick and other converters.
I don’t want to use JPG XL as that doesn’t work with my computer or phone.
I currently have HDR photos in EXR and HDR formats but those files are large and don’t work on my phone, they’re meant to be an interchange format as far as I know.
I am still pretty new to encoding so I still have a basic knowledge of this type of info but I did come across Logan's video on AV1 encoding with film grain. Is there any info around for encoding AV1 with film grain as in his video it's very helpful that he shared this
film-grain-denoise=0:film-grain=25
So when I do have films with grain in them is that the best command to put in (the grain number higher the grain in the movie) As this is the first great video I've found about grain in encoding with AV1. Thanks
Hi, I own a Rx 7600 and would like to use the hardware encoder for recording and transcoding my media in my Jellyfin server to reduce space. I know transcoding is bad, but my room is small so it would be very difficult to add external hdd to my raid array.
However, when I check the list of available codecs on OBS and ffmpeg, AMF AV1 is not available. It seems like support for AMD AV1 has not been added to the two yet on Linux.
I would like to use the hardware encoder on Linux if possible. That is why I was wondering if there were alternative softwares/packages that I could use and has implemented hardware AV1 for AMD on Linux?
I have been encoding my 4k movie collection to reduce size and store on a media server. I have most modern movies come out between 10-15gb, but some older movies come out at around 30-40gb.
I used film-grain=20 for most of these to bring them down to 10-15gb. However the worse movie I had was the original blade runner that came out at 64gb, higher than the BluRay rip. I used film-grain=40 to bring it down to 15gb.
Does this much film grain synthesis have a big impact on the video quality, or is it OK to crank up the film grain synthesis when needed?
Another year has passed and there is no change. I'm not holding out hope for the future
i've searched and read that some can do it somehow, but others say it's not supported yet?
i tried choosing 'high' profile but keep getting a 4:4:4 error when i encode.
Could early gen AV1 decoders could become obsolete later on if AV1 changes? I don't know of this being an issue with h.26x so probably not. But say some sort of new or higher quality AV1 profile becomes popular in a few years; could that render a 2020-era AV1 decoder in a phone or streaming box obsolete? Or is it reasonable to expect the same exact profiles from beginning to end for typical streaming services until the successor to AV1? Is there a requirement for AV1 decoders to support all of the existing profiles?
Also, is there a program for Android that checks compatible AV1 (and other) profiles?
Hi, I have a TON of old video files as a video producer, but rather than go through the countless videos, deleting the useless ones (which would take so long, and what if I delete one that I actually needed?) I'd rather just shrink them down with AV1.
Now, I've tried doing this using conventional tools, and it works, but it's a highly manual process. Add files, set quality settings for that batch, run the encode (which takes many days), confirm encoding worked, delete old files, etc etc.
I'm looking for a tool that would just
The video files are not critical, so if I lose them, it's not a big loss, so I'm willing to give it to an automatic system.
i've done some reading (and tried using google bard - got answers but not sure if it's right.
if i understand profile - main is 8bit and high is 10bit (plus hdr?)
intra period - kinda like reference frames or b frames in hevc? i've read somewhere it should be frame rate -1. so 24 fps content should be set to 23?
QP - the lower the number, the better the quality but slower? about 30 for clean digital video from my dslr in 1080p?
content mode - i'm not sure what to do with . i've heard different things.
can anyone please clarify?
I understand even the AV1 decoder on the AMD RX 6950XT can only do 8K30 smoothly but stutters on 8K60.
While making some upscaling script I've encountered this issue while compressing those upscaled images.
I've done some rounds of testing and saw that the limit was somewhere around 35,499,300 pixels, in that ballpark.
5320x6644 (35346080 pixels) works, 5360x6696 (35890560 pixels) doesn't.
I've thought it could be the file size, the available RAM, ffmpeg parameters like -cpu-used and -crf, or maybe even the original upscaled images were corrupt, none of which was the case.
In the end ffmpeg does complete, and it does generate a file with the correct file size, however it's completely black in my image viewer and the resolution isn't displayed.
Has anyone encountered this issue with image resolutions? Am I doing something wrong?
Hello,
I record videos in 4K format and encode them using x265 and ffmpeg. The encoding is quite fast (a few minutes for short videos). I would like to try AV1 (which seems to be faster and more efficient than x265) but the encoding takes more than 2 hours for 1 minute videos...
So I have several questions:
Is this normal? Is it coming from AV1, ffmpeg or my processor?
Will this improve over time? Or should I use another processor?
Thank you for your help!
I want to remove some of the blockiness from dark scenes. I am using Tdarr with handbrake.
Most of what I find online is that Av1 calls for a constant quality of around 25-30 for 4K. In my testing, I am seeing that RF20 with encoder-preset 5 is doing well for me visually besides the dark scenes. Would turning the RF down further (upping the bitrate) fix this issue? I am fine with larger file sizes. With the current settings, it is taking a 60Gb 4k HDR movie down to 10-15Gb and 8-13mbps which seems too small.
Below is the plugin I am using. Does anyone know if there is something I need to add/change to make this better?
const details = () => ({
id: "i03UEE9sJ",
Name: "Av1 Test",
Type: "Video",
Operation: "Transcode",
Description: "Convert to Av1",
Version: "",
Link: ""
});
// eslint-disable-next-line no-unused-vars
const plugin = (file, librarySettings, inputs, otherArguments) => {
const importFresh = require('import-fresh');
const library = importFresh('../methods/library.js');
//Must return this object at some point
const response = {
processFile : false,
preset : '',
container : '.mkv',
handbrakeMode : false,
ffmpegMode : true,
reQueueAfter : true,
infoLog : '',
}
response.infoLog += "" + library.filters.filterByCodec(file,"exclude","Av1").note
if((true &&library.filters.filterByCodec(file,"exclude","Av1").outcome === true) || file.forceProcessing === true){
response.preset = '-Z "Super HQ 2160p60 4K AV1 Surround" --encoder-preset 5 --subtitle-forced --subtitle-burned --aencoder copy --audio-copy-mask ac3,eac3,truehd,dts'
response.container = '.mkv'
response.handbrakeMode = true
response.ffmpegMode = false
response.processFile = true
response.infoLog += "File is being transcoded using custom arguments \n"
return response
}else{
response.infoLog += "File is being transcoded using custom arguments \n"
return response
}
}
module.exports.details = details;
module.exports.plugin = plugin;
Hi guys, I was looking to purchase a intel a380 for my jellyfin server to handle av1 encoding/decoding. I found a deal for a rx6600 for the same price as a A380. So I was wondering is it still better to go for the ARC?
Any help would be appreciated!
Hello! So I'm new to the video encoding world (been using Handbrake for one week, av1an for two days).
I'm trying to encode a 2 min video with aomenc on Av1an but I get an error at around 57% progress:
Here is the command I used: av1an -i ..\source.mkv -v "--cpu-used=8 --input-bit-depth=8 --color-primaries=bt709 --passes=3 --tile-columns=2 --tile-rows=1 --end-usage=vbr --target-bitrate=5000 --threads=8" --concat mkvmerge -a "-c:a libopus -b:a 128k" -o output.mkv
Source is 1440p 60fps.
I eventually figured out that av1an is counting 7346 frames even though the source file is 7347.
However I didn't find any solution either to tell av1an the correct frame count or to fix av1an from counting wrong (if that's a thing).
Also I don't understand why it's updating bit depth to 10 when the source is 8 bit.
Any help would be much appreciated.
EDIT: 10 bit switching is due to --pix-format
defaulting to yuv420p10le
I was able to encode the file by cutting the last three frames.
I'm using OBS and got an A770 at a pretty good price for my linux box, and i'm trying out encoding videogame vods with it. While the encodes are happening, the settings I think might need some work because the video seems to be choppy at 60fps. The encoder preset was at Fast and rate was 4500Kbps for a variable bitrate. What are you using for your encoding settings? Mine seem off, as I feel like the video shouldn't be as choppy in the frame rate. I'm also not sure if libaom-av1 is the best encoder to use, although it seems to get overloaded the least.
I do not speak English, the post was written with the help of a translator. Sorry for that.
I want to transcode my movie collection from Blu-ray and WEB-DL 1080p SDR 8 bit to AV1 1080p with expectation of final size ~2-3GB (i.e. ~2500-3000kbps). Quality is the priority. Speed is not important. I will be encoding in Arch Linux, probably using av1an, software decoding will be used for viewing (if it matters).
Question #1. Which of these forks is more suitable for use and why?
Question #2. What arguments should I change to maximize quality for my task?
UPDATED 22/05/2023. After discussion with people in the comments and communication on the Discord server I came to the following conclusions.
--cpu-used=3 --kf-max-dist=240 --kf-min-dist=12 --threads=2 --end-usage=q --cq-level=20 --tile-columns=0 --tile-rows=0 --lag-in-frames=64 --arnr-strength=4 --arnr-maxframes=15 --aq-mode=0 --enable-dnl-denoising=0 –-denoise-noise-level=5 --tune=ssim --tune-content=psy --enable-qm=1 --qm-min=0 --qm-max=8 --enable-fwd-kf=1 --enable-chroma-deltaq=0 --enable-cdef=0
Required and already enabled by default in lavish:
--bit-depth=10 --deltaq-mode=1 --sharpness=0 --quant-b-adapt=1 --enable-keyframe-filtering=1 --enable-restoration=1
Replace --kf-max-dist=240
--kf-min-dist=12
with --kf-max-dist=999999
--disable-kf
for use with av1an. You can also replace --denoise-noise-level
with --photon-noise
(arguments and result will be different).
IMPORTANT: The tips are relevant to my particular task. Please contact the Discord server for more detailed and/or specific information.
I am using ffmpeg svt-av1 1.4.1 & 1.5.0. Can i change mini-gop size, normally it defaults to 32 when using preset 4. what's the param to change it? I checked gitlab collab docs, but couldn't find any. Is there any advantage if we increase/decrease it?? And is it similar to min-keyint for x265?
I know in Windows, users can install a plugin to use AV1 in Microsoft Edge.
However, I cannot find any similar resource in MacOS.
I cannot believe that Macbook Pro M1 with Microsoft Edge cannot use AV1 to watch YouTube... lol
Following is the command I'm using -:
av1an -i "input" -y --resume --verbose --split-method av-scenechange -m lsmash -c mkvmerge --chunk-order random -e rav1e -v "--tiles 8 -s 5 --quantizer 100 --threads 2 --no-scene-detection" -a "-c:a libopus -b:a 192k -ac 6" --pix-format yuv420p10le -w 2 -l my_log -o "out.mkv"
Can anyone tell what's more to add or remove if possible? How to calculate tiles parameter?
I've just copied these from internet.