[-] Armand1@lemmy.world 18 points 14 hours ago

24 MHz Arm Cortex M0+ processor. The chip also carried 24KB of flash storage and 3KB of static RAM.

... a 10y old phone can barely load Google, and this is about 100x slower.

Wild that you can serve anything with that hardware. Granted, static websites are basically just sending files over the wire.

[-] Armand1@lemmy.world 1 points 22 hours ago

BHF sells its products for a considerable markup over other charities. Just today I went into their shop and saw their DVDs and Blu-rays were double the cost compared to others.

[-] Armand1@lemmy.world 4 points 1 day ago* (last edited 1 day ago)

I've just discovered another use for grain synthesis:

Adding grain using to DVD movies with badly compressed grain.

I just bought Breakfast at Tiffany's on DVD and despite it being a 60s movie that should have had clean grain, it has very little and what is there looks bad because of mediocre DVD compression. You end up with some minor but distracting compression artifacts and static grain. By adding a little grain synthesis, you end up with an appearance that strangely seems more authentic and hides compression artifacts.

Here are the results. I've added clips wit 0-36 strength grain synthesis strength, and I personally think 24 looks pretty good.

video-compare screenshot of grain 24 vs 0

[-] Armand1@lemmy.world 3 points 1 day ago

That's reasonable. I know a lot of people don't like it. In my case it's as much about loosing quality when trying to denoise as it is a case of preserving the visual style.

[-] Armand1@lemmy.world 1 points 1 day ago

For whatever reason my local library only stocks books. I tried donating some movies and they said they don't take them. Weird.

[-] Armand1@lemmy.world 3 points 2 days ago

I'm sorry, I don't understand your question. Would you like to elaborate?

[-] Armand1@lemmy.world 6 points 2 days ago

Speaking of, I spotted this on the Steam Store today.

[-] Armand1@lemmy.world 3 points 2 days ago* (last edited 2 days ago)

Frankly, this treatment is repulsive. All presumably to seek tough on crime, we take people's rights away and expose them to inhumane treatment.

Why did the Home Office spend so much money deporting a man who had committed a non-custodial offence nine years earlier, was not considered likely to offend again, has a British wife and child in the UK and was diagnosed as being seriously mentally ill, with the threat of removal seriously exacerbating his mental illness? How was he able to swallow two vape batteries and conceal a razor blade while being heavily guarded in segregation? The Home Office has declined to answer these questions.

A Home Office spokesperson said: “The public rightly expect to be protected from sex offenders and this individual has already been deported.

Office has declined to say how much it has cost to remove Omar, a conservative estimate suggests a bill to the UK taxpayer of hundreds of thousands of pounds.

Was it worth it?

75
submitted 2 days ago* (last edited 1 day ago) by Armand1@lemmy.world to c/technology@lemmy.world

I wanted to document an experiment I undertook trying out AV1 with Grain Synthesis on particularly grainy footage. I'll go over my thoughts and explore Plex compatibility with this feature.

This is going to be another one of my rare highly-detailed technical posts, so feel free to skip to the conclusion if you'd like.

What kicked this off?

I've been ripping Blu-rays and transcoding them for my Plex server for about 7 years now. In that time I have tweaked my settings a little, but I've broadly settled on h265 as my codec of choice. This is because it is effective at preserving fine details and film grain while still giving you a pretty good compression ratio.

Here's my typical configuration:

  • Use handbrake as my encoding application (what can I say, I like GUIs)
  • Use the x265 (CPU h265) encoder. Why not use NVENC? It's efficiency and detail preservation sucks for HQ movies.
  • Play with the quality (RF) slider and do previews until I am happy I see no artifacting.
  • Typically results in 8-12Mbps video.
  • Typically that means low grain movies are 16-18 RF, very grainy movies at up to 22 RF.

If you know anything about film grain, it's that it is absolutely hell on compression algorithms. It's very hard to compress grainy footage without making it look bad. Sometimes, you come across a piece of media that is especially difficult, and that's how I found myself exploring grain synthesis this time.

What piece of media happened to kick this off? Columbo Season 9 Episode 2. No spoilers, I haven't sat down to watch it yet.

Why this in particular? I was making my way through encoding my collection of Columbo Blu-rays and noticed that Season 9 in particular was incredibly grainy. Combine that with the slight sharpening filter I tend to add to my encodes (like a bit of salt, to taste) and the final size of my encodes, instead of being around 30-50% of the original size on disc it was almost 90% at around 20Mbps!

So I set out to try this grain synthesis I had heard about.

What is Grain Synthesis?

Grain Synthesis is a novel approach introduced with the AV1 video codec, but which has only really started seeing limited use in the last few years. See this blog post by Netflix for a great explainer.

The TLDR; is that Grain Synthesis is where you:

  • Analyze the characteristics of film grain in a particular piece of media
  • Denoise the video
  • Add the film grain characteristics as metadata in the video file / stream
  • When the end user plays back the video, the grain is reapplied as a filter on top of the video

Why do this? To save bandwidth and storage space.

The theory is that by denoising, you make the video easier to compress, while still being able to evoke the feel of film grain convincingly.

Does this work in practice? Read on to find out. (Yes, saying that did make me cringe).

The experiment

The experiment was simple. Target my usual 8-10mbps with AV1 grain synthesis and see how that compares to just crushing the quality down with x265.

Application and encoder choice

After a bit of research, I decided to opt for StaxRip as the application to do my encoding. It supports a lot of AV1 encoders, including:

  • rav1e - a Rust-based community-written encoder
  • AOMEnc - The reference encoder.
  • SVT-AV1 - Intel / Netflix's open source encoder (and it's variants).

Which encoder to use?

Well, when I tried AOMEnc and found it SUPER slow. I encode on a 12 core, 24 thread Ryzen CPU, and got 4fps. There are likely ways to get it to run faster, but I didn't play around too much. rav1e does not seem to support Grain Synthesis right now.

So really that left SVT-AV1. That's the one Handbrake includes, but in the past I found the vanilla SVT-AV1 found on there to give me really blotchy results in dark scenes, so I picked SVT-AV1-PSYEX.

Key settings

While it is technically possible to assemble the grain analysis, denoising and synthesis yourself, the easiest way to use it is actually to use the following two parameters:

--enable-dnl-denoising=1

This turns on denoising. Without this I think grain synthesis is simply added on top of your existing video.

--film-grain=<some integer value>

This sets the strength of the film grain added and, with enable-dnl-denoising=1, the strength of the denoising. Online, people recommend using values of 8-14 depending on the amount of grain.

How I dialled in the settings

I found that the best way to dial-in AV1 grain synthesis was to start with a very high quality setting, then gradually increase the noise reduction through the --film-grain value until I got most of the grain off. I could see this by using a video player that doesn't support / has grain synthesis turned off (more on this in Compatibility).

I would however avoid going too far with the noise reduction strength. No need to remove all the grain. Pushing it too far results in the video into a smeary mess. After all, no denoising algorithm is perfect, and the more you crank it, the more you lose real detail.

Then, once I was happy with the clarity, I'd dial down the quality until I either hit my size target or my acceptable lowest quality.

As for the h265 encode, I apply a Light sharpening filter in Handbrake, then reduce the quality until I hit my target.

Note here that the process with h265 has less levers to pull, so it takes less time to dial it in.

Results

See for yourself! Here's a MEGA link to the final encodes . I make no promise that I will keep that link up long-term, but I will personally hold onto the files so if the link dies in the future, try DMing me and hopefully I'll see it and send them to you.

There are 3 files:

  • no denoise.mkv - a file encoded with no grain synthesis and very high quality setting to act as a baseline
  • AV1 q25 denoise38.mkv - The grain synthesis file. Quality of 25 with film grain setting of 38.
  • x265 crf22.5.mkv - The h265 file. Used a crf of 22.5. Picked to match the AV1 file size.

I highly recommend using a tool like video-compare to play them side by side. Grain behaviour is not easily comparable in screenshots and should be compared in motion. The command you want is:

video-compare "AV1 q25 denoise38.mkv" "x265 crf22.5.mkv"

Analysis

I call this section "Analysis", but it's quite subjective.

Grain

To me the AV1 file has cleaner grain. It's fairly convincing in motion, if a bit more regular than is realistic. Reminds me a little of some modern shows that probably have added grain in post-production.

By comparison, the h265 version has made the grain is kind of start-stop and affected by motion in the scene. It has necessarily been compressed and looks worst for it. It's not that bad though.

Quality retention

The better quality retention goes to h265 here. When you look at the details around the eyebrows of the male character here, there is perceivably a little more detail preserved. Good looking grain can give an increased perception of sharpness, which makes up some of the ground on the AV1 side.

Compatibility

Here's a very important point we've only touched on so far: What devices actually support AV1 and grain synthesis, and if they don't support it, what happens?

Well, the answer is that when AV1 is supported, but grain synthesis is not (or it's otherwise broken), the grain synthesis tends to just gets ignored and you play the weirdly smooth, denoised video instead.

Desktop players

Well, I hit my first roadblock directly after my first test encode. I use mpvnet as my player of choice. Turns out grain synthesis is broken for me with the default configuration. After like an hour of debugging, I found that I could fix it by adding vo=gpu instead of the default vo=gpu-next in my config file. This may or may not mean that the grain filter is rendered by the CPU instead of the GPU, affecting performance.

VLC worked out of the box for me. Not sure if that was because it was using CPU grain rendering or if it was because their drivers were less broken.

Neither play has a clear option to turn on or off grain synthesis. In theory, you could configure mpv with format:film-grain=no, but that didn't seem to work for me. It's possible that option only works when GPU grain rendering is in use.

For reference, I use a 3000-series Nvidia GPU. I expect GPU rendering support may depend on what GPU you have. Perhaps it works better with more recent GPUs.

Plex

I placed the AV1 file from the experiment on my fully updated Plex server, and tried to play back the episode from a variety of different devices.

  • Desktop app - AV1 and grain synthesis both worked
  • Mobile app (Pixel 9 Pro) - AV1 and grain synthesis both worked
  • Firefox - AV1 not supported. Transcoded to h264.
  • Chrome - AV1 not supported. Transcoded to h264.
  • Chromecast (1st-gen) - AV1 not supported. Transcoded to h264.

When transcoding occurred, the grain-synthesis would be ignored. Meaning that you'd get a transcode of the post-denoise video into h264. No / little grain (depending on how strongly you denoised).

This is somewhat worse than transcoding h265 into h264 for compatibility reasons, but at a high bitrate where the grain is still present. That said, on-the-fly transcoding rarely results in a particularly good looking outcome.

Conclusion

Both encodes turned out very watchable on compatible devices. There was no clear winner over h265 but AV1 + grain synthesis looks decent when it works.

That said, if you or others watch your video on unsupported devices, like on the browser or on your smart tv / chromecast, you may want to opt for h265 instead. At least if that has to be transcoded, you will maintain your grain in the process.

Additionally, the effort you go through tuning AV1 encodes is somewhat higher than just chucking it through a h265 or h264 encoder. In my experience, without grain synthesis AV1 does less well with grainy content than h265 does. Not too surprising given that AV1 is primarily a web standard while h265 comes from a more disc media background.

[-] Armand1@lemmy.world 14 points 3 days ago

Open AI has done this too. It's literally just a marketing play. "We made something so scary and amazing. Pay attention to us".

In reality it's probably a nothing burger.

If you actually put forward a law to ban all AI development now they'd lobby against it.

[-] Armand1@lemmy.world 14 points 3 days ago

"antibiotique"

317
The largest of yawns (thelemmy.club)
submitted 1 week ago by Armand1@lemmy.world to c/cat@lemmy.world

It's warm and she's comfy on the pavement.

18
submitted 1 week ago* (last edited 1 week ago) by Armand1@lemmy.world to c/mildlyinfuriating@lemmy.world

In this day and age, why are we still using these horrible packing peanuts? These aren't even the dissolvable ones.

The plastic packing peanuts filling half a large box

The cherry on the cake? This is the side of the box.

Box with "I am made of 100% recycled content" on it

4

I assume the rest of their councillors are just smart enough to keep their mouths shut.

The post as screenshots if you dont want to go to YouTube. Appologies to any blind users as I don't have time to OCR these right now:

33

While this is a high-profile case, this is pretty emblematic of Conservative and Forced Labour policy. Labour have cut back even further on what constitutes a disability, when in reality many hundreds of thousands of people who should receive PIP do not.

If a state cannot provide comfortable lives for disabled people and, even worse, stigmatises them as scroungers, it is a failed state.

27
submitted 1 month ago* (last edited 1 month ago) by Armand1@lemmy.world to c/unitedkingdom@feddit.uk

Chart of seats up for election and how many were gained and lost by party.

As the remaining council votes start slowing down, we see that the greatest growth and numbers go to Reform council members, but the Green Party have gained significant ground.

Meanwhile, Labour have lost over half of the seats up for election this May.

23
submitted 1 month ago* (last edited 1 month ago) by Armand1@lemmy.world to c/unitedkingdom@feddit.uk

Basically, they're all horrible people, to no ones surprise. And these are the ones who have not been recently arrested for being Russian shills

https://www.bbc.co.uk/news/articles/c5yd878ejqko

Maybe this will be the thing that finally gets your weirdo uncle to reconsider voting reform.

25
32
submitted 1 month ago* (last edited 1 month ago) by Armand1@lemmy.world to c/progressivepolitics@lemmy.world

Not sure if this qualifies for this community, but given Lemmy is the primary source of news for many I thought it was important enough news to share.

This is a developing story, and it's not even clear yet that Trump was the target.

29
14
97
submitted 1 month ago* (last edited 1 month ago) by Armand1@lemmy.world to c/lemmyshitpost@lemmy.world

Alt text: Picture of E.T. laying back on a Sinclair C5

view more: next ›

Armand1

0 post score
0 comment score
joined 2 years ago